Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Konfigurasikan penyimpanan untuk digunakan AWS Transfer Family server
Topik ini menjelaskan opsi penyimpanan yang dapat Anda gunakan AWS Transfer Family. Anda dapat menggunakan Amazon S3 atau Amazon EFS sebagai penyimpanan untuk server Transfer Family Anda.
Daftar Isi
Mengonfigurasi bucket Amazon S3
AWS Transfer Family mengakses bucket Amazon S3 Anda untuk melayani permintaan transfer pengguna, jadi Anda perlu menyediakan bucket Amazon S3 sebagai bagian dari pengaturan server yang mendukung protokol transfer file. Anda dapat menggunakan bucket yang ada, atau Anda dapat membuat yang baru.
catatan
Anda tidak harus menggunakan server dan bucket Amazon S3 yang berada di Wilayah yang sama AWS , tetapi kami merekomendasikan ini sebagai praktik terbaik.
Saat Anda mengatur pengguna, Anda menetapkan masing-masing peran IAM kepada mereka. Peran ini menentukan tingkat akses yang mereka miliki ke bucket Amazon S3 Anda.
Untuk informasi tentang cara membuat bucket baru, lihat Bagaimana cara membuat bucket S3? dalam Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.
catatan
Anda dapat menggunakan Amazon S3 Object Lock untuk mencegah objek diganti untuk jangka waktu tertentu atau tanpa batas waktu. Ini bekerja dengan cara yang sama dengan Transfer Family seperti dengan layanan lainnya. Jika objek ada dan dilindungi, menulis ke file itu atau menghapusnya tidak diperbolehkan. Untuk detail selengkapnya tentang Amazon S3 Object Lock, lihat Menggunakan Amazon S3 Object Lock di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.
Titik akses Amazon S3
AWS Transfer Family mendukung Amazon S3 Access Points
Misalnya, Anda dapat menggunakan titik akses untuk mengizinkan tiga tim berbeda memiliki akses ke kumpulan data bersama yang sama di mana satu tim dapat membaca data dari S3, tim kedua dapat menulis data ke S3, dan tim ketiga dapat membaca, menulis, dan menghapus data dari S3. Untuk menerapkan kontrol akses granular seperti yang disebutkan di atas, Anda dapat membuat titik akses S3 yang berisi kebijakan yang memberikan akses asimetris ke tim yang berbeda. Anda dapat menggunakan titik akses S3 dengan server Transfer Family untuk mendapatkan kontrol akses yang halus, tanpa membuat kebijakan bucket S3 kompleks yang mencakup ratusan kasus penggunaan. Untuk mempelajari selengkapnya tentang cara menggunakan titik akses S3 dengan server Transfer Family, lihat posting blog Mening
catatan
AWS Transfer Family saat ini tidak mendukung Poin Ak Multi-Region ses Amazon S3.
Peril HeadObject aku Amazon S3
catatan
Saat membuat atau memperbarui server Transfer Family, Anda dapat mengoptimalkan kinerja untuk direktori Amazon S3 Anda, yang menghilangkan HeadObject panggilan.
Di Amazon S3, bucket dan objek adalah sumber daya utama, dan objek disimpan dalam bucket. Amazon S3 dapat meniru sistem file hierarkis, tetapi terkadang dapat berperilaku berbeda dari sistem file biasa. Misalnya, direktori bukanlah konsep kelas satu di Amazon S3 melainkan didasarkan pada kunci objek. AWS Transfer Family
menyimpulkan jalur direktori dengan memisahkan kunci objek dengan karakter garis miring maju (/), memperlakukan elemen terakhir sebagai nama file, kemudian mengelompokkan nama file yang memiliki awalan yang sama bersama-sama di bawah jalur yang sama. Zero-byte objek dibuat untuk mewakili jalur folder saat Anda membuat direktori kosong menggunakan mkdir atau dengan menggunakan konsol Amazon S3. Kunci untuk objek-objek ini berakhir dengan garis miring ke depan. Objek zero-byte ini dijelaskan dalam Mengatur objek di konsol Amazon S3 menggunakan folder di Panduan Pengguna Amazon S3.
Saat Anda menjalankan ls perintah, dan beberapa hasilnya adalah objek zero-byte Amazon S3 (objek ini memiliki kunci yang diakhiri dengan karakter garis miring maju), Transfer Family mengeluarkan HeadObject permintaan untuk masing-masing objek ini (lihat HeadObject di Referensi API Layanan Penyimpanan Sederhana Amazon untuk detailnya). Hal ini dapat mengakibatkan masalah berikut saat menggunakan Amazon S3 sebagai penyimpanan Anda dengan Transfer Family.
Berikan kemampuan untuk hanya menulis dan membuat daftar file
Dalam beberapa kasus, Anda mungkin ingin menawarkan hanya akses menulis ke objek Amazon S3 Anda. Misalnya, Anda mungkin ingin memberikan akses untuk menulis (atau mengunggah) dan mencantumkan objek dalam bucket, tetapi tidak untuk membaca (mengunduh) objek. Untuk melakukan ls dan mkdir memerintahkan dengan menggunakan klien transfer file, Anda harus memiliki Amazon S3 ListObjects dan PutObject izin. Namun, ketika Transfer Family perlu melakukan HeadObject panggilan untuk menulis atau membuat daftar file, panggilan gagal dengan kesalahan Akses ditolak, karena panggilan ini memerlukan GetObject izin.
catatan
Saat membuat atau memperbarui server Transfer Family, Anda dapat mengoptimalkan kinerja untuk direktori Amazon S3 Anda, yang menghilangkan HeadObject panggilan.
Dalam hal ini, Anda dapat memberikan akses dengan menambahkan kondisi kebijakan AWS Identity and Access Management (IAM) yang menambahkan GetObject izin hanya untuk objek yang diakhiri dengan garis miring (/). Kondisi ini mencegah GetObject panggilan pada file (sehingga tidak dapat dibaca), tetapi memungkinkan pengguna untuk membuat daftar dan melintasi folder. Kebijakan contoh berikut hanya menawarkan akses tulis dan daftar ke bucket Amazon S3 Anda. Untuk menggunakan kebijakan ini, ganti dengan nama bucket Anda.amzn-s3-demo-bucket
catatan
Untuk mengatasi perilaku unggahan WinSCP, pastikan untuk menambahkan baris seperti yang "arn:aws:s3:::amzn-s3-demo-bucket/*.filepart" tercantum dalam contoh kebijakan berikut. Baris ini memastikan penanganan objek.filepart yang tepat untuk mencegah kegagalan.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowListing", "Effect": "Allow", "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket" }, { "Sid": "AllowReadWrite", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket/*" ] }, { "Sid": "DenyIfNotFolder", "Effect": "Deny", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "NotResource": [ "arn:aws:s3:::amzn-s3-demo-bucket/*/", "arn:aws:s3:::amzn-s3-demo-bucket/*.filepart" ] } ] }
catatan
Kebijakan ini tidak mengizinkan pengguna untuk menambahkan file. Dengan kata lain, pengguna yang diberi kebijakan ini tidak dapat membuka file untuk menambahkan konten ke dalamnya, atau memodifikasinya. Selain itu, jika kasus penggunaan Anda memerlukan HeadObject panggilan sebelum mengunggah file, kebijakan ini tidak akan berfungsi untuk Anda.
Sejumlah besar objek zero-byte menyebabkan masalah latensi
Jika bucket Amazon S3 Anda berisi sejumlah besar objek zero-byte ini, Transfer Family mengeluarkan banyak HeadObject panggilan, yang dapat mengakibatkan penundaan pemrosesan. Solusi yang disarankan untuk masalah ini adalah mengaktifkan Direktori yang Dioptimalkan untuk mengurangi latensi.
Misalnya, Anda masuk ke direktori home Anda, dan Anda memiliki 10.000 subdirektori. Dengan kata lain, bucket Amazon S3 Anda memiliki 10.000 folder. Dalam skenario ini, jika Anda menjalankan perintah ls (list), operasi daftar memakan waktu antara enam dan delapan menit. Namun, jika Anda mengoptimalkan direktori Anda, operasi ini hanya membutuhkan beberapa detik. Anda mengatur opsi ini di layar Konfigurasi detail tambahan selama pembuatan server atau prosedur pembaruan. Prosedur ini dirinci di bawah Mengkonfigurasi titik akhir server SFTP, FTPS, atau FTP topik.
catatan
Klien GUI dapat mengeluarkan ls perintah di luar kendali Anda, jadi penting untuk mengaktifkan pengaturan ini jika Anda bisa.
Jika Anda tidak atau tidak dapat mengoptimalkan direktori Anda, solusi alternatif untuk masalah ini adalah menghapus semua objek zero-byte Anda. Perhatikan hal-hal berikut:
-
Direktori kosong tidak akan ada lagi. Direktori hanya ada karena nama mereka berada di kunci objek.
-
Tidak mencegah seseorang menelep
mkdiron dan merusak sesuatu lagi. Anda dapat mengurangi ini dengan menyusun kebijakan yang mencegah pembuatan direktori. -
Beberapa skenario menggunakan objek 0-byte ini. Misalnya, Anda memiliki struktur seperti/inboxes/customer1000dan direktori kotak masuk dibersihkan setiap hari.
Akhirnya, satu solusi lagi yang mungkin adalah membatasi jumlah objek yang terlihat melalui kondisi kebijakan untuk mengurangi jumlah HeadObject panggilan. Agar ini menjadi solusi yang bisa diterapkan, Anda harus menerima bahwa Anda mungkin hanya dapat melihat kumpulan terbatas dari semua sub-direktori Anda.
Konfigurasikan sistem file Amazon EFS
AWS Transfer Family mengakses Amazon Elastic File System (Amazon EFS) untuk melayani permintaan transfer pengguna Anda. Jadi, Anda harus menyediakan sistem file Amazon EFS sebagai bagian dari pengaturan server yang mendukung protokol transfer file Anda. Anda dapat menggunakan sistem file yang ada, atau Anda dapat membuat yang baru.
Perhatikan hal-hal berikut:
-
Saat Anda menggunakan server Transfer Family dan sistem file Amazon EFS, server dan sistem file harus sama Wilayah AWS.
-
Server dan sistem file tidak perlu berada di akun yang sama. Jika server dan sistem file tidak berada di akun yang sama, kebijakan sistem file harus memberikan izin eksplisit untuk peran pengguna.
Untuk informasi tentang cara mengatur beberapa akun, lihat M engelola AWS akun di organisasi Anda di Panduan AWS Organizations Pengguna.
-
Saat Anda mengatur pengguna, Anda menetapkan masing-masing peran IAM kepada mereka. Peran ini menentukan tingkat akses yang mereka miliki ke sistem file Amazon EFS Anda.
-
Untuk detail tentang pemasangan sistem file Amazon EFS, lihat Memas ang sistem file Amazon EFS.
Untuk detail selengkapnya tentang cara AWS Transfer Family dan Amazon EFS bekerja bersama, lihat Menggunakan AWS Transfer Family untuk mengakses file di sistem file Amazon EFS Anda di Panduan Pengguna Sistem File Amazon Elastic.
Kepemilikan file Amazon EFS
Amazon EFS menggunakan model izin file Portable Operating System Interface (POSIX) untuk mewakili kepemilikan file.
Di POSIX, pengguna dalam sistem dikategorikan ke dalam tiga kelas izin yang berbeda: Ketika Anda mengizinkan pengguna untuk mengakses file yang disimpan dalam sistem file Amazon EFS menggunakan AWS Transfer Family, Anda harus menetapkan “profil POSIX.” Profil ini digunakan untuk menentukan akses mereka ke file dan direktori di sistem file Amazon EFS.
-
Pengguna (u): Pemilik file atau direktori. Biasanya, pembuat file atau direktori juga pemiliknya.
-
Grup (g): Kumpulan pengguna yang membutuhkan akses identik ke file dan direktori yang mereka bagikan.
-
Lainnya (o): Semua pengguna lain yang memiliki akses ke sistem kecuali pemilik dan anggota grup. Kelas izin ini juga disebut sebagai “Publik.”
Dalam model izin POSIX, setiap objek sistem file (file, direktori, tautan simbolik, pipa bernama, dan soket) dikaitkan dengan tiga set izin yang disebutkan sebelumnya. Objek Amazon EFS memiliki Unix-style mode yang terkait dengannya. Nilai mode ini mendefinisikan izin untuk melakukan tindakan pada objek tersebut.
Selain itu, pada Unix-style sistem, pengguna dan grup dipetakan ke pengidentifikasi numerik, yang digunakan Amazon EFS untuk mewakili kepemilikan file. Untuk Amazon EFS, objek dimiliki oleh satu pemilik dan satu grup. Amazon EFS menggunakan ID numerik yang dipetakan untuk memeriksa izin saat pengguna mencoba mengakses objek sistem file.
Menyiapkan pengguna Amazon EFS untuk Transfer Family
Sebelum mengatur pengguna Amazon EFS, Anda dapat melakukan salah satu dari hal berikut:
-
Anda dapat membuat pengguna dan mengatur folder rumah mereka di Amazon EFS. Lihat Konfigurasikan pengguna Transfer Family di Amazon EFS untuk detail.
-
Jika Anda merasa nyaman menambahkan pengguna root, Anda bisaBuat pengguna root Amazon EFS.
catatan
Server Transfer Family tidak mendukung titik akses Amazon EFS untuk mengatur izin POSIX. Profil POSIX pengguna Transfer Family (dijelaskan di bagian sebelumnya) menawarkan kemampuan untuk mengatur izin POSIX. Izin ini ditetapkan pada tingkat pengguna, untuk akses granular, berdasarkan UID, GID, dan GID sekunder.
Konfigurasikan pengguna Transfer Family di Amazon EFS
Transfer Family memetakan pengguna ke direktori UID/GID dan yang Anda tentukan. Jika belum UID/GID/directories ada di EFS, maka Anda harus membuatnya sebelum menetapkannya di Transfer ke pengguna. Rincian untuk membuat pengguna Amazon EFS dijelaskan dalam Bek erja dengan pengguna, grup, dan izin di Tingkat Sistem File Jaringan (NFS) di Panduan Pengguna Sistem File Amazon Elastic.
Langkah-langkah untuk mengatur pengguna Amazon EFS di Transfer Family
-
Petakan EFS UID dan GID untuk pengguna Anda di Transfer Family menggunakan
PosixProfilebidang. -
Jika Anda ingin pengguna memulai di folder tertentu saat login, Anda dapat menentukan direktori EFS di bawah
HomeDirectorybidang.
Anda dapat mengotomatiskan proses, dengan menggunakan CloudWatch aturan dan fungsi Lambda. Untuk contoh fungsi Lambda yang berinteraksi dengan EFS, lihat Menggunakan Amazon EFS untuk AWS Lambda dalam aplikasi tanpa server Anda.
Selain itu, Anda dapat mengonfigurasi direktori logis untuk pengguna Transfer Family Anda. Untuk detailnya, lihat Konfigurasikan direktori logis untuk Amazon EFS bagian dalam Menggunakan direktori logis untuk menyederhanakan struktur direktori Transfer Family Anda topik.
Buat pengguna root Amazon EFS
Jika organisasi Anda merasa nyaman bagi Anda untuk mengaktifkan akses pengguna root melalui SFTP/FTPS konfigurasi pengguna Anda, Anda dapat membuat pengguna yang UID dan GID adalah 0 (pengguna root), lalu gunakan pengguna root tersebut untuk membuat folder dan menetapkan pemilik ID POSIX untuk pengguna lainnya. Keuntungan dari opsi ini adalah tidak perlu memasang sistem file Amazon EFS.
Lakukan langkah-langkah yang dijelaskan diMenambahkan pengguna yang dikelola layanan Amazon EFS, dan untuk ID Pengguna dan ID Grup, masukkan 0 (nol).
Tip
Jangan biarkan akun superuser ini ada lebih lama dari yang diperlukan. Atau, jika Anda menyimpan akun pengguna root, pastikan Anda melindunginya dengan baik.
Perintah Amazon EFS yang didukung
Perintah berikut didukung untuk Amazon EFS for AWS Transfer Family.
-
cd -
ls/dir -
pwd -
put -
get -
rename -
chown: Hanya root (yaitu, pengguna dengan uid=0) yang dapat mengubah kepemilikan dan izin file dan direktori. -
chmod: Hanya root yang dapat mengubah kepemilikan dan izin file dan direktori. -
chgrp: Didukung baik untuk root atau untuk pemilik file yang hanya dapat mengubah grup file menjadi salah satu grup sekunder mereka. -
ln -s/symlink -
mkdir -
rm/delete -
rmdir -
chmtime