Jawaban:
Anda mungkin memiliki sesuatu yang salah dalam profil default Anda untuk wilayah default.
Periksa file Anda di ~/.aws/config
, Anda memiliki sesuatu seperti
[default]
region=us-east-1a
...
Perbaiki wilayah region=us-east-1
dan kemudian perintah akan berfungsi dengan benar
aws s3 ls --region us-east-1
.
Beberapa layanan AWS hanya tersedia di wilayah tertentu yang tidak sesuai dengan wilayah Anda yang sebenarnya. Jika ini masalahnya, Anda dapat mengganti pengaturan standar dengan menambahkan wilayah ke perintah cli Anda yang sebenarnya.
Ini mungkin solusi yang berguna untuk orang-orang yang tidak ingin mengubah kawasan default mereka di file konfigurasi. JIKA file konfigurasi umum Anda tidak disetel: Harap periksa saran di atas.
Dalam contoh ini, wilayah dipaksa ke eu-west-1 (misalnya Irlandia):
aws s3 ls --region=eu-west-1
Diuji dan digunakan dengan aws workmail untuk menghapus pengguna:
aws workmail delete-user --region=eu-west-1 --organization-id [org-id] --user-id [user-id]
Saya mendapatkan ide dari utas ini dan ini bekerja sempurna untuk saya - jadi saya ingin membagikannya. Semoga membantu!
Jika tidak ada solusi yang diberikan di atas yang berfungsi, periksa juga izin dan pengaturan firewall Anda. Dalam kasus saya menambahkan variabel lingkungan proxy melakukan pekerjaan itu.
Untuk Linux atau mac
$ export HTTP_PROXY=http://<YOUR PROXY IP>:<PORT>
$ export HTTPS_PROXY=http://<YOUR PROXY IP>:<PORT>
Untuk Windows
set HTTP_PROXY=http://<YOUR PROXY IP>:<PORT>
Anda harus menentukan wilayah dalam skrip CLI Anda, daripada bergantung pada wilayah default yang ditentukan menggunakan konfigurasi aws (seperti yang ditegaskan jawaban paling populer saat ini). Jawaban lain menyinggung itu, tetapi sintaksnya salah jika Anda menggunakan CLI melalui AWS Tools for Powershell.
Contoh ini memaksa wilayah ke us-west-2 (California Utara), sintaks PowerShell:
aws s3 ls --region us-west-2
Mungkin, ada yang salah dengan region default saat mengonfigurasi aws. Dalam kasus Anda, URL mengatakan " https://s3.us-east-1a.amazonaws.com/ "
Di prompt perintah Anda,
aws konfigurasi, masukkan kunci Anda, Sekarang perbaiki wilayah Anda dari us-east-1a ke us-east-1 .
Mohon periksa sintaksnya sesuai dengan CLI yang Anda gunakan. Ini akan sangat membantu.
Dengan asumsi bahwa profil Anda di ~/aws/config
menggunakan wilayah (bukan AZ sesuai pertanyaan awal Anda); penyebab lainnya adalah ketidakmampuan klien Anda untuk terhubung s3.us-east-1.amazonaws.com
. Dalam kasus saya, saya tidak dapat menyelesaikan nama DNS itu karena kesalahan dalam konfigurasi jaringan saya. Memperbaiki masalah DNS memecahkan masalah saya.
Beberapa hal yang telah saya lakukan untuk memperbaikinya:
aws connection aborted error 10013
")Mencoba nslookup aws s3 endpoing: nslookup s3.us-east-2.amazonaws.com
Permintaan DNS kehabisan waktu. batas waktu adalah 2 detik. Server: Alamat Tidak Diketahui: 192.168.10.1
-> hmmm sangat aneh
Pergi ke pemecahan masalah jaringan windows dan dipilih untuk menguji akses ke halaman tertentu. Ini menginformasikan bahwa firewall Windows memblokir koneksi. Perbaiki ini
Menerima kesalahan baru, setelah memperbaiki permintaan melalui firewal:
Terjadi kesalahan (RequestTimeTooSkewed) saat memanggil operasi ListBuckets: Perbedaan antara waktu permintaan dan waktu saat ini terlalu besar.
Memperbarui tanggal & waktu saya menjadi otomatis -> Diperbaiki
Setiap orang memiliki default yang berbeda, dan yang menarik itu akan berubah seiring waktu. Sebagai contoh, pertama saya berada di global, dan kemudian setelah 15 menit itu menunjukkan Ohio (yaitu us-east-2
).
Pendekatan terbaik adalah memeriksanya selama Anda bekerja - di konsol area kerja AWS Anda, cukup atur di sisi kanan atas di dekat nama Anda di bilah atas, periksa nama wilayah Anda dan klik panah bawah untuk melihat wilayah Anda.
Di tipe AWS CLI aws configure
atau aws2 configure
, berikan akses dan id rahasia Anda, lalu selama wilayah default, tulis wilayah Anda dan tekan Enter.
Anda pasti akan mendapatkan akses ke kumpulan wilayah tertentu dan itu akan berfungsi.
Solusi untuk masalah saya adalah menjalankan:
sudo aws configure
Masukkan kredensial Anda dan kemudian jalankan:
sudo aws s3 ls
Solusi berbeda adalah memastikan bahwa wilayah di file .aws / config sama dengan titik akhir
us-east-2
, saya harus menggunakanus-east-1
?