Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Manajemen kunci
Di bagian ini, Anda dapat menemukan informasi tentang SSH kunci, termasuk cara membuatnya dan cara memutarnya. Untuk detail tentang penggunaan Transfer Family with AWS Lambda to manage keys, lihat posting blog Mengaktifkan manajemen kunci layanan mandiri pengguna dengan A AWS Transfer Family
catatan
AWS Transfer Family menerimaRSA,ECDSA, dan ED25519 kunci.
Bagian ini juga mencakup cara membuat dan mengelola kunci Pretty Good Privacy (PGP).
Topik
Algoritma yang didukung untuk kunci pengguna dan server
Algoritma kunci berikut didukung untuk pasangan kunci pengguna dan server di dalamnya. AWS Transfer Family
catatan
Untuk algoritme yang dapat digunakan dengan PGP dekripsi dalam alur kerja, lihat Algoritma yang didukung untuk pasangan kunci. PGP
-
UntukED25519:
ssh-ed25519
-
UntukRSA:
-
rsa-sha2-256
-
rsa-sha2-512
-
-
UntukECDSA:
-
ecdsa-sha2-nistp256
-
ecdsa-sha2-nistp384
-
ecdsa-sha2-nistp521
-
catatan
Kami mendukung ssh-rsa
kebijakan SHA1 keamanan kami yang lebih lama. Untuk detailnya, lihat Algoritma kriptografi.
Buat SSH kunci untuk pengguna yang dikelola layanan
Anda dapat mengatur server Anda untuk mengautentikasi pengguna menggunakan metode otentikasi terkelola layanan, tempat nama pengguna dan SSH kunci disimpan dalam layanan. SSHKunci publik pengguna diunggah ke server sebagai properti pengguna. Kunci ini digunakan oleh server sebagai bagian dari proses otentikasi berbasis kunci standar. Setiap pengguna dapat memiliki beberapa SSH kunci publik pada file dengan server individual. Untuk batasan jumlah kunci yang dapat disimpan per pengguna, lihat AWS Transfer Family titik akhir dan kuota di. Referensi Umum Amazon Web
Sebagai alternatif metode otentikasi terkelola layanan, Anda dapat mengautentikasi pengguna menggunakan penyedia identitas kustom, atau. AWS Directory Service for Microsoft Active Directory Untuk informasi selengkapnya, lihat Bekerja dengan penyedia identitas khusus atau Menggunakan penyedia identitas AWS Directory Service.
Server hanya dapat mengautentikasi pengguna menggunakan satu metode (layanan dikelola, layanan direktori, atau penyedia identitas kustom), dan metode itu tidak dapat diubah setelah server dibuat.
Topik
Membuat SSH kunci di macOS, Linux, atau Unix
Pada sistem operasi macOS, Linux, atau Unix, Anda menggunakan ssh-keygen
perintah untuk membuat kunci SSH publik dan kunci SSH pribadi yang juga dikenal sebagai key pair.
Untuk membuat SSH kunci pada sistem operasi macOS, Linux, atau Unix
-
Pada sistem operasi macOS, Linux, atau Unix, buka terminal perintah.
-
AWS Transfer Family menerima RSA -, ECDSA -, dan ED25519 -kunci yang diformat. Pilih perintah yang sesuai berdasarkan jenis pasangan kunci yang Anda hasilkan.
catatan
Dalam contoh berikut, kami tidak menentukan frasa sandi: dalam hal ini, alat meminta Anda untuk memasukkan frasa sandi Anda dan kemudian mengulanginya untuk memverifikasi. Membuat frasa sandi menawarkan perlindungan yang lebih baik untuk kunci pribadi Anda, dan mungkin juga meningkatkan keamanan sistem secara keseluruhan. Anda tidak dapat memulihkan frasa sandi Anda: jika Anda lupa, Anda harus membuat kunci baru.
Namun, jika Anda membuat kunci host server, Anda harus menentukan frasa sandi kosong, dengan menentukan
-N ""
opsi dalam perintah (atau dengan menekanEnter
dua kali saat diminta), karena server Transfer Family tidak dapat meminta kata sandi saat start-up.-
Untuk menghasilkan key RSA pair 4096-bit:
ssh-keygen -t rsa -b 4096 -f
key_name
-
Untuk menghasilkan pasangan kunci ECDSA 521-bit (ECDSAmemiliki ukuran bit 256, 384, dan 521):
ssh-keygen -t ecdsa -b 521 -f
key_name
-
Untuk menghasilkan ED25519 key pair:
ssh-keygen -t ed25519 -f
key_name
catatan
adalah nama file SSH key pair.key_name
Berikut ini menunjukkan contoh
ssh-keygen
output.ssh-keygen -t rsa -b 4096 -f key_name Generating public/private rsa key pair. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in key_name. Your public key has been saved in key_name.pub. The key fingerprint is: SHA256:8tDDwPmanTFcEzjTwPGETVWOGW1nVz+gtCCE8hL7PrQ bob.amazon.com The key's randomart image is: +---[RSA 4096]----+ | . ....E | | . = ... | |. . . = ..o | | . o + oo = | | + = .S.= * | | . o o ..B + o | | .o.+.* . | | =o*+*. | | ..*o*+. | +----[SHA256]-----+
catatan
Ketika Anda menjalankan
ssh-keygen
perintah seperti yang ditunjukkan sebelumnya, itu menciptakan kunci publik dan pribadi sebagai file dalam direktori saat ini.SSHKey pair Anda sekarang siap digunakan. Ikuti langkah 3 dan 4 untuk menyimpan kunci SSH publik bagi pengguna yang dikelola layanan Anda. Pengguna ini menggunakan kunci ketika mereka mentransfer file pada endpoint server Transfer Family.
-
-
Arahkan ke
file dan buka.key_name
.pub -
Salin teks dan tempel di kunci SSH publik untuk pengguna yang dikelola layanan.
-
Buka AWS Transfer Family konsol di https://console.aws.amazon.com/transfer/
, lalu pilih Server dari panel navigasi. -
Pada halaman Server, pilih ID Server untuk server yang berisi pengguna yang ingin Anda perbarui.
-
Pilih pengguna yang Anda tambahkan kunci publiknya.
-
Di panel kunci SSH publik, pilih Tambahkan kunci SSH publik.
-
Rekatkan teks kunci publik yang Anda buat ke dalam kotak teks kunci SSH publik, lalu pilih Tambah kunci.
Kunci baru tercantum di panel kunci SSH publik.
-
Membuat SSH kunci di Microsoft Windows
Windows menggunakan format SSH key pair yang sedikit berbeda. Kunci publik harus dalam PUB
format, dan kunci pribadi harus dalam PPK
format. Di Windows, Anda dapat menggunakan P uTTYgen untuk membuat SSH key pair dalam format yang sesuai. Anda juga dapat menggunakan P uTTYgen untuk mengonversi kunci pribadi yang dihasilkan menggunakan ssh-keygen
ke .ppk
file.
catatan
Jika Anda menyajikan Win SCP dengan file kunci pribadi yang tidak dalam .ppk
format, klien itu menawarkan untuk mengubah kunci menjadi .ppk
format untuk Anda.
Untuk tutorial tentang membuat SSH kunci dengan menggunakan P uTTYgen di Windows, lihat situs SSH web.com
Mengkonversi kunci SSH2 publik ke PEM format
AWS Transfer Family hanya menerima kunci publik yang PEM diformat. Jika Anda memiliki kunci SSH2 publik, Anda perlu mengonversinya. Kunci SSH2 publik memiliki format berikut:
---- BEGIN SSH2 PUBLIC KEY ---- Comment: "rsa-key-20160402" AAAAB3NzaC1yc2EAAAABJQAAAgEAiL0jjDdFqK/kYThqKt7THrjABTPWvXmB3URI : : ---- END SSH2 PUBLIC KEY ----
Kunci PEM publik memiliki format berikut:
ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAA...
Jalankan perintah berikut untuk mengonversi kunci publik SSH2 yang diformat menjadi kunci publik yang PEM diformat. Ganti ssh2-key
dengan nama SSH2 kunci Anda, dan PEM-key
dengan nama PEM kunci Anda.
ssh-keygen -i -f
ssh2-key
.pub >PEM-key
.pub
Putar SSH tombol
Untuk keamanan, kami merekomendasikan praktik terbaik memutar SSH kunci Anda. Biasanya, rotasi ini ditentukan sebagai bagian dari kebijakan keamanan dan diimplementasikan dalam beberapa cara otomatis. Tergantung pada tingkat keamanan, untuk komunikasi yang sangat sensitif, SSH key pair mungkin hanya digunakan sekali. Melakukan hal ini menghilangkan risiko apa pun karena kunci yang disimpan. Namun, jauh lebih umum untuk menyimpan SSH kredensyal untuk jangka waktu tertentu dan menetapkan interval yang tidak menempatkan beban yang tidak semestinya pada pengguna. Interval waktu tiga bulan adalah hal biasa.
Ada dua metode yang digunakan untuk melakukan rotasi SSH kunci:
-
Di konsol, Anda dapat mengunggah kunci SSH publik baru dan menghapus kunci SSH publik yang ada.
-
MenggunakanAPI, Anda dapat memperbarui pengguna yang ada dengan menggunakan DeleteSshPublicKeyAPIuntuk menghapus kunci publik Secure Shell (SSH) pengguna dan ImportSshPublicKeyAPIuntuk menambahkan kunci publik Secure Shell (SSH) baru ke akun pengguna.
Hasilkan dan kelola PGP kunci
Anda dapat menggunakan dekripsi Pretty Good Privacy (PGP) dengan file yang diproses Transfer Family dengan alur kerja. Untuk menggunakan dekripsi dalam langkah alur kerja, Anda harus memberikan kunci. PGP
Blog AWS penyimpanan memiliki posting yang menjelaskan cara mengenkripsi dan mendekripsi file, mengenkripsi dan mendekripsi file dengan dan
Hasilkan PGP kunci
Metode yang Anda gunakan untuk menghasilkan PGP kunci tergantung pada sistem operasi Anda dan versi perangkat lunak generasi kunci yang Anda gunakan.
Jika Anda menggunakan Linux atau Unix, gunakan penginstal paket Anda untuk menginstal. gpg
Tergantung pada distribusi Linux Anda, salah satu perintah berikut akan bekerja untuk Anda.
sudo yum install gnupg
sudo apt-get install gnupg
Setelah Anda menginstal perangkat lunak generator PGP kunci Anda, Anda menjalankan gpg --gen-key
perintah gpg
--full-gen-key
or untuk menghasilkan key pair.
catatan
Jika Anda menggunakan GnuPG
versi 2.3.0 atau yang lebih baru, Anda harus menjalankannya. gpg --full-gen-key
Ketika diminta untuk jenis kunci yang akan dibuat, pilih RSA atauECC. Namun, jika Anda memilihECC, pastikan untuk memilih salah satu NIST atau BrainPool untuk kurva elips. Jangan memilih Curve 25519.
Algoritma yang didukung untuk pasangan kunci PGP
Algoritma berikut didukung untuk pasangan PGP kunci:
-
RSA
-
Elgamal
-
ECC:
-
NIST
-
BrainPool
-
catatan
Tombol Curve25519 tidak didukung.
gpg
Subperintah yang berguna
Berikut ini adalah beberapa subperintah yang berguna untukgpg
:
-
gpg --help
— Perintah ini mencantumkan opsi yang tersedia dan mungkin menyertakan beberapa contoh. -
gpg --list-keys
— Perintah ini mencantumkan detail untuk semua pasangan kunci yang telah Anda buat. -
gpg --fingerprint
— Perintah ini mencantumkan detail untuk semua pasangan kunci Anda, termasuk sidik jari masing-masing tombol. -
gpg --export -a
— Perintah ini mengekspor bagian kunci publik dari kunci untukuser-name
yang digunakan saat kunci dihasilkan.user-name
Kelola PGP kunci
Untuk mengelola PGP kunci Anda, Anda harus menggunakan AWS Secrets Manager.
catatan
Nama rahasia Anda termasuk ID server Transfer Family Anda. Ini berarti Anda seharusnya sudah mengidentifikasi atau membuat server sebelum Anda dapat menyimpan informasi PGP kunci Anda AWS Secrets Manager.
Jika Anda ingin menggunakan satu kunci dan frasa sandi untuk semua pengguna Anda, Anda dapat menyimpan informasi blok PGP kunci di bawah nama rahasiaaws/transfer/
, di mana server-id
/@pgp-default
ID untuk server Transfer Family Anda. Kunci default ini digunakan jika tidak ada kunci di mana server-id
cocok dengan pengguna yang menjalankan alur kerja. user-name
Atau, Anda dapat membuat kunci untuk pengguna tertentu. Dalam hal ini, format untuk nama rahasia adalahaws/transfer/
, di mana server-id
/user-name
cocok dengan pengguna yang menjalankan alur kerja untuk server Transfer Family.user-name
catatan
Anda dapat menyimpan maksimal 3 kunci PGP pribadi, per server Transfer Family, per pengguna.
Untuk mengkonfigurasi PGP kunci untuk digunakan dengan dekripsi
-
Bergantung pada versi GPG yang Anda gunakan, jalankan salah satu perintah berikut untuk menghasilkan PGP key pair yang tidak menggunakan algoritma enkripsi Curve 25519.
-
Jika Anda menggunakan
GnuPG
versi 2.3.0 atau yang lebih baru, jalankan perintah berikut:gpg --full-gen-key
Anda dapat memilih
RSA
, atau, jika Anda memilihECC
, Anda dapat memilih salah satuNIST
atauBrainPool
untuk kurva elips. Jika Andagpg --gen-key
menjalankannya, Anda membuat key pair yang menggunakan algoritma enkripsi ECC Curve 25519, yang saat ini tidak kami dukung untuk PGP kunci. -
Untuk versi
GnuPG
sebelum 2.3.0, Anda dapat menggunakan perintah berikut, karena RSA adalah jenis enkripsi default.gpg --gen-key
penting
Selama proses pembuatan kunci, Anda harus memberikan frasa sandi dan alamat email. Pastikan untuk mencatat nilai-nilai ini. Anda harus memberikan frasa sandi ketika Anda memasukkan detail kunci ke dalam prosedur ini AWS Secrets Manager nanti. Dan Anda harus memberikan alamat email yang sama untuk mengekspor kunci pribadi di langkah berikutnya.
-
-
Jalankan perintah berikut untuk mengekspor kunci pribadi. Untuk menggunakan perintah ini, ganti
dengan nama file untuk menyimpan blok kunci pribadi, danprivate.pgp
dengan alamat email yang Anda gunakan saat Anda membuat key pair.marymajor@example.com
gpg --output
private.pgp
--armor --export-secret-keymarymajor@example.com
-
Gunakan AWS Secrets Manager untuk menyimpan PGP kunci Anda.
-
Masuk ke AWS Management Console dan buka AWS Secrets Manager konsol di https://console.aws.amazon.com/secretsmanager/
. -
Pada panel navigasi kiri, pilih Rahasia.
-
Pada halaman Rahasia, pilih Simpan rahasia baru.
-
Pada halaman Choose secret type, untuk Secret type, pilih Other type of secret.
-
Di bagian pasangan kunci/Nilai, pilih tab kunci/Nilai.
-
Kunci — Masukkan
PGPPrivateKey
.catatan
Anda harus memasukkan
PGPPrivateKey
string dengan tepat: jangan menambahkan spasi sebelum atau di antara karakter. -
nilai — Tempelkan teks kunci pribadi Anda ke bidang nilai. Anda dapat menemukan teks kunci pribadi Anda dalam file (misalnya,
private.pgp
) yang Anda tentukan saat Anda mengekspor kunci Anda sebelumnya dalam prosedur ini. Kuncinya dimulai dengan-----BEGIN PGP PRIVATE KEY BLOCK-----
dan diakhiri dengan-----END PGP PRIVATE KEY BLOCK-----
.catatan
Pastikan bahwa blok teks hanya berisi kunci pribadi dan tidak mengandung kunci publik juga.
-
-
Pilih Tambahkan baris dan di bagian pasangan kunci/Nilai, pilih tab kunci/Nilai.
-
Kunci — Masukkan
PGPPassphrase
.catatan
Anda harus memasukkan
PGPPassphrase
string dengan tepat: jangan menambahkan spasi sebelum atau di antara karakter. -
value — Masukkan kata sandi yang Anda gunakan saat membuat key pairPGP.
catatan
Anda dapat menambahkan hingga 3 set kunci dan frasa sandi. Untuk menambahkan set kedua, tambahkan dua baris baru, dan masukkan
PGPPrivateKey2
danPGPPassphrase2
untuk kunci, dan tempel di kunci pribadi dan frasa sandi lainnya. Untuk menambahkan set ketiga, nilai kunci harusPGPPrivateKey3
danPGPPassphrase3
. -
-
Pilih Berikutnya.
-
Pada halaman Konfigurasi rahasia, masukkan nama dan deskripsi untuk rahasia Anda.
-
Jika Anda membuat kunci default, yaitu kunci yang dapat digunakan oleh pengguna Transfer Family, masukkan
aws/transfer/
. Gantiserver-id
/@pgp-default
dengan ID server yang berisi alur kerja yang memiliki langkah dekripsi.server-id
-
Jika Anda membuat kunci untuk digunakan oleh pengguna Transfer Family tertentu, masukkan
aws/transfer/
. Gantiserver-id
/user-name
dengan ID server yang berisi alur kerja yang memiliki langkah dekripsi, dan gantiserver-id
dengan nama pengguna yang menjalankan alur kerja.user-name
Ini disimpan di penyedia identitas yang digunakan server Transfer Family.user-name
-
-
Pilih Berikutnya dan terima default pada halaman Konfigurasi rotasi. Lalu pilih Berikutnya.
-
Pada halaman Review, pilih Store untuk membuat dan menyimpan rahasia.
-
Tangkapan layar berikut menunjukkan detail untuk pengguna marymajor
untuk server Transfer Family tertentu. Contoh ini menunjukkan tiga kunci dan frasa sandi yang sesuai.
PGPKlien yang didukung
Klien berikut telah diuji dengan Transfer Family dan dapat digunakan untuk menghasilkan PGP kunci, dan untuk mengenkripsi file yang ingin Anda dekripsi dengan alur kerja.
-
GPG4win + Kleopatra.
catatan
Saat Anda memilih Sign/Encrypt Files, pastikan untuk menghapus pilihan untuk Sign as: saat ini kami tidak mendukung penandatanganan untuk file terenkripsi.
-
Versi GnuPG utama: 2.4, 2.3, 2.2, 2.0, dan 1.4.
Perhatikan bahwa PGP klien lain mungkin bekerja juga, tetapi hanya klien yang disebutkan di sini yang telah diuji dengan Transfer Family.