Fix Error AuthFailure in AWS CLI

Issue

Setelah menginstall dan mengonfigurasi AWS CLI, saat mencoba menjalankan perintah muncul error seperti berikut.

$ aws ec2 describe-instances
An error occurred (AuthFailure) when calling the DescribeInstances operation: AWS was not able to validate the provided access credentials

Solution

Langkah pertama yang harus dilakukan adalah memastikan aws_access_key_id dan aws_secret_access_key sudah benar. Anda dpat mengetesnya dengan cara membuat ulang Access Key melalui Console AWS.

Jika sudah dipastikan benar namun tetap muncul error yang sama, langkah selanjutnya adalah memeriksa apakah tanggal dan waktu pada sistem sudah disinkronisasi oleh NTP service.

$ timedatectl
               Local time: Tue 2024-07-30 07:07:44 WIB
           Universal time: Tue 2024-07-30 00:07:44 UTC
                 RTC time: Tue 2024-07-30 00:13:58
                Time zone: Asia/Jakarta (WIB, +0700)
System clock synchronized: no
              NTP service: n/a
          RTC in local TZ: no

Contoh diatas menunjukan jika instance belum terdapat NTP service, maka Anda bisa menginstall package chrony untuk membantu sinkronasi tanggal dan waktu pada sistem.

apt -y install chrony

Enable dan start service chrony.

systemctl enable --now chrony

Jalankan kembali perintah timedatectl untuk memastikan tanggal dan waktu telah tersinkron.

$ timedatectl
               Local time: Tue 2024-07-30 07:45:13 WIB
           Universal time: Tue 2024-07-30 00:45:13 UTC
                 RTC time: Tue 2024-07-30 00:45:13
                Time zone: Asia/Jakarta (WIB, +0700)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

Terakhir Anda dapat mengetes perintah AWS CLI kembali.