

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Mengkonfigurasi titik akhir server SFTP, FTPS, atau FTP
<a name="sftp-for-transfer-family"></a>

Topik ini memberikan detail untuk membuat dan menggunakan titik akhir AWS Transfer Family server yang menggunakan satu atau lebih protokol SFTP, FTPS, dan FTP.

**Topics**
+ [Opsi penyedia identitas](#identity-provider-details)
+ [AWS Transfer Family matriks tipe titik akhir](#endpoint-matrix)
+ [Mengkonfigurasi titik akhir server SFTP, FTPS, atau FTP](tf-server-endpoint.md)
+ [Pertimbangan Load Balancer Jaringan FTP dan FTPS](#ftp-ftps-nlb-considerations)
+ [Mentransfer file melalui titik akhir server menggunakan klien](transfer-file.md)
+ [Mengelola pengguna untuk titik akhir server](create-user.md)
+ [Menggunakan direktori logis untuk menyederhanakan struktur direktori Transfer Family](logical-dir-mappings.md)
+ [Akses sistem file NetApp ONTAP Anda FSx dengan Transfer Family](fsx-s3-access-points.md)

## Opsi penyedia identitas
<a name="identity-provider-details"></a>

AWS Transfer Family menyediakan beberapa metode untuk mengautentikasi dan mengelola pengguna. Tabel berikut membandingkan penyedia identitas yang tersedia yang dapat Anda gunakan dengan Transfer Family.


| Tindakan | AWS Transfer Family layanan dikelola | AWS Managed Microsoft AD | Amazon API Gateway | AWS Lambda | 
| --- | --- | --- | --- | --- | 
| Protokol yang didukung | SFTP | SFTP, FTPS, FTP | SFTP, FTPS, FTP | SFTP, FTPS, FTP | 
|  Otentikasi berbasis kunci  |  Ya  |  Tidak  |  Ya  |  Ya  | 
|  Autentikasi kata sandi  |  Tidak  |  Ya  |  Ya  |  Ya  | 
|  AWS Identity and Access Management (IAM) dan POSIX  |  Ya  |  Ya  |  Ya  |  Ya  | 
|  Direktori home logis  |  Ya  |  Ya  |  Ya  |  Ya  | 
| Akses parameter (berbasis nama pengguna) | Ya | Ya | Ya | Ya | 
|  Struktur akses ad hoc  |  Ya  |  Tidak  |  Ya  |  Ya  | 
|  AWS WAF  |  Tidak  |  Tidak  |  Ya  |  Tidak  | 

Catatan:
+ IAM digunakan untuk mengontrol akses untuk penyimpanan dukungan Amazon S3, dan POSIX digunakan untuk Amazon EFS.
+ *Ad hoc* mengacu pada kemampuan untuk mengirim profil pengguna saat runtime. Misalnya, Anda dapat mendaratkan pengguna di direktori home mereka dengan meneruskan nama pengguna sebagai variabel.
+ Untuk detailnya AWS WAF, lihat[Tambahkan firewall aplikasi web](web-application-firewall.md).
+ Ada posting blog yang menjelaskan penggunaan fungsi Lambda yang terintegrasi dengan Microsoft Entra ID (sebelumnya Azure AD) sebagai penyedia identitas Transfer Family Anda. Untuk detailnya, lihat [Mengautentikasi AWS Transfer Family dengan Azure Active Directory](https://aws.amazon.com/blogs/storage/authenticating-to-aws-transfer-family-with-azure-active-directory-and-aws-lambda/) dan. AWS Lambda
+ Kami menyediakan beberapa CloudFormation template untuk membantu Anda dengan cepat menyebarkan server Transfer Family yang menggunakan penyedia identitas khusus. Lihat perinciannya di [Template fungsi Lambda](custom-lambda-idp.md#lambda-idp-templates).

Dalam prosedur berikut, Anda dapat membuat server berkemampuan SFTP, server berkemampuan FTPS, server berkemampuan FTP, atau server yang diaktifkan. AS2

**Langkah selanjutnya**
+ [Buat server berkemampuan SFTP](create-server-sftp.md)
+ [Buat server berkemampuan FTPS](create-server-ftps.md)
+ [Buat server berkemampuan FTP](create-server-ftp.md)
+ [Mengkonfigurasi AS2](create-b2b-server.md)

## AWS Transfer Family matriks tipe titik akhir
<a name="endpoint-matrix"></a>

Saat membuat server Transfer Family, Anda memilih jenis endpoint yang akan digunakan. Tabel berikut menjelaskan karakteristik untuk setiap jenis titik akhir.


**Matriks tipe titik akhir**  

| Karakteristik | Publik | VPC - Internet | VPC - Internal | VPC\$1Endpoint (tidak digunakan lagi) | 
| --- | --- | --- | --- | --- | 
| Protokol yang didukung | SFTP | SFTP, FTPS, AS2 | SFTP, FTP, FTPS, AS2 | SFTP | 
| Akses | Dari internet. Jenis titik akhir ini tidak memerlukan konfigurasi khusus apa pun di VPC Anda. | Melalui internet dan dari dalam lingkungan yang terhubung dengan VPC dan VPC, seperti pusat data lokal di atas atau VPN. Direct Connect  | Dari dalam lingkungan yang terhubung dengan VPC dan VPC, seperti pusat data lokal di atas atau VPN. Direct Connect  | Dari dalam lingkungan yang terhubung dengan VPC dan VPC, seperti pusat data lokal di atas atau VPN. Direct Connect  | 
| Alamat IP statis | Anda tidak dapat melampirkan alamat IP statis. AWS menyediakan alamat IP yang dapat berubah. |  Anda dapat melampirkan alamat IP Elastis ke titik akhir. Ini bisa berupa alamat AWS IP milik atau alamat IP Anda sendiri ([Bawa alamat IP Anda sendiri](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html)). Alamat IP elastis yang dilampirkan ke titik akhir tidak berubah. Alamat IP pribadi yang dilampirkan ke server juga tidak berubah.  | Alamat IP pribadi yang dilampirkan ke titik akhir tidak berubah. | Alamat IP pribadi yang dilampirkan ke titik akhir tidak berubah. | 
| Daftar izin IP sumber |  Jenis titik akhir ini tidak mendukung daftar izin berdasarkan alamat IP sumber. Titik akhir dapat diakses publik dan mendengarkan lalu lintas melalui port 22.  Untuk endpoint yang dihosting VPC, server SFTP Transfer Family dapat beroperasi melalui port 22 (default), 2222, 2223, atau 22000.   |  Untuk mengizinkan akses berdasarkan alamat IP sumber, Anda dapat menggunakan grup keamanan yang dilampirkan ke titik akhir server dan jaringan yang ACLs dilampirkan ke subnet tempat titik akhir berada.  |  Untuk mengizinkan akses berdasarkan alamat IP sumber, Anda dapat menggunakan grup keamanan yang dilampirkan ke titik akhir server dan daftar kontrol akses jaringan (jaringan ACLs) yang dilampirkan ke subnet tempat titik akhir berada.  |  Untuk mengizinkan akses berdasarkan alamat IP sumber, Anda dapat menggunakan grup keamanan yang dilampirkan ke titik akhir server dan jaringan yang ACLs dilampirkan ke subnet tempat titik akhir berada.  | 
| Daftar izin firewall klien |  Anda harus mengizinkan nama DNS server. Karena alamat IP dapat berubah, hindari menggunakan alamat IP untuk daftar izin firewall klien Anda.  |  Anda dapat mengizinkan nama DNS server atau alamat IP Elastis yang dilampirkan ke server.  |  Anda dapat mengizinkan alamat IP pribadi atau nama DNS dari titik akhir.  |  Anda dapat mengizinkan alamat IP pribadi atau nama DNS dari titik akhir.  | 
| Jenis alamat IP | IPv4 (default) atau dual-stack (IPv4 dan) IPv6 | IPv4 hanya (tumpukan ganda tidak didukung) | IPv4 (default) atau dual-stack (IPv4 dan) IPv6 | IPv4 hanya (tumpukan ganda tidak didukung) | 

**catatan**  
Jenis `VPC_ENDPOINT` endpoint sekarang sudah usang dan tidak dapat digunakan untuk membuat server baru. Alih-alih menggunakan`EndpointType=VPC_ENDPOINT`, gunakan tipe titik akhir VPC (`EndpointType=VPC`), yang dapat Anda gunakan sebagai **Internal** atau **Internet Facing**, seperti yang dijelaskan dalam tabel sebelumnya.  
Untuk detail tentang penghentian, lihat. [Menghentikan penggunaan VPC\$1ENDPOINTAnda dapat mengubah jenis endpoint untuk server menggunakan konsol Transfer Family AWS CLI, API SDKs, atau CloudFormation. Untuk mengubah jenis endpoint server Anda, lihat[Memperbarui tipe endpoint AWS Transfer Family server dari VPC\$1ENDPOINT ke VPC](update-endpoint-type-vpc.md).](create-server-in-vpc.md#deprecate-vpc-endpoint)
Untuk informasi tentang mengelola izin titik akhir VPC, lihat. [Membatasi akses endpoint VPC untuk server Transfer Family](create-server-in-vpc.md#limit-vpc-endpoint-access)

Pertimbangkan opsi berikut untuk meningkatkan postur keamanan AWS Transfer Family server Anda:
+ Gunakan titik akhir VPC dengan akses internal, sehingga server hanya dapat diakses oleh klien dalam lingkungan yang terhubung dengan VPC atau VPC Anda seperti pusat data lokal di atas atau VPN. Direct Connect 
+ Untuk memungkinkan klien mengakses titik akhir melalui internet dan melindungi server Anda, gunakan titik akhir VPC dengan akses yang menghadap ke internet. Kemudian, ubah grup keamanan VPC untuk mengizinkan lalu lintas hanya dari alamat IP tertentu yang meng-host klien pengguna Anda.
+ Jika Anda memerlukan otentikasi berbasis kata sandi dan Anda menggunakan penyedia identitas khusus dengan server Anda, itu adalah praktik terbaik bahwa kebijakan kata sandi Anda mencegah pengguna membuat kata sandi yang lemah dan membatasi jumlah upaya login yang gagal.
+ AWS Transfer Family adalah layanan terkelola, sehingga tidak menyediakan akses shell. Anda tidak dapat langsung mengakses server SFTP yang mendasarinya untuk menjalankan perintah asli OS di server Transfer Family.
+ Gunakan Network Load Balancer di depan titik akhir VPC dengan akses internal. Ubah port listener pada penyeimbang beban dari port 22 ke port yang berbeda. Ini dapat mengurangi, tetapi tidak menghilangkan, risiko pemindai port dan bot yang menyelidiki server Anda, karena port 22 paling sering digunakan untuk pemindaian. Untuk detailnya, lihat posting blog [Network Load Balancers sekarang mendukung grup Keamanan](https://aws.amazon.com/blogs/containers/network-load-balancers-now-support-security-groups/).
**catatan**  
Jika Anda menggunakan Network Load Balancer, AWS Transfer Family CloudWatch log menampilkan alamat IP untuk NLB, bukan alamat IP klien yang sebenarnya.

# Mengkonfigurasi titik akhir server SFTP, FTPS, atau FTP
<a name="tf-server-endpoint"></a>

Anda dapat membuat server transfer file dengan menggunakan AWS Transfer Family layanan ini. Protokol transfer file berikut tersedia:
+ Secure Shell (SSH) File Transfer Protocol (SFTP) — Transfer file melalui SSH. Lihat perinciannya di [Buat server berkemampuan SFTP](create-server-sftp.md).
**catatan**  
Kami memberikan AWS CDK contoh untuk membuat server SFTP Transfer Family. Contoh menggunakan TypeScript, dan tersedia di GitHub [sini](https://github.com/aws-samples/aws-cdk-examples/tree/master/typescript/aws-transfer-sftp-server).
+ File Transfer Protocol Secure (FTPS) — Transfer file dengan enkripsi TLS. Lihat perinciannya di [Buat server berkemampuan FTPS](create-server-ftps.md).
+ Protokol Transfer File (FTP) — Transfer file tidak terenkripsi. Lihat perinciannya di [Buat server berkemampuan FTP](create-server-ftp.md).
+ Pernyataan Penerapan 2 (AS2) — Transfer file untuk mengangkut data terstruktur business-to-business. Lihat perinciannya di [Mengkonfigurasi AS2](create-b2b-server.md). Untuk AS2, Anda dapat dengan cepat membuat CloudFormation tumpukan untuk tujuan demonstrasi. Prosedur ini dijelaskan dalam[Gunakan template untuk membuat AS2 tumpukan Transfer Family demo](create-as2-transfer-server.md#as2-cfn-demo-template).

Anda dapat membuat server dengan beberapa protokol.

**catatan**  
Jika Anda memiliki beberapa protokol yang diaktifkan untuk titik akhir server yang sama dan Anda ingin memberikan akses dengan menggunakan nama pengguna yang sama melalui beberapa protokol, Anda dapat melakukannya selama kredensi khusus untuk protokol telah diatur di penyedia identitas Anda. Untuk FTP, kami sarankan untuk mempertahankan kredensyal terpisah dari SFTP dan FTPS. Ini karena, tidak seperti SFTP dan FTPS, FTP mentransmisikan kredensyal dalam teks yang jelas. Dengan mengisolasi kredensyal FTP dari SFTP atau FTPS, jika kredensyal FTP dibagikan atau diekspos, beban kerja Anda menggunakan SFTP atau FTPS tetap aman.

Saat Anda membuat server, Anda memilih spesifik Wilayah AWS untuk melakukan permintaan operasi file pengguna yang ditugaskan ke server tersebut. Seiring dengan menetapkan server satu atau beberapa protokol, Anda juga menetapkan salah satu jenis penyedia identitas berikut:
+ **Layanan dikelola dengan menggunakan kunci SSH**. Lihat perinciannya di [Bekerja dengan pengguna yang dikelola layanan](service-managed-users.md).
+ **AWS Directory Service for Microsoft Active Directory (AWS Managed Microsoft AD)**. Metode ini memungkinkan Anda mengintegrasikan grup Microsoft Active Directory untuk menyediakan akses ke server Transfer Family Anda. Lihat perinciannya di [Menggunakan AWS Directory Service untuk Microsoft Active Directory](directory-services-users.md).
+ **Penyedia identitas khusus**. Transfer Family menawarkan beberapa opsi untuk menggunakan penyedia identitas khusus, seperti yang dijelaskan dalam [Bekerja dengan penyedia identitas khusus](custom-idp-intro.md) topik.

Anda juga menetapkan server jenis titik akhir (dapat diakses publik atau dihosting VPC) dan nama host dengan menggunakan titik akhir server default, atau nama host khusus dengan menggunakan layanan Amazon Route 53 atau dengan menggunakan layanan Sistem Nama Domain (DNS) pilihan Anda. Nama host server harus unik di Wilayah AWS tempat pembuatannya.

Selain itu, Anda dapat menetapkan peran CloudWatch pencatatan Amazon untuk mendorong peristiwa ke CloudWatch log Anda, memilih kebijakan keamanan yang berisi algoritme kriptografi yang diaktifkan untuk digunakan oleh server Anda, dan menambahkan metadata ke server dalam bentuk tag yang merupakan pasangan nilai kunci.

**penting**  
Anda dikenakan biaya untuk server instantiated dan untuk transfer data. Untuk informasi tentang harga dan penggunaan Kalkulator Harga AWS untuk mendapatkan perkiraan biaya penggunaan Transfer Family, lihat [AWS Transfer Family harga](https://aws.amazon.com/aws-transfer-family/pricing/).

# Buat server berkemampuan SFTP
<a name="create-server-sftp"></a>

Secure Shell (SSH) File Transfer Protocol (SFTP) adalah protokol jaringan yang digunakan untuk transfer data yang aman melalui internet. Protokol ini mendukung fungsionalitas keamanan dan otentikasi penuh SSH. Ini banyak digunakan untuk bertukar data, termasuk informasi sensitif antara mitra bisnis di berbagai industri seperti layanan keuangan, perawatan kesehatan, ritel, dan periklanan.

**Perhatikan hal berikut**
+ Server SFTP untuk Transfer Family beroperasi melalui port 22. Untuk endpoint yang dihosting VPC, server SFTP Transfer Family juga dapat beroperasi melalui port 2222, 2223 atau 22000. Lihat perinciannya di [Buat server di cloud pribadi virtual](create-server-in-vpc.md).
+ Titik akhir publik tidak dapat membatasi lalu lintas melalui grup keamanan. Untuk menggunakan grup keamanan dengan server Transfer Family, Anda harus meng-host endpoint server Anda di dalam virtual private cloud (VPC) seperti yang dijelaskan dalam. [Buat server di cloud pribadi virtual](create-server-in-vpc.md)

**Lihat juga**
+ Kami memberikan AWS CDK contoh untuk membuat server SFTP Transfer Family. Contoh menggunakan TypeScript, dan tersedia di GitHub [sini](https://github.com/aws-samples/aws-cdk-examples/tree/master/typescript/aws-transfer-sftp-server).
+ Untuk panduan tentang cara menerapkan server Transfer Family di dalam VPC, lihat [Gunakan daftar izin IP untuk mengamankan server Anda](https://aws.amazon.com/blogs//storage/use-ip-allow-list-to-secure-your-aws-transfer-for-sftp-servers/). AWS Transfer Family 

**Untuk membuat server berkemampuan SFTP**

1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/)dan pilih **Server** dari panel navigasi, lalu pilih **Buat server**.

1. **Di **Pilih protokol**, pilih **SFTP**, lalu pilih Berikutnya.**

1. Di **Pilih penyedia identitas**, pilih penyedia identitas yang ingin Anda gunakan untuk mengelola akses pengguna. Anda memiliki opsi berikut:
   + **Layanan dikelola** - Anda menyimpan identitas dan kunci pengguna. AWS Transfer Family
   + **AWS Directory Service for Microsoft Active Directory**— Anda menyediakan Directory Service direktori untuk mengakses titik akhir. Dengan demikian, Anda dapat menggunakan kredensyal yang disimpan di Active Directory untuk mengautentikasi pengguna Anda. Untuk mempelajari lebih lanjut tentang bekerja dengan penyedia AWS Managed Microsoft AD identitas, lihat[Menggunakan AWS Directory Service untuk Microsoft Active Directory](directory-services-users.md).
**catatan**  
 Direktori Cross-Account dan Shared tidak didukung untuk. AWS Managed Microsoft AD
Untuk menyiapkan server dengan Directory Service sebagai penyedia identitas Anda, Anda perlu menambahkan beberapa Directory Service izin. Lihat perinciannya di [Sebelum Anda mulai menggunakan AWS Directory Service for Microsoft Active Directory](directory-services-users.md#managed-ad-prereq).
   + **Penyedia identitas khusus** - Pilih salah satu opsi berikut:
     + **Gunakan AWS Lambda untuk menghubungkan penyedia identitas Anda** — Anda dapat menggunakan penyedia identitas yang ada, didukung oleh fungsi Lambda. Anda memberikan nama fungsi Lambda. Untuk informasi selengkapnya, lihat [Menggunakan AWS Lambda untuk mengintegrasikan penyedia identitas Anda](custom-lambda-idp.md).
     + **Gunakan Amazon API Gateway untuk menghubungkan penyedia identitas Anda** — Anda dapat membuat metode API Gateway yang didukung oleh fungsi Lambda untuk digunakan sebagai penyedia identitas. Anda menyediakan URL Amazon API Gateway dan peran pemanggilan. Untuk informasi selengkapnya, lihat [Menggunakan Amazon API Gateway untuk mengintegrasikan penyedia identitas Anda](authentication-api-gateway.md).  
![\[Bagian Pilih konsol penyedia identitas dengan Penyedia identitas kustom dipilih. Juga memiliki nilai default yang dipilih, yaitu bahwa pengguna dapat mengautentikasi menggunakan kata sandi atau kunci mereka.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/custom-lambda-console.png)

1. Pilih **Berikutnya**.

1. Di **Pilih titik akhir**, lakukan hal berikut:

   1. Untuk tipe **Endpoint, pilih tipe titik** akhir yang **dapat diakses publik**. Untuk titik akhir yang **dihosting VPC**, lihat. [Buat server di cloud pribadi virtual](create-server-in-vpc.md)

   1.  Untuk **jenis alamat IP**, pilih **IPv4**(default) untuk kompatibilitas mundur atau **Dual-stack** untuk mengaktifkan keduanya IPv4 dan IPv6 koneksi ke titik akhir Anda.
**catatan**  
Mode dual-stack memungkinkan endpoint Transfer Family Anda berkomunikasi dengan keduanya IPv4 dan IPv6 klien yang diaktifkan. Ini memungkinkan Anda untuk secara bertahap beralih dari IPv4 ke sistem IPv6 berbasis tanpa perlu beralih sekaligus.

   1. (Opsional) Untuk **nama host Kustom**, pilih **Tidak Ada**.

      Anda mendapatkan nama host server yang disediakan oleh AWS Transfer Family. Nama host server mengambil formulir`serverId.server.transfer.regionId.amazonaws.com`.

      Untuk nama host kustom, Anda menentukan alias kustom untuk endpoint server Anda. Untuk mempelajari lebih lanjut tentang bekerja dengan nama host kustom, lihat[Bekerja dengan nama host khusus](requirements-dns.md).

   1. (Opsional) Untuk **FIPS Diaktifkan**, pilih kotak centang **titik akhir Diaktifkan FIPS** untuk memastikan bahwa titik akhir sesuai dengan Standar Pemrosesan Informasi Federal (FIPS).
**catatan**  
Titik akhir berkemampuan FIPS hanya tersedia di Wilayah Amerika Utara. AWS Untuk Wilayah yang tersedia, lihat [AWS Transfer Family titik akhir dan kuota](https://docs.aws.amazon.com/general/latest/gr/transfer-service.html) di. *Referensi Umum AWS* Untuk informasi lebih lanjut tentang FIPS, lihat [Federal Information Processing Standard (FIPS)](https://aws.amazon.com/compliance/fips/) 140-2.

   1. Pilih **Berikutnya**.

1. Pada halaman **Pilih domain**, pilih layanan AWS penyimpanan yang ingin Anda gunakan untuk menyimpan dan mengakses data Anda melalui protokol yang dipilih:
   + Pilih **Amazon S3** untuk menyimpan dan mengakses file Anda sebagai objek di atas protokol yang dipilih.
   + Pilih **Amazon EFS** untuk menyimpan dan mengakses file Anda di sistem file Amazon EFS Anda melalui protokol yang dipilih.

   Pilih **Berikutnya**.

1. Di **Konfigurasikan detail tambahan**, lakukan hal berikut:

   1. Untuk logging, tentukan grup log yang ada atau buat yang baru (opsi default). Jika Anda memilih grup log yang ada, Anda harus memilih salah satu yang terkait dengan Anda Akun AWS.  
![\[Panel logging untuk Mengonfigurasi detail tambahan di wizard Buat server. Pilih grup log yang ada dipilih.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/logging-server-choose-existing-group.png)

      Jika Anda memilih **Buat grup log**, CloudWatch konsol ([https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/)) terbuka ke halaman **Buat grup log**. Untuk detailnya, lihat [Membuat grup log di CloudWatch Log](https://docs.aws.amazon.com//AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html#Create-Log-Group). 

   1.  (Opsional) Untuk **alur kerja Terkelola**, pilih alur kerja IDs (dan peran terkait) yang harus diasumsikan oleh Transfer Family saat menjalankan alur kerja. Anda dapat memilih satu alur kerja untuk dieksekusi setelah unggahan lengkap, dan satu lagi untuk mengeksekusi pada unggahan sebagian. Untuk mempelajari lebih lanjut tentang memproses file Anda menggunakan alur kerja terkelola, lihat[AWS Transfer Family alur kerja terkelola](transfer-workflows.md).  
![\[Bagian Konsol alur kerja terkelola.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/workflows-addtoserver.png)

   1. Untuk **opsi algoritma kriptografi**, pilih kebijakan keamanan yang berisi algoritma kriptografi yang diaktifkan untuk digunakan oleh server Anda. Kebijakan keamanan terbaru kami adalah default: untuk detailnya, lihat[Kebijakan keamanan untuk AWS Transfer Family server](security-policies.md).

   1. (Opsional) Untuk **Server Host Key, masukkan kunci** pribadi RSA ED25519,, atau ECDSA yang akan digunakan untuk mengidentifikasi server Anda ketika klien terhubung dengannya melalui SFTP. Anda juga dapat menambahkan deskripsi untuk membedakan antara beberapa kunci host. 

      Setelah Anda membuat server Anda, Anda dapat menambahkan kunci host tambahan. Memiliki beberapa kunci host berguna jika Anda ingin memutar tombol atau jika Anda ingin memiliki berbagai jenis kunci, seperti kunci RSA dan juga kunci ECDSA.
**catatan**  
Bagian **Server Host Key** hanya digunakan untuk memigrasikan pengguna dari server berkemampuan SFTP yang ada.

   1. (Opsional) Untuk **Tag**, untuk **Kunci** dan **Nilai**, masukkan satu atau beberapa tag sebagai pasangan nilai kunci, lalu pilih **Tambahkan** tag.

   1. Pilih **Berikutnya**.

   1. Anda dapat mengoptimalkan kinerja untuk direktori Amazon S3 Anda. 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` (daftar), operasi daftar memakan waktu antara enam dan delapan menit. Namun, jika Anda mengoptimalkan direktori Anda, operasi ini hanya membutuhkan beberapa detik.

      Saat Anda membuat server menggunakan konsol, direktori yang dioptimalkan diaktifkan secara default. Jika Anda membuat server menggunakan API, perilaku ini tidak diaktifkan secara default.  
![\[Bagian konsol direktori yang dioptimalkan.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/optimized-directories.png)

   1. (Opsional) Konfigurasikan AWS Transfer Family server untuk menampilkan pesan yang disesuaikan seperti kebijakan organisasi atau syarat dan ketentuan kepada pengguna akhir Anda. Untuk **spanduk Tampilan**, di kotak teks **spanduk tampilan Pra-otentikasi**, masukkan pesan teks yang ingin ditampilkan kepada pengguna Anda sebelum mereka mengautentikasi.

   1. (Opsional) Anda dapat mengonfigurasi opsi tambahan berikut.
      + **SetStat opsi**: aktifkan opsi ini untuk mengabaikan kesalahan yang dihasilkan saat klien mencoba menggunakan `SETSTAT` pada file yang Anda unggah ke bucket Amazon S3. Untuk detail tambahan, lihat `SetStatOption` dokumentasi di [ProtocolDetails](https://docs.aws.amazon.com/transfer/latest/APIReference/API_ProtocolDetails.html).
      + **Dimulainya kembali sesi TLS**: opsi ini hanya tersedia jika Anda telah mengaktifkan FTPS sebagai salah satu protokol untuk server ini.
      + **IP Pasif**: opsi ini hanya tersedia jika Anda telah mengaktifkan FTPS atau FTP sebagai salah satu protokol untuk server ini.  
![\[Layar opsi tambahan untuk halaman detail Server.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/create-server-configure-additional-items-sftp.png)

1. Di **Tinjau dan buat**, tinjau pilihan Anda.
   + Jika Anda ingin mengedit salah satu dari mereka, pilih **Edit** di sebelah langkah.
**catatan**  
Anda harus meninjau setiap langkah setelah langkah yang Anda pilih untuk diedit.
   + Jika Anda tidak memiliki perubahan, pilih **Buat server** untuk membuat server Anda. Anda akan dibawa ke halaman **Server**, ditampilkan berikut, di mana server baru Anda terdaftar.

Diperlukan beberapa menit sebelum status server baru Anda berubah menjadi **Online**. Pada saat itu, server Anda dapat melakukan operasi file, tetapi Anda harus membuat pengguna terlebih dahulu. Untuk detail tentang membuat pengguna, lihat[Mengelola pengguna untuk titik akhir server](create-user.md).

# Buat server berkemampuan FTPS
<a name="create-server-ftps"></a>

File Transfer Protocol over SSL (FTPS) adalah ekstensi ke FTP. Ini menggunakan protokol kriptografi Transport Layer Security (TLS) dan Secure Sockets Layer (SSL) untuk mengenkripsi lalu lintas. FTPS memungkinkan enkripsi koneksi kontrol dan saluran data baik secara bersamaan maupun independen.

**catatan**  
Untuk pertimbangan penting tentang Network Load Balancers, lihat. [Hindari menempatkan NLBs dan NATs di depan AWS Transfer Family server](infrastructure-security.md#nlb-considerations)

**Untuk membuat server berkemampuan FTPS**

1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/)dan pilih **Server** dari panel navigasi, lalu pilih **Buat server**.

1. **Di **Pilih protokol**, pilih FTPS.**

   **Untuk **sertifikat Server**, pilih sertifikat yang disimpan di AWS Certificate Manager (ACM) yang akan digunakan untuk mengidentifikasi server Anda ketika klien terhubung ke sana melalui FTPS dan kemudian pilih Berikutnya.**

   Untuk meminta sertifikat publik baru, lihat [Meminta sertifikat publik](https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-public.html) di *Panduan AWS Certificate Manager Pengguna*.

   *Untuk mengimpor sertifikat yang ada ke ACM, lihat [Mengimpor sertifikat ke ACM di Panduan](https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html) Pengguna.AWS Certificate Manager *

   Untuk meminta sertifikat pribadi untuk menggunakan FTPS melalui alamat IP pribadi, lihat [Meminta Sertifikat Pribadi](https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-private.html) di *AWS Certificate Manager Panduan Pengguna*.

   Sertifikat dengan algoritme kriptografi dan ukuran kunci berikut didukung:
   + 2048-bit RSA (RSA\$12048)
   + 4096-bit RSA (RSA\$14096)
   + Elliptic Prime Curve 256 bit (EC\$1prime256v1)
   + Elliptic Prime Curve 384 bit (EC\$1secp384r1)
   + Elliptic Prime Curve 521 bit (EC\$1secp521r1)
**catatan**  
Sertifikat harus berupa sertifikat SSL/TLS X.509 versi 3 yang valid dengan FQDN atau alamat IP yang ditentukan dan berisi informasi tentang penerbit.

1. Di **Pilih penyedia identitas**, pilih penyedia identitas yang ingin Anda gunakan untuk mengelola akses pengguna. Anda memiliki opsi berikut:
   + **AWS Directory Service for Microsoft Active Directory**— Anda menyediakan Directory Service direktori untuk mengakses titik akhir. Dengan demikian, Anda dapat menggunakan kredensyal yang disimpan di Active Directory untuk mengautentikasi pengguna Anda. Untuk mempelajari lebih lanjut tentang bekerja dengan penyedia AWS Managed Microsoft AD identitas, lihat[Menggunakan AWS Directory Service untuk Microsoft Active Directory](directory-services-users.md).
**catatan**  
 Direktori Cross-Account dan Shared tidak didukung untuk. AWS Managed Microsoft AD
Untuk menyiapkan server dengan Directory Service sebagai penyedia identitas Anda, Anda perlu menambahkan beberapa Directory Service izin. Lihat perinciannya di [Sebelum Anda mulai menggunakan AWS Directory Service for Microsoft Active Directory](directory-services-users.md#managed-ad-prereq).
   + **Penyedia identitas khusus** - Pilih salah satu opsi berikut:
     + **Gunakan AWS Lambda untuk menghubungkan penyedia identitas Anda** — Anda dapat menggunakan penyedia identitas yang ada, didukung oleh fungsi Lambda. Anda memberikan nama fungsi Lambda. Untuk informasi selengkapnya, lihat [Menggunakan AWS Lambda untuk mengintegrasikan penyedia identitas Anda](custom-lambda-idp.md).
     + **Gunakan Amazon API Gateway untuk menghubungkan penyedia identitas Anda** — Anda dapat membuat metode API Gateway yang didukung oleh fungsi Lambda untuk digunakan sebagai penyedia identitas. Anda menyediakan URL Amazon API Gateway dan peran pemanggilan. Untuk informasi selengkapnya, lihat [Menggunakan Amazon API Gateway untuk mengintegrasikan penyedia identitas Anda](authentication-api-gateway.md).  
![\[Bagian Pilih konsol penyedia identitas dengan Penyedia identitas kustom dipilih.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/custom-lambda-console-no-sftp.png)

1. Pilih **Berikutnya**.

1. Di **Pilih titik akhir**, lakukan hal berikut:
**catatan**  
 Server FTPS untuk Transfer Family beroperasi melalui Port 21 (Saluran Kontrol) dan Rentang Port 8192-8200 (Saluran Data).

   1. Untuk tipe **Endpoint, pilih tipe** endpoint yang dihosting **VPC** untuk meng-host endpoint server Anda. Untuk informasi tentang menyiapkan titik akhir yang dihosting VPC Anda, lihat. [Buat server di cloud pribadi virtual](create-server-in-vpc.md)
**catatan**  
Titik akhir yang dapat diakses publik tidak didukung.

   1. (Opsional) Untuk **FIPS Diaktifkan**, pilih kotak centang **titik akhir Diaktifkan FIPS** untuk memastikan bahwa titik akhir sesuai dengan Standar Pemrosesan Informasi Federal (FIPS).
**catatan**  
Titik akhir berkemampuan FIPS hanya tersedia di Wilayah Amerika Utara. AWS Untuk Wilayah yang tersedia, lihat [AWS Transfer Family titik akhir dan kuota](https://docs.aws.amazon.com/general/latest/gr/transfer-service.html) di. *Referensi Umum AWS* Untuk informasi lebih lanjut tentang FIPS, lihat [Federal Information Processing Standard (FIPS)](https://aws.amazon.com/compliance/fips/) 140-2.

   1. Pilih **Berikutnya**.  
![\[Bagian Pilih konsol titik akhir dengan VPC yang dihosting dipilih.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/create-server-choose-endpoint-vpc-internal.png)

1. Pada halaman **Pilih domain**, pilih layanan AWS penyimpanan yang ingin Anda gunakan untuk menyimpan dan mengakses data Anda melalui protokol yang dipilih:
   + Pilih **Amazon S3** untuk menyimpan dan mengakses file Anda sebagai objek di atas protokol yang dipilih.
   + Pilih **Amazon EFS** untuk menyimpan dan mengakses file Anda di sistem file Amazon EFS Anda melalui protokol yang dipilih.

   Pilih **Berikutnya**.

1. Di **Konfigurasikan detail tambahan**, lakukan hal berikut:

   1. Untuk logging, tentukan grup log yang ada atau buat yang baru (opsi default).  
![\[Panel logging untuk Mengonfigurasi detail tambahan di wizard Buat server. Pilih grup log yang ada dipilih.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/logging-server-choose-existing-group.png)

      Jika Anda memilih **Buat grup log**, CloudWatch konsol ([https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/)) terbuka ke halaman **Buat grup log**. Untuk detailnya, lihat [Membuat grup log di CloudWatch Log](https://docs.aws.amazon.com//AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html#Create-Log-Group). 

   1.  (Opsional) Untuk **alur kerja Terkelola**, pilih alur kerja IDs (dan peran terkait) yang harus diasumsikan oleh Transfer Family saat menjalankan alur kerja. Anda dapat memilih satu alur kerja untuk dieksekusi setelah unggahan lengkap, dan satu lagi untuk mengeksekusi pada unggahan sebagian. Untuk mempelajari lebih lanjut tentang memproses file Anda menggunakan alur kerja terkelola, lihat[AWS Transfer Family alur kerja terkelola](transfer-workflows.md).  
![\[Bagian Konsol alur kerja terkelola.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/workflows-addtoserver.png)

   1. Untuk **opsi algoritma kriptografi**, pilih kebijakan keamanan yang berisi algoritma kriptografi yang diaktifkan untuk digunakan oleh server Anda. Kebijakan keamanan terbaru kami adalah default: untuk detailnya, lihat[Kebijakan keamanan untuk AWS Transfer Family server](security-policies.md).

   1. Untuk **Server Host Key**, biarkan kosong.

   1. (Opsional) Untuk **Tag**, untuk **Kunci** dan **Nilai**, masukkan satu atau beberapa tag sebagai pasangan nilai kunci, lalu pilih **Tambahkan** tag.

   1. Anda dapat mengoptimalkan kinerja untuk direktori Amazon S3 Anda. 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` (daftar), operasi daftar memakan waktu antara enam dan delapan menit. Namun, jika Anda mengoptimalkan direktori Anda, operasi ini hanya membutuhkan beberapa detik.

      Saat Anda membuat server menggunakan konsol, direktori yang dioptimalkan diaktifkan secara default. Jika Anda membuat server menggunakan API, perilaku ini tidak diaktifkan secara default.  
![\[Bagian konsol direktori yang dioptimalkan.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/optimized-directories.png)

   1. Pilih **Berikutnya**.

   1. (Opsional) Anda dapat mengonfigurasi AWS Transfer Family server untuk menampilkan pesan yang disesuaikan seperti kebijakan organisasi atau syarat dan ketentuan kepada pengguna akhir Anda. Anda juga dapat menampilkan Message of The Day (MOTD) yang disesuaikan kepada pengguna yang telah berhasil diautentikasi.

      Untuk **spanduk Tampilan**, di kotak teks **spanduk tampilan Pra-otentikasi**, masukkan pesan teks yang ingin ditampilkan kepada pengguna Anda sebelum mereka mengautentikasi, dan di kotak teks **spanduk tampilan pasca-otentikasi**, masukkan teks yang ingin ditampilkan kepada pengguna Anda setelah mereka berhasil mengautentikasi.

   1. (Opsional) Anda dapat mengonfigurasi opsi tambahan berikut.
      + **SetStat opsi**: aktifkan opsi ini untuk mengabaikan kesalahan yang dihasilkan saat klien mencoba menggunakan `SETSTAT` pada file yang Anda unggah ke bucket Amazon S3. Untuk detail tambahan, lihat `SetStatOption` dokumentasi dalam [ProtocolDetails](https://docs.aws.amazon.com/transfer/latest/APIReference/API_ProtocolDetails.html)topik.
      + **Dimulainya kembali sesi TLS**: menyediakan mekanisme untuk melanjutkan atau berbagi kunci rahasia yang dinegosiasikan antara kontrol dan koneksi data untuk sesi FTPS. Untuk detail tambahan, lihat `TlsSessionResumptionMode` dokumentasi dalam [ProtocolDetails](https://docs.aws.amazon.com/transfer/latest/APIReference/API_ProtocolDetails.html)topik.
      + **IP pasif**: menunjukkan mode pasif, untuk protokol FTP dan FTPS. Masukkan satu IPv4 alamat, seperti alamat IP publik firewall, router, atau penyeimbang beban. Untuk detail tambahan, lihat `PassiveIp` dokumentasi dalam [ProtocolDetails](https://docs.aws.amazon.com/transfer/latest/APIReference/API_ProtocolDetails.html)topik.  
![\[Layar konfigurasi Tambahan yang menampilkan SetStat, dimulainya kembali sesi TLS, dan parameter IP Pasif.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/create-server-configure-additional-items-all.png)

1. Di **Tinjau dan buat**, tinjau pilihan Anda.
   + Jika Anda ingin mengedit salah satu dari mereka, pilih **Edit** di sebelah langkah.
**catatan**  
Anda harus meninjau setiap langkah setelah langkah yang Anda pilih untuk diedit.
   + Jika Anda tidak memiliki perubahan, pilih **Buat server** untuk membuat server Anda. Anda akan dibawa ke halaman **Server**, ditampilkan berikut, di mana server baru Anda terdaftar.

Diperlukan beberapa menit sebelum status server baru Anda berubah menjadi **Online**. Pada saat itu, server Anda dapat melakukan operasi file untuk pengguna Anda.

**Langkah selanjutnya**: Untuk langkah selanjutnya, lanjutkan [Bekerja dengan penyedia identitas khusus](custom-idp-intro.md) untuk mengatur pengguna.

# Buat server berkemampuan FTP
<a name="create-server-ftp"></a>

File Transfer Protocol (FTP) adalah protokol jaringan yang digunakan untuk transfer data. FTP menggunakan saluran terpisah untuk kontrol dan transfer data. Saluran kontrol terbuka hingga batas waktu dihentikan atau tidak aktif. Saluran data aktif selama transfer. FTP menggunakan teks yang jelas dan tidak mendukung enkripsi lalu lintas.

**catatan**  
Saat Anda mengaktifkan FTP, Anda harus memilih opsi akses internal untuk titik akhir yang dihosting VPC. Jika Anda membutuhkan server Anda untuk memiliki data melintasi jaringan publik, Anda harus menggunakan protokol aman, seperti SFTP atau FTPS. 

**catatan**  
Untuk pertimbangan penting tentang Network Load Balancers, lihat. [Hindari menempatkan NLBs dan NATs di depan AWS Transfer Family server](infrastructure-security.md#nlb-considerations)

**Untuk membuat server berkemampuan FTP**

1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/)dan pilih **Server** dari panel navigasi, lalu pilih **Buat server**.

1. **Di **Pilih protokol**, pilih **FTP**, lalu pilih Berikutnya.**

1. Di **Pilih penyedia identitas**, pilih penyedia identitas yang ingin Anda gunakan untuk mengelola akses pengguna. Anda memiliki opsi berikut:
   + **AWS Directory Service for Microsoft Active Directory**— Anda menyediakan Directory Service direktori untuk mengakses titik akhir. Dengan demikian, Anda dapat menggunakan kredensyal yang disimpan di Active Directory untuk mengautentikasi pengguna Anda. Untuk mempelajari lebih lanjut tentang bekerja dengan penyedia AWS Managed Microsoft AD identitas, lihat[Menggunakan AWS Directory Service untuk Microsoft Active Directory](directory-services-users.md).
**catatan**  
 Direktori Cross-Account dan Shared tidak didukung untuk. AWS Managed Microsoft AD
Untuk menyiapkan server dengan Directory Service sebagai penyedia identitas Anda, Anda perlu menambahkan beberapa Directory Service izin. Lihat perinciannya di [Sebelum Anda mulai menggunakan AWS Directory Service for Microsoft Active Directory](directory-services-users.md#managed-ad-prereq).
   + **Penyedia identitas khusus** - Pilih salah satu opsi berikut:
     + **Gunakan AWS Lambda untuk menghubungkan penyedia identitas Anda** — Anda dapat menggunakan penyedia identitas yang ada, didukung oleh fungsi Lambda. Anda memberikan nama fungsi Lambda. Untuk informasi selengkapnya, lihat [Menggunakan AWS Lambda untuk mengintegrasikan penyedia identitas Anda](custom-lambda-idp.md).
     + **Gunakan Amazon API Gateway untuk menghubungkan penyedia identitas Anda** — Anda dapat membuat metode API Gateway yang didukung oleh fungsi Lambda untuk digunakan sebagai penyedia identitas. Anda menyediakan URL Amazon API Gateway dan peran pemanggilan. Untuk informasi selengkapnya, lihat [Menggunakan Amazon API Gateway untuk mengintegrasikan penyedia identitas Anda](authentication-api-gateway.md).  
![\[Bagian Pilih konsol penyedia identitas dengan Penyedia identitas kustom dipilih.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/custom-lambda-console-no-sftp.png)

1. Pilih **Berikutnya**.

1. Di **Pilih titik akhir**, lakukan hal berikut:
**catatan**  
Server FTP untuk Transfer Family beroperasi melalui Port 21 (Saluran Kontrol) dan Rentang Port 8192-8200 (Saluran Data).

   1. Untuk **jenis Endpoint**, pilih **VPC** yang dihosting untuk meng-host endpoint server Anda. Untuk informasi tentang menyiapkan titik akhir yang dihosting VPC Anda, lihat. [Buat server di cloud pribadi virtual](create-server-in-vpc.md)
**catatan**  
Titik akhir yang dapat diakses publik tidak didukung.

   1. Untuk **FIPS Diaktifkan**, biarkan kotak centang **titik akhir FIPS Enabled** tetap bersih.
**catatan**  
Titik akhir berkemampuan FIPS tidak didukung untuk server FTP.

   1. Pilih **Berikutnya**.  
![\[Bagian Pilih konsol titik akhir dengan VPC yang dihosting dipilih.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/create-server-choose-endpoint-vpc-internal.png)

1. Pada halaman **Pilih domain**, pilih layanan AWS penyimpanan yang ingin Anda gunakan untuk menyimpan dan mengakses data Anda melalui protokol yang dipilih.
   + Pilih **Amazon S3** untuk menyimpan dan mengakses file Anda sebagai objek di atas protokol yang dipilih.
   + Pilih **Amazon EFS** untuk menyimpan dan mengakses file Anda di sistem file Amazon EFS Anda melalui protokol yang dipilih.

   Pilih **Berikutnya**.

1. Di **Konfigurasikan detail tambahan**, lakukan hal berikut:

   1. Untuk logging, tentukan grup log yang ada atau buat yang baru (opsi default).  
![\[Panel logging untuk Mengonfigurasi detail tambahan di wizard Buat server. Pilih grup log yang ada dipilih.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/logging-server-choose-existing-group.png)

      Jika Anda memilih **Buat grup log**, CloudWatch konsol ([https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/)) terbuka ke halaman **Buat grup log**. Untuk detailnya, lihat [Membuat grup log di CloudWatch Log](https://docs.aws.amazon.com//AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html#Create-Log-Group). 

   1.  (Opsional) Untuk **alur kerja Terkelola**, pilih alur kerja IDs (dan peran terkait) yang harus diasumsikan oleh Transfer Family saat menjalankan alur kerja. Anda dapat memilih satu alur kerja untuk dieksekusi setelah unggahan lengkap, dan satu lagi untuk mengeksekusi pada unggahan sebagian. Untuk mempelajari lebih lanjut tentang memproses file Anda menggunakan alur kerja terkelola, lihat[AWS Transfer Family alur kerja terkelola](transfer-workflows.md).  
![\[Bagian Konsol alur kerja terkelola.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/workflows-addtoserver.png)

   1. Untuk **opsi algoritma kriptografi**, pilih kebijakan keamanan yang berisi algoritma kriptografi yang diaktifkan untuk digunakan oleh server Anda.
**catatan**  
Transfer Family menetapkan kebijakan keamanan terbaru ke server FTP Anda. Namun, karena protokol FTP tidak menggunakan enkripsi apa pun, server FTP tidak menggunakan algoritma kebijakan keamanan apa pun. Kecuali server Anda juga menggunakan protokol FTPS atau SFTP, kebijakan keamanan tetap tidak digunakan.

   1. Untuk **Server Host Key**, biarkan kosong.

   1. (Opsional) Untuk **Tag**, untuk **Kunci** dan **Nilai**, masukkan satu atau beberapa tag sebagai pasangan nilai kunci, lalu pilih **Tambahkan** tag.

   1. Anda dapat mengoptimalkan kinerja untuk direktori Amazon S3 Anda. 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` (daftar), operasi daftar memakan waktu antara enam dan delapan menit. Namun, jika Anda mengoptimalkan direktori Anda, operasi ini hanya membutuhkan beberapa detik.

      Saat Anda membuat server menggunakan konsol, direktori yang dioptimalkan diaktifkan secara default. Jika Anda membuat server menggunakan API, perilaku ini tidak diaktifkan secara default.  
![\[Bagian konsol direktori yang dioptimalkan.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/optimized-directories.png)

   1. Pilih **Berikutnya**.

   1. (Opsional) Anda dapat mengonfigurasi AWS Transfer Family server untuk menampilkan pesan yang disesuaikan seperti kebijakan organisasi atau syarat dan ketentuan kepada pengguna akhir Anda. Anda juga dapat menampilkan Message of The Day (MOTD) yang disesuaikan kepada pengguna yang telah berhasil diautentikasi.

      Untuk **spanduk Tampilan**, di kotak teks **spanduk tampilan Pra-otentikasi**, masukkan pesan teks yang ingin ditampilkan kepada pengguna Anda sebelum mereka mengautentikasi, dan di kotak teks **spanduk tampilan pasca-otentikasi**, masukkan teks yang ingin ditampilkan kepada pengguna Anda setelah mereka berhasil mengautentikasi.

   1. (Opsional) Anda dapat mengonfigurasi opsi tambahan berikut.
      + **SetStat opsi**: aktifkan opsi ini untuk mengabaikan kesalahan yang dihasilkan saat klien mencoba menggunakan `SETSTAT` pada file yang Anda unggah ke bucket Amazon S3. Untuk detail tambahan, lihat `SetStatOption` dokumentasi dalam [ProtocolDetails](https://docs.aws.amazon.com/transfer/latest/APIReference/API_ProtocolDetails.html)topik.
      + **Dimulainya kembali sesi TLS**: menyediakan mekanisme untuk melanjutkan atau berbagi kunci rahasia yang dinegosiasikan antara kontrol dan koneksi data untuk sesi FTPS. Untuk detail tambahan, lihat `TlsSessionResumptionMode` dokumentasi dalam [ProtocolDetails](https://docs.aws.amazon.com/transfer/latest/APIReference/API_ProtocolDetails.html)topik.
      + **IP pasif**: menunjukkan mode pasif, untuk protokol FTP dan FTPS. Masukkan satu IPv4 alamat, seperti alamat IP publik firewall, router, atau penyeimbang beban. Untuk detail tambahan, lihat `PassiveIp` dokumentasi dalam [ProtocolDetails](https://docs.aws.amazon.com/transfer/latest/APIReference/API_ProtocolDetails.html)topik.  
![\[Layar konfigurasi Tambahan yang menampilkan SetStat, dimulainya kembali sesi TLS, dan parameter IP Pasif.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/create-server-configure-additional-items-all.png)

1. Di **Tinjau dan buat**, tinjau pilihan Anda.
   + Jika Anda ingin mengedit salah satu dari mereka, pilih **Edit** di sebelah langkah.
**catatan**  
Anda harus meninjau setiap langkah setelah langkah yang Anda pilih untuk diedit.
   + Jika Anda tidak memiliki perubahan, pilih **Buat server** untuk membuat server Anda. Anda akan dibawa ke halaman **Server**, ditampilkan berikut, di mana server baru Anda terdaftar.

Diperlukan beberapa menit sebelum status server baru Anda berubah menjadi **Online**. Pada saat itu, server Anda dapat melakukan operasi file untuk pengguna Anda.

**Langkah selanjutnya** — Untuk langkah selanjutnya, lanjutkan [Bekerja dengan penyedia identitas khusus](custom-idp-intro.md) untuk mengatur pengguna.

# Buat server di cloud pribadi virtual
<a name="create-server-in-vpc"></a>

Anda dapat meng-host endpoint server Anda di dalam virtual private cloud (VPC) untuk digunakan untuk mentransfer data ke dan dari bucket Amazon S3 atau sistem file Amazon EFS tanpa melalui internet publik.

**catatan**  
 Setelah 19 Mei 2021, Anda tidak akan dapat membuat server menggunakan `EndpointType=VPC_ENDPOINT` di AWS akun Anda jika akun Anda belum melakukannya sebelum 19 Mei 2021. Jika Anda telah membuat server dengan `EndpointType=VPC_ENDPOINT` di AWS akun Anda pada atau sebelum 21 Februari 2021, Anda tidak akan terpengaruh. Setelah tanggal ini, gunakan `EndpointType` =**VPC**. Untuk informasi selengkapnya, lihat [Menghentikan penggunaan VPC\$1ENDPOINT](#deprecate-vpc-endpoint).

Jika Anda menggunakan Amazon Virtual Private Cloud (Amazon VPC) untuk meng-host AWS sumber daya Anda, Anda dapat membuat koneksi pribadi antara VPC dan server. Anda kemudian dapat menggunakan server ini untuk mentransfer data melalui klien Anda ke dan dari bucket Amazon S3 Anda tanpa menggunakan alamat IP publik atau memerlukan gateway internet.

Menggunakan Amazon VPC, Anda dapat meluncurkan AWS sumber daya di jaringan virtual khusus. Anda dapat menggunakan VPC untuk mengendalikan pengaturan jaringan, seperti rentang alamat IP, subnet, tabel rute, dan gateway jaringan. Untuk informasi selengkapnya VPCs, lihat [Apa itu Amazon VPC?](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) di *Panduan Pengguna Amazon VPC*.

Di bagian selanjutnya, temukan petunjuk tentang cara membuat dan menghubungkan VPC Anda ke server. Sebagai ikhtisar, Anda melakukan ini sebagai berikut:

1. Siapkan server menggunakan titik akhir VPC.

1. Connect ke server Anda menggunakan klien yang ada di dalam VPC Anda melalui titik akhir VPC. Melakukan hal ini memungkinkan Anda untuk mentransfer data yang disimpan di bucket Amazon S3 Anda melalui klien Anda menggunakan. AWS Transfer Family Anda dapat melakukan transfer ini meskipun jaringan terputus dari internet publik.

1.  Selain itu, jika Anda memilih untuk membuat titik akhir server Anda menghadap ke internet, Anda dapat mengaitkan alamat IP Elastic dengan titik akhir Anda. Melakukan hal ini memungkinkan klien di luar VPC Anda terhubung ke server Anda. Anda dapat menggunakan grup keamanan VPC untuk mengontrol akses ke pengguna yang diautentikasi yang permintaannya hanya berasal dari alamat yang diizinkan.

**catatan**  
AWS Transfer Family mendukung titik akhir dual-stack, memungkinkan server Anda untuk berkomunikasi melalui keduanya dan. IPv4 IPv6 Untuk mengaktifkan dukungan dual-stack, pilih opsi **Enable DNS dual-stack endpoint saat membuat endpoint VPC** Anda. Perhatikan bahwa VPC dan subnet Anda harus dikonfigurasi untuk mendukung IPv6 sebelum Anda dapat menggunakan fitur ini. Dukungan dual-stack sangat berguna ketika Anda memiliki klien yang perlu terhubung menggunakan salah satu protokol.  
Untuk informasi tentang titik akhir server dual-stack (IPv4 dan IPv6), lihat. [IPv6 dukungan untuk server Transfer Family](ipv6-support.md)

**Topics**
+ [Buat endpoint server yang hanya dapat diakses dalam VPC Anda](#create-server-endpoint-in-vpc)
+ [Buat titik akhir yang menghadap ke internet untuk server Anda](#create-internet-facing-endpoint)
+ [Ubah tipe endpoint untuk server Anda](#change-server-endpoint-type)
+ [Menghentikan penggunaan VPC\$1ENDPOINT](#deprecate-vpc-endpoint)
+ [Membatasi akses endpoint VPC untuk server Transfer Family](#limit-vpc-endpoint-access)
+ [Fitur jaringan tambahan](#additional-networking-features)
+ [Memperbarui tipe endpoint AWS Transfer Family server dari VPC\$1ENDPOINT ke VPC](update-endpoint-type-vpc.md)

## Buat endpoint server yang hanya dapat diakses dalam VPC Anda
<a name="create-server-endpoint-in-vpc"></a>

Dalam prosedur berikut, Anda membuat endpoint server yang hanya dapat diakses oleh sumber daya dalam VPC Anda.

**Untuk membuat endpoint server di dalam VPC**

1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/).

1. Dari panel navigasi, pilih **Server**, lalu pilih **Buat server**.

1. **Di **Pilih protokol**, pilih satu atau beberapa protokol, lalu pilih Berikutnya.** Untuk informasi lebih lanjut tentang protokol, lihat. [Langkah 2: Buat server berkemampuan SFTP](getting-started.md#getting-started-server)

1. Di **Pilih penyedia identitas**, pilih **Layanan yang dikelola** untuk menyimpan identitas dan kunci pengguna AWS Transfer Family, lalu pilih **Berikutnya**.

   Prosedur ini menggunakan opsi yang dikelola layanan. Jika Anda memilih **Kustom**, Anda menyediakan titik akhir Amazon API Gateway dan peran AWS Identity and Access Management (IAM) untuk mengakses titik akhir. Dengan demikian, Anda dapat mengintegrasikan layanan direktori Anda untuk mengautentikasi dan mengotorisasi pengguna Anda. Untuk mempelajari selengkapnya tentang bekerja dengan penyedia identitas kustom, lihat[Bekerja dengan penyedia identitas khusus](custom-idp-intro.md).

1. Di **Pilih titik akhir**, lakukan hal berikut:

   1. Untuk tipe **Endpoint, pilih tipe** endpoint yang dihosting **VPC** untuk meng-host endpoint server Anda.

   1. Untuk **Access**, pilih **Internal** untuk membuat endpoint Anda hanya dapat diakses oleh klien menggunakan alamat IP pribadi endpoint.

      Untuk detail tentang opsi **Menghadapi Internet**, lihat[Buat titik akhir yang menghadap ke internet untuk server Anda](#create-internet-facing-endpoint). Server yang dibuat dalam VPC untuk akses internal saja tidak mendukung nama host khusus.

   1. Untuk **VPC**, pilih ID VPC yang ada atau pilih Buat VPC **untuk membuat VPC baru**.

   1. Di bagian **Availability Zones**, pilih hingga tiga Availability Zones dan subnet terkait.

   1. Di bagian **Grup Keamanan**, pilih ID grup keamanan yang ada IDs atau atau pilih **Buat grup keamanan** untuk membuat grup keamanan baru. Untuk informasi selengkapnya tentang grup keamanan, lihat [Grup keamanan untuk VPC Anda](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html) di *Panduan Pengguna Amazon Virtual Private Cloud*. Untuk membuat grup keamanan, lihat [Membuat grup keamanan](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html#CreatingSecurityGroups) di *Panduan Pengguna Amazon Virtual Private Cloud*.
**catatan**  
VPC Anda secara otomatis dilengkapi dengan grup keamanan default. Jika Anda tidak menentukan grup atau grup keamanan yang berbeda saat meluncurkan server, kami mengaitkan grup keamanan default dengan server Anda.
      + Untuk aturan masuk untuk grup keamanan, Anda dapat mengonfigurasi lalu lintas SSH untuk menggunakan port 22, 2222, 22000, atau kombinasi apa pun. Port 22 dikonfigurasi secara default. Untuk menggunakan port 2222 atau port 22000, Anda menambahkan aturan masuk ke grup keamanan Anda. Untuk jenisnya, pilih **TCP Kustom**, lalu masukkan salah satu **2222** atau **22000** untuk **rentang Port**, dan untuk sumbernya, masukkan rentang CIDR yang sama dengan yang Anda miliki untuk aturan port SSH 22 Anda.
      + Untuk aturan masuk untuk grup keamanan, konfigurasikan lalu lintas FTP dan FTPS untuk menggunakan **rentang Port** **21** untuk saluran kontrol dan **8192-8200** untuk saluran data.
**catatan**  
Anda juga dapat menggunakan port 2223 untuk klien yang membutuhkan TCP “piggy-back” ACKs, atau kemampuan untuk ack akhir dari jabat tangan 3 arah TCP untuk juga berisi data.  
Beberapa perangkat lunak klien mungkin tidak kompatibel dengan port 2223: misalnya, klien yang memerlukan server untuk mengirim String Identifikasi SFTP sebelum klien melakukannya.  
![\[Aturan masuk untuk grup keamanan sampel, menunjukkan aturan untuk SSH pada port 22 dan TCP Kustom pada port 2222.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/alternate-port-rule.png)

   1. (Opsional) Untuk **FIPS Diaktifkan**, pilih kotak centang **titik akhir Diaktifkan FIPS untuk memastikan titik** akhir sesuai dengan Standar Pemrosesan Informasi Federal (FIPS).
**catatan**  
Titik akhir berkemampuan FIPS hanya tersedia di Wilayah Amerika Utara. AWS Untuk Wilayah yang tersedia, lihat [AWS Transfer Family titik akhir dan kuota](https://docs.aws.amazon.com/general/latest/gr/transfer-service.html) di. *Referensi Umum AWS* Untuk informasi lebih lanjut tentang FIPS, lihat [Federal Information Processing Standard (FIPS)](https://aws.amazon.com/compliance/fips/) 140-2.

   1. Pilih **Berikutnya**.

1. Di **Konfigurasikan detail tambahan**, lakukan hal berikut:

   1. Untuk **CloudWatch logging**, pilih salah satu dari berikut ini untuk mengaktifkan CloudWatch pencatatan Amazon dari aktivitas pengguna Anda:
      + **Buat peran baru** untuk memungkinkan Transfer Family membuat peran IAM secara otomatis, selama Anda memiliki izin yang tepat untuk membuat peran baru. Peran IAM yang dibuat disebut`AWSTransferLoggingAccess`.
      + **Pilih peran yang ada** untuk memilih peran IAM yang ada dari akun Anda. Di bawah **Peran logging**, pilih peran. Peran IAM ini harus menyertakan kebijakan kepercayaan dengan **Layanan** yang disetel ke`transfer.amazonaws.com`.

        Untuk informasi selengkapnya tentang CloudWatch pencatatan, lihat[Konfigurasikan peran CloudWatch logging](configure-cw-logging-role.md).
**catatan**  
Anda tidak dapat melihat aktivitas pengguna akhir CloudWatch jika Anda tidak menentukan peran logging.
Jika Anda tidak ingin menyiapkan peran CloudWatch logging, pilih **Pilih peran yang ada**, tetapi jangan pilih peran logging.

   1. Untuk **opsi algoritma kriptografi**, pilih kebijakan keamanan yang berisi algoritma kriptografi yang diaktifkan untuk digunakan oleh server Anda.
**catatan**  
Secara default, kebijakan `TransferSecurityPolicy-2024-01` keamanan dilampirkan ke server Anda kecuali Anda memilih yang berbeda.

      Untuk informasi selengkapnya tentang kebijakan keamanan, lihat[Kebijakan keamanan untuk AWS Transfer Family server](security-policies.md).

   1. (Opsional: bagian ini hanya untuk memigrasikan pengguna dari server berkemampuan SFTP yang ada.) Untuk **Server Host Key, masukkan kunci** pribadi RSA ED25519, atau ECDSA yang akan digunakan untuk mengidentifikasi server Anda ketika klien terhubung dengannya melalui SFTP.

   1. (Opsional) Untuk **Tag**, untuk **Kunci** dan **Nilai**, masukkan satu atau beberapa tag sebagai pasangan nilai kunci, lalu pilih **Tambahkan** tag.

   1. Pilih **Berikutnya**.

1. Di **Tinjau dan buat**, tinjau pilihan Anda. Jika Anda:
   + Ingin mengedit salah satu dari mereka, pilih **Edit** di sebelah langkah.
**catatan**  
Anda perlu meninjau setiap langkah setelah langkah yang Anda pilih untuk diedit.
   + Tidak ada perubahan, pilih **Buat server** untuk membuat server Anda. Anda akan dibawa ke halaman **Server**, ditampilkan berikut, di mana server baru Anda terdaftar.

Diperlukan beberapa menit sebelum status server baru Anda berubah menjadi **Online**. Pada saat itu, server Anda dapat melakukan operasi file, tetapi Anda harus membuat pengguna terlebih dahulu. Untuk detail tentang membuat pengguna, lihat[Mengelola pengguna untuk titik akhir server](create-user.md).

## Buat titik akhir yang menghadap ke internet untuk server Anda
<a name="create-internet-facing-endpoint"></a>

Dalam prosedur berikut, Anda membuat endpoint server. Titik akhir ini dapat diakses melalui internet hanya untuk klien yang alamat IP sumbernya diizinkan di grup keamanan default VPC Anda. Selain itu, dengan menggunakan alamat IP Elastic untuk membuat titik akhir Anda menghadap ke internet, klien Anda dapat menggunakan alamat IP Elastic untuk memungkinkan akses ke titik akhir Anda di firewall mereka.

**catatan**  
Hanya SFTP dan FTPS yang dapat digunakan pada titik akhir yang dihosting VPC yang menghadap ke internet.

**Untuk membuat titik akhir yang menghadap ke internet**

1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/).

1. Dari panel navigasi, pilih **Server**, lalu pilih **Buat server**.

1. **Di **Pilih protokol**, pilih satu atau beberapa protokol, lalu pilih Berikutnya.** Untuk informasi lebih lanjut tentang protokol, lihat. [Langkah 2: Buat server berkemampuan SFTP](getting-started.md#getting-started-server)

1. Di **Pilih penyedia identitas**, pilih **Layanan yang dikelola** untuk menyimpan identitas dan kunci pengguna AWS Transfer Family, lalu pilih **Berikutnya**.

   Prosedur ini menggunakan opsi yang dikelola layanan. Jika Anda memilih **Kustom**, Anda menyediakan titik akhir Amazon API Gateway dan peran AWS Identity and Access Management (IAM) untuk mengakses titik akhir. Dengan demikian, Anda dapat mengintegrasikan layanan direktori Anda untuk mengautentikasi dan mengotorisasi pengguna Anda. Untuk mempelajari selengkapnya tentang bekerja dengan penyedia identitas kustom, lihat[Bekerja dengan penyedia identitas khusus](custom-idp-intro.md).

1. Di **Pilih titik akhir**, lakukan hal berikut:

   1. Untuk tipe **Endpoint, pilih tipe** endpoint yang dihosting **VPC** untuk meng-host endpoint server Anda.

   1. Untuk **Akses**, pilih **Internet Facing** untuk membuat titik akhir Anda dapat diakses oleh klien melalui internet.
**catatan**  
Ketika Anda memilih **Internet Facing**, Anda dapat memilih alamat IP Elastis yang ada di setiap subnet atau subnet. Atau Anda dapat pergi ke konsol VPC ([https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/)) untuk mengalokasikan satu atau lebih alamat IP Elastis baru. Alamat ini dapat dimiliki oleh AWS atau oleh Anda. Anda tidak dapat mengaitkan alamat IP Elastis yang sudah digunakan dengan titik akhir Anda.

   1. (Opsional) Untuk **nama host Kustom**, pilih salah satu dari berikut ini:
**catatan**  
Pelanggan AWS GovCloud (US) perlu terhubung melalui alamat IP Elastic secara langsung, atau membuat catatan nama host dalam Commercial Route 53 yang mengarah ke EIP mereka. Untuk informasi selengkapnya tentang menggunakan Route 53 untuk GovCloud titik akhir, lihat [Menyiapkan Amazon Route 53 dengan AWS GovCloud (US) sumber daya Anda](https://docs.aws.amazon.com/govcloud-us/latest/UserGuide/setting-up-route53.html) di *Panduan AWS GovCloud (US) Pengguna*. 
      + **Amazon Route 53 Alias DNS** — jika nama host yang ingin Anda gunakan terdaftar di Route 53. Anda kemudian dapat memasukkan nama host.
      + **DNS lainnya** — jika nama host yang ingin Anda gunakan terdaftar dengan penyedia DNS lain. Anda kemudian dapat memasukkan nama host.
      + **Tidak ada** - untuk menggunakan titik akhir server dan tidak menggunakan nama host khusus. Nama host server mengambil formulir`server-id.server.transfer.region.amazonaws.com`.
**catatan**  
Untuk pelanggan di AWS GovCloud (US), memilih **None** tidak membuat nama host dalam format ini.

      Untuk mempelajari lebih lanjut tentang bekerja dengan nama host kustom, lihat[Bekerja dengan nama host khusus](requirements-dns.md).

   1. Untuk **VPC**, pilih ID VPC yang ada atau pilih Buat VPC **untuk membuat VPC baru**.

   1. Di bagian **Availability Zones**, pilih hingga tiga Availability Zones dan subnet terkait. Untuk **IPv4Alamat**, pilih **alamat IP Elastis** untuk setiap subnet. Ini adalah alamat IP yang dapat digunakan klien Anda untuk memungkinkan akses ke titik akhir Anda di firewall mereka.

      **Tip:** Anda harus menggunakan subnet publik untuk Availability Zones Anda, atau terlebih dahulu menyiapkan gateway internet jika Anda ingin menggunakan subnet pribadi.

   1. Di bagian **Grup Keamanan**, pilih ID grup keamanan yang ada IDs atau atau pilih **Buat grup keamanan** untuk membuat grup keamanan baru. Untuk informasi selengkapnya tentang grup keamanan, lihat [Grup keamanan untuk VPC Anda](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html) di *Panduan Pengguna Amazon Virtual Private Cloud*. Untuk membuat grup keamanan, lihat [Membuat grup keamanan](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html#CreatingSecurityGroups) di *Panduan Pengguna Amazon Virtual Private Cloud*.
**catatan**  
VPC Anda secara otomatis dilengkapi dengan grup keamanan default. Jika Anda tidak menentukan grup atau grup keamanan yang berbeda saat meluncurkan server, kami mengaitkan grup keamanan default dengan server Anda.
      + Untuk aturan masuk untuk grup keamanan, Anda dapat mengonfigurasi lalu lintas SSH untuk menggunakan port 22, 2222, 22000, atau kombinasi apa pun. Port 22 dikonfigurasi secara default. Untuk menggunakan port 2222 atau port 22000, Anda menambahkan aturan masuk ke grup keamanan Anda. Untuk jenisnya, pilih **TCP Kustom**, lalu masukkan salah satu **2222** atau **22000** untuk **rentang Port**, dan untuk sumbernya, masukkan rentang CIDR yang sama dengan yang Anda miliki untuk aturan port SSH 22 Anda.
      + Untuk aturan masuk untuk grup keamanan, konfigurasikan lalu lintas FTPS untuk menggunakan **rentang Port** **21** untuk saluran kontrol dan **8192-8200** untuk saluran data.
**catatan**  
Anda juga dapat menggunakan port 2223 untuk klien yang membutuhkan TCP “piggy-back” ACKs, atau kemampuan untuk ack akhir dari jabat tangan 3 arah TCP untuk juga berisi data.  
Beberapa perangkat lunak klien mungkin tidak kompatibel dengan port 2223: misalnya, klien yang memerlukan server untuk mengirim String Identifikasi SFTP sebelum klien melakukannya.  
![\[Aturan masuk untuk grup keamanan sampel, menunjukkan aturan untuk SSH pada port 22 dan TCP Kustom pada port 2222.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/alternate-port-rule.png)

   1. (Opsional) Untuk **FIPS Diaktifkan**, pilih kotak centang **titik akhir Diaktifkan FIPS untuk memastikan titik** akhir sesuai dengan Standar Pemrosesan Informasi Federal (FIPS).
**catatan**  
Titik akhir berkemampuan FIPS hanya tersedia di Wilayah Amerika Utara. AWS Untuk Wilayah yang tersedia, lihat [AWS Transfer Family titik akhir dan kuota](https://docs.aws.amazon.com/general/latest/gr/transfer-service.html) di. *Referensi Umum AWS* Untuk informasi lebih lanjut tentang FIPS, lihat [Federal Information Processing Standard (FIPS)](https://aws.amazon.com/compliance/fips/) 140-2.

   1. Pilih **Berikutnya**.

1. Di **Konfigurasikan detail tambahan**, lakukan hal berikut:

   1. Untuk **CloudWatch logging**, pilih salah satu dari berikut ini untuk mengaktifkan CloudWatch pencatatan Amazon dari aktivitas pengguna Anda:
      + **Buat peran baru** untuk memungkinkan Transfer Family membuat peran IAM secara otomatis, selama Anda memiliki izin yang tepat untuk membuat peran baru. Peran IAM yang dibuat disebut`AWSTransferLoggingAccess`.
      + **Pilih peran yang ada** untuk memilih peran IAM yang ada dari akun Anda. Di bawah **Peran logging**, pilih peran. Peran IAM ini harus menyertakan kebijakan kepercayaan dengan **Layanan** yang disetel ke`transfer.amazonaws.com`.

        Untuk informasi selengkapnya tentang CloudWatch pencatatan, lihat[Konfigurasikan peran CloudWatch logging](configure-cw-logging-role.md).
**catatan**  
Anda tidak dapat melihat aktivitas pengguna akhir CloudWatch jika Anda tidak menentukan peran logging.
Jika Anda tidak ingin menyiapkan peran CloudWatch logging, pilih **Pilih peran yang ada**, tetapi jangan pilih peran logging.

   1. Untuk **opsi algoritma kriptografi**, pilih kebijakan keamanan yang berisi algoritma kriptografi yang diaktifkan untuk digunakan oleh server Anda.
**catatan**  
Secara default, kebijakan `TransferSecurityPolicy-2024-01` keamanan dilampirkan ke server Anda kecuali Anda memilih yang berbeda.

      Untuk informasi selengkapnya tentang kebijakan keamanan, lihat[Kebijakan keamanan untuk AWS Transfer Family server](security-policies.md).

   1. (Opsional: bagian ini hanya untuk memigrasikan pengguna dari server berkemampuan SFTP yang ada.) Untuk **Server Host Key, masukkan kunci** pribadi RSA ED25519, atau ECDSA yang akan digunakan untuk mengidentifikasi server Anda ketika klien terhubung dengannya melalui SFTP.

   1. (Opsional) Untuk **Tag**, untuk **Kunci** dan **Nilai**, masukkan satu atau beberapa tag sebagai pasangan nilai kunci, lalu pilih **Tambahkan** tag.

   1. Pilih **Berikutnya**.

   1.  (Opsional) Untuk **alur kerja Terkelola**, pilih alur kerja IDs (dan peran terkait) yang harus diasumsikan oleh Transfer Family saat menjalankan alur kerja. Anda dapat memilih satu alur kerja untuk dieksekusi setelah unggahan lengkap, dan satu lagi untuk mengeksekusi pada unggahan sebagian. Untuk mempelajari lebih lanjut tentang memproses file Anda dengan menggunakan alur kerja terkelola, lihat[AWS Transfer Family alur kerja terkelola](transfer-workflows.md).  
![\[Bagian Konsol alur kerja terkelola.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/workflows-addtoserver.png)

1. Di **Tinjau dan buat**, tinjau pilihan Anda. Jika Anda:
   + Ingin mengedit salah satu dari mereka, pilih **Edit** di sebelah langkah.
**catatan**  
Anda perlu meninjau setiap langkah setelah langkah yang Anda pilih untuk diedit.
   + Tidak ada perubahan, pilih **Buat server** untuk membuat server Anda. Anda akan dibawa ke halaman **Server**, ditampilkan berikut, di mana server baru Anda terdaftar.

Anda dapat memilih ID server untuk melihat pengaturan rinci dari server yang baru saja Anda buat. Setelah kolom ** IPv4 Alamat publik** diisi, alamat IP Elastis yang Anda berikan berhasil dikaitkan dengan titik akhir server Anda.

**catatan**  
Ketika server Anda di VPC sedang online, hanya subnet yang dapat dimodifikasi dan hanya melalui API. [UpdateServer](https://docs.aws.amazon.com/transfer/latest/APIReference/API_UpdateServer.html) Anda harus [menghentikan server](edit-server-config.md#edit-online-offline) untuk menambah atau mengubah alamat IP Elastis titik akhir server.

## Ubah tipe endpoint untuk server Anda
<a name="change-server-endpoint-type"></a>

Jika Anda memiliki server yang sudah ada yang dapat diakses melalui internet (yaitu, memiliki tipe titik akhir publik), Anda dapat mengubah titik akhir ke titik akhir VPC.

**catatan**  
Jika Anda memiliki server yang ada di VPC yang ditampilkan sebagai`VPC_ENDPOINT`, kami sarankan Anda memodifikasinya ke jenis titik akhir VPC yang baru. Dengan tipe endpoint baru ini, Anda tidak perlu lagi menggunakan Network Load Balancer (NLB) untuk mengaitkan alamat IP Elastic dengan endpoint server Anda. Selain itu, Anda dapat menggunakan grup keamanan VPC untuk membatasi akses ke titik akhir server Anda. Namun, Anda dapat terus menggunakan tipe `VPC_ENDPOINT` endpoint sesuai kebutuhan.

Prosedur berikut mengasumsikan bahwa Anda memiliki server yang menggunakan tipe endpoint publik saat ini atau tipe yang lebih lama`VPC_ENDPOINT`.

**Untuk mengubah tipe endpoint untuk server Anda**

1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/).

1. Di panel navigasi, pilih **Server**.

1. Pilih kotak centang server yang ingin Anda ubah tipe endpoint.
**penting**  
Anda harus menghentikan server sebelum Anda dapat mengubah titik akhirnya.

1. Untuk **Tindakan**, pilih **Berhenti**.

1. Di kotak dialog konfirmasi yang muncul, pilih **Berhenti** untuk mengonfirmasi bahwa Anda ingin menghentikan server.
**catatan**  
Sebelum melanjutkan ke langkah berikutnya, di **detail Endpoint**, tunggu **Status** server berubah menjadi **Offline**; ini bisa memakan waktu beberapa menit. Anda mungkin harus memilih **Refresh** di halaman **Server** untuk melihat perubahan status.  
Anda tidak akan dapat melakukan pengeditan apa pun sampai server **Offline**.

1. Di **detail Endpoint**, pilih **Edit**.

1. Dalam **konfigurasi Edit titik akhir**, lakukan hal berikut:

   1. Untuk **jenis Edit titik akhir**, pilih **VPC** yang dihosting.

   1. Untuk **Access**, pilih salah satu dari berikut ini:
      + **Internal** untuk membuat titik akhir Anda hanya dapat diakses oleh klien menggunakan alamat IP pribadi titik akhir.
      + **Menghadapi Internet** untuk membuat titik akhir Anda dapat diakses oleh klien melalui internet publik.
**catatan**  
Ketika Anda memilih **Internet Facing**, Anda dapat memilih alamat IP Elastis yang ada di setiap subnet atau subnet. Atau, Anda dapat pergi ke konsol VPC ([https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/)) untuk mengalokasikan satu atau lebih alamat IP Elastis baru. Alamat ini dapat dimiliki oleh AWS atau oleh Anda. Anda tidak dapat mengaitkan alamat IP Elastis yang sudah digunakan dengan titik akhir Anda.

   1. (Opsional untuk akses yang menghadap internet saja) Untuk **nama host khusus**, pilih salah satu dari berikut ini:
      + **Amazon Route 53 Alias DNS** — jika nama host yang ingin Anda gunakan terdaftar di Route 53. Anda kemudian dapat memasukkan nama host.
      + **DNS lainnya** — jika nama host yang ingin Anda gunakan terdaftar dengan penyedia DNS lain. Anda kemudian dapat memasukkan nama host.
      + **Tidak ada** - untuk menggunakan titik akhir server dan tidak menggunakan nama host khusus. Nama host server mengambil formulir`serverId.server.transfer.regionId.amazonaws.com`.

        Untuk mempelajari lebih lanjut tentang bekerja dengan nama host kustom, lihat[Bekerja dengan nama host khusus](requirements-dns.md).

   1. Untuk **VPC**, pilih ID VPC yang ada, atau pilih Buat VPC **untuk membuat VPC baru**.

   1. Di bagian **Availability Zones**, pilih hingga tiga Availability Zones dan subnet terkait. Jika **Internet Facing** dipilih, pilih juga alamat IP Elastis untuk setiap subnet.
**catatan**  
Jika Anda menginginkan maksimum tiga Availability Zone, tetapi tidak cukup tersedia, buat di konsol VPC () [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/).  
Jika Anda memodifikasi subnet atau alamat IP Elastis, server membutuhkan beberapa menit untuk memperbarui. Anda tidak dapat menyimpan perubahan Anda sampai pembaruan server selesai.

   1. Pilih **Simpan**.

1. Untuk **Tindakan**, pilih **Mulai** dan tunggu status server berubah menjadi **Online**; ini bisa memakan waktu beberapa menit.
**catatan**  
**Jika Anda mengubah tipe titik akhir publik menjadi tipe titik akhir VPC, perhatikan **bahwa** tipe Endpoint untuk server Anda telah berubah menjadi VPC.**

Grup keamanan default dilampirkan ke titik akhir. Untuk mengubah atau menambahkan grup keamanan tambahan, lihat [Membuat Grup Keamanan](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html#CreatingSecurityGroups).

## Menghentikan penggunaan VPC\$1ENDPOINT
<a name="deprecate-vpc-endpoint"></a>

AWS Transfer Family telah menghentikan kemampuan untuk membuat server dengan `EndpointType=VPC_ENDPOINT` untuk AWS akun baru. Per 19 Mei 2021, AWS akun yang tidak memiliki AWS Transfer Family server dengan tipe titik akhir tidak `VPC_ENDPOINT` akan dapat membuat server baru. `EndpointType=VPC_ENDPOINT` Jika Anda sudah memiliki server yang menggunakan tipe `VPC_ENDPOINT` endpoint, kami sarankan Anda mulai menggunakan `EndpointType=VPC` sesegera mungkin. Untuk detailnya, lihat [Memperbarui jenis titik akhir AWS Transfer Family server Anda dari VPC\$1ENDPOINT ke VPC](https://aws.amazon.com/blogs/storage/update-your-aws-transfer-family-server-endpoint-type-from-vpc_endpoint-to-vpc/).

Kami meluncurkan tipe `VPC` endpoint baru di awal tahun 2020. Untuk informasi selengkapnya, lihat [AWS Transfer Family untuk SFTP mendukung Grup Keamanan VPC dan](https://aws.amazon.com/about-aws/whats-new/2020/01/aws-transfer-for-sftp-supports-vpc-security-groups-and-elastic-ip-addresses/) alamat IP Elastis. Titik akhir baru ini lebih kaya fitur dan hemat biaya dan tidak ada PrivateLink biaya. Untuk informasi selengkapnya, lihat [harga AWS PrivateLink ](https://aws.amazon.com/privatelink/pricing/). 

Tipe endpoint ini secara fungsional setara dengan tipe endpoint sebelumnya (). `VPC_ENDPOINT` Anda dapat melampirkan alamat IP Elastis langsung ke titik akhir untuk membuatnya menghadap internet dan menggunakan grup keamanan untuk penyaringan IP sumber. Untuk informasi selengkapnya, lihat [daftar Use IP allow untuk mengamankan postingan blog server SFTP Anda AWS Transfer Family](https://aws.amazon.com/blogs/storage/use-ip-whitelisting-to-secure-your-aws-transfer-for-sftp-servers/).

Anda juga dapat meng-host titik akhir ini di lingkungan VPC bersama. Untuk informasi selengkapnya, lihat [AWS Transfer Family sekarang mendukung lingkungan VPC layanan bersama](https://aws.amazon.com/about-aws/whats-new/2020/11/aws-transfer-family-now-supports-shared-services-vpc-environments/). 

Selain SFTP, Anda dapat menggunakan VPC `EndpointType` untuk mengaktifkan FTPS dan FTP. Kami tidak berencana untuk menambahkan fitur dan FTPS/FTP dukungan ini`EndpointType=VPC_ENDPOINT`. Kami juga telah menghapus jenis titik akhir ini sebagai opsi dari AWS Transfer Family konsol. 

<a name="deprecate-vpc-endpoint.title"></a>Anda dapat mengubah jenis endpoint untuk server menggunakan konsol Transfer Family AWS CLI, API SDKs, atau CloudFormation. Untuk mengubah jenis endpoint server Anda, lihat[Memperbarui tipe endpoint AWS Transfer Family server dari VPC\$1ENDPOINT ke VPC](update-endpoint-type-vpc.md).

Jika Anda memiliki pertanyaan, hubungi AWS Dukungan atau tim AWS akun Anda.

**catatan**  
Kami tidak berencana untuk menambahkan fitur ini dan dukungan FTPS atau FTP ke = VPC\$1ENDPOINT. EndpointType Kami tidak lagi menawarkannya sebagai opsi di AWS Transfer Family Konsol. 

Jika Anda memiliki pertanyaan tambahan, Anda dapat menghubungi kami melalui AWS Dukungan atau tim akun Anda.

## Membatasi akses endpoint VPC untuk server Transfer Family
<a name="limit-vpc-endpoint-access"></a>

Saat membuat AWS Transfer Family server dengan tipe titik akhir VPC, pengguna dan kepala sekolah IAM Anda memerlukan izin untuk membuat dan menghapus titik akhir VPC. Namun, kebijakan keamanan organisasi Anda dapat membatasi izin ini. Anda dapat menggunakan kebijakan IAM untuk mengizinkan pembuatan dan penghapusan titik akhir VPC secara khusus untuk Transfer Family sambil mempertahankan batasan untuk layanan lain.

**penting**  
Kebijakan IAM berikut memungkinkan pengguna untuk membuat dan menghapus titik akhir VPC hanya untuk server Transfer Family sementara menolak operasi ini untuk layanan lain:

```
{
    "Effect": "Deny",
    "Action": [
        "ec2:CreateVpcEndpoint",
        "ec2:DeleteVpcEndpoints"
    ],
    "Resource": ["*"],
    "Condition": {
        "ForAnyValue:StringNotLike": {
            "ec2:VpceServiceName": [
                "com.amazonaws.INPUT-YOUR-REGION.transfer.server.*"
            ]
        },
        "StringNotLike": {
            "aws:PrincipalArn": [
                "arn:aws:iam::*:role/INPUT-YOUR-ROLE"
            ]
        }
    }
}
```

Ganti *INPUT-YOUR-REGION* dengan AWS Wilayah Anda (misalnya,**us-east-1**) dan *INPUT-YOUR-ROLE* dengan peran IAM yang ingin Anda berikan izin ini.

## Fitur jaringan tambahan
<a name="additional-networking-features"></a>

AWS Transfer Family menyediakan beberapa fitur jaringan canggih yang meningkatkan keamanan dan fleksibilitas saat menggunakan konfigurasi VPC:
+ **Dukungan lingkungan VPC bersama** - Anda dapat meng-host endpoint server Transfer Family Anda di lingkungan VPC bersama. Untuk informasi selengkapnya, lihat [Menggunakan titik akhir yang dihosting VPC di shared with](https://aws.amazon.com/blogs/storage/using-vpc-hosted-endpoints-in-shared-vpcs-with-aws-transfer-family/). VPCs AWS Transfer Family
+ **Otentikasi dan keamanan** - Anda dapat menggunakan Firewall Aplikasi AWS Web untuk melindungi titik akhir Amazon API Gateway Anda. Untuk informasi selengkapnya, lihat [Mengamankan AWS Transfer Family dengan Firewall Aplikasi AWS Web dan Amazon API Gateway](https://aws.amazon.com/blogs/storage/securing-aws-transfer-family-with-aws-web-application-firewall-and-amazon-api-gateway/).

# Memperbarui tipe endpoint AWS Transfer Family server dari VPC\$1ENDPOINT ke VPC
<a name="update-endpoint-type-vpc"></a>

Anda dapat menggunakan Konsol Manajemen AWS, CloudFormation, atau Transfer Family API untuk memperbarui server `EndpointType` dari `VPC_ENDPOINT` ke`VPC`. Prosedur dan contoh terperinci untuk menggunakan masing-masing metode ini untuk memperbarui jenis endpoint server disediakan di bagian berikut. Jika Anda memiliki server di beberapa AWS wilayah dan di beberapa AWS akun, Anda dapat menggunakan contoh skrip yang disediakan di bagian berikut, dengan modifikasi, untuk mengidentifikasi server menggunakan `VPC_ENDPOINT` jenis yang perlu Anda perbarui.

**Topics**
+ [Mengidentifikasi server menggunakan tipe `VPC_ENDPOINT` endpoint](#id-servers)
+ [Memperbarui tipe endpoint server menggunakan Konsol Manajemen AWS](#update-endpoint-console)
+ [Memperbarui tipe endpoint server menggunakan CloudFormation](#update-endpoint-cloudformation)
+ [Memperbarui server EndpointType menggunakan API](#update-endpoint-cli)

## Mengidentifikasi server menggunakan tipe `VPC_ENDPOINT` endpoint
<a name="id-servers"></a>

Anda dapat mengidentifikasi server mana yang `VPC_ENDPOINT` menggunakan Konsol Manajemen AWS.

**Untuk mengidentifikasi server menggunakan tipe `VPC_ENDPOINT` endpoint menggunakan konsol**

1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/).

1. Pilih **Server** di panel navigasi untuk menampilkan daftar server di akun Anda di wilayah tersebut.

1. Urutkan daftar server berdasarkan **jenis Endpoint** untuk melihat semua server yang menggunakan`VPC_ENDPOINT`.

**Untuk mengidentifikasi server yang menggunakan `VPC_ENDPOINT` di beberapa AWS Wilayah dan akun**

Jika Anda memiliki server di beberapa AWS wilayah dan di beberapa AWS akun, Anda dapat menggunakan contoh skrip berikut, dengan modifikasi, untuk mengidentifikasi server menggunakan tipe `VPC_ENDPOINT` endpoint. Skrip contoh menggunakan Amazon EC2 [DescribeRegions](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeRegions.html)dan operasi Transfer Family [https://docs.aws.amazon.com/transfer/latest/APIReference/API_ListServers.html](https://docs.aws.amazon.com/transfer/latest/APIReference/API_ListServers.html)API. Jika Anda memiliki banyak AWS akun, Anda dapat melakukan loop melalui akun Anda menggunakan Peran IAM dengan akses auditor hanya baca jika Anda mengautentikasi menggunakan profil sesi ke penyedia identitas Anda.

1. Berikut ini adalah contoh sederhana.

   ```
   import boto3
   
   profile = input("Enter the name of the AWS account you'll be working in: ")
   session = boto3.Session(profile_name=profile)
   
   ec2 = session.client("ec2")
   
   regions = ec2.describe_regions()
   
   for region in regions['Regions']:
       region_name = region['RegionName']
       if region_name=='ap-northeast-3': #https://github.com/boto/boto3/issues/1943
           continue
       transfer = session.client("transfer", region_name=region_name)
       servers = transfer.list_servers()
       for server in servers['Servers']:
          if server['EndpointType']=='VPC_ENDPOINT':
              print(server['ServerId'], region_name)
   ```

1. Setelah Anda memiliki daftar server untuk diperbarui, Anda dapat menggunakan salah satu metode yang dijelaskan di bagian berikut untuk memperbarui `EndpointType` ke`VPC`.

## Memperbarui tipe endpoint server menggunakan Konsol Manajemen AWS
<a name="update-endpoint-console"></a>

1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/).

1. Di panel navigasi, pilih **Server**.

1. Pilih kotak centang server yang ingin Anda ubah tipe endpoint.
**penting**  
Anda harus menghentikan server sebelum Anda dapat mengubah titik akhirnya.

1. Untuk **Tindakan**, pilih **Berhenti**.

1. Di kotak dialog konfirmasi yang muncul, pilih **Berhenti** untuk mengonfirmasi bahwa Anda ingin menghentikan server.
**catatan**  
Sebelum melanjutkan ke langkah berikutnya, tunggu **Status** server berubah menjadi **Offline**; ini bisa memakan waktu beberapa menit. Anda mungkin harus memilih **Refresh** di halaman **Server** untuk melihat perubahan status.

1. Setelah status berubah menjadi **Offline**, pilih server untuk menampilkan halaman detail server.

1. Di bagian **Detail titik akhir**, pilih **Edit**.

1. Pilih **VPC yang dihosting untuk tipe** **Endpoint**.

1. Pilih **Simpan**.

1. Untuk **Tindakan**, pilih **Mulai** dan tunggu status server berubah menjadi **Online**; ini bisa memakan waktu beberapa menit.

## Memperbarui tipe endpoint server menggunakan CloudFormation
<a name="update-endpoint-cloudformation"></a>

Bagian ini menjelaskan cara menggunakan CloudFormation untuk memperbarui server `EndpointType` ke`VPC`. Gunakan prosedur ini untuk server Transfer Family yang telah Anda gunakan CloudFormation. Dalam contoh ini, CloudFormation template asli yang digunakan untuk menyebarkan server Transfer Family ditampilkan sebagai berikut:

```
AWS TemplateFormatVersion: '2010-09-09'
Description: 'Create AWS Transfer Server with VPC_ENDPOINT endpoint type'
Parameters:
  SecurityGroupId:
    Type: AWS::EC2::SecurityGroup::Id
  SubnetIds:
    Type: List<AWS::EC2::Subnet::Id>
  VpcId:
    Type: AWS::EC2::VPC::Id
Resources:
  TransferServer:
    Type: AWS::Transfer::Server
    Properties:
      Domain: S3
      EndpointDetails:
        VpcEndpointId: !Ref VPCEndpoint
      EndpointType: VPC_ENDPOINT
      IdentityProviderType: SERVICE_MANAGED
      Protocols:
        - SFTP
  VPCEndpoint:
    Type: AWS::EC2::VPCEndpoint
    Properties:
      ServiceName: com.amazonaws.us-east-1.transfer.server
      SecurityGroupIds:
        - !Ref SecurityGroupId
      SubnetIds:
        - !Select [0, !Ref SubnetIds]
        - !Select [1, !Ref SubnetIds]
        - !Select [2, !Ref SubnetIds]
      VpcEndpointType: Interface
      VpcId: !Ref VpcId
```

Template diperbarui dengan perubahan berikut:
+ `EndpointType`Itu diubah menjadi`VPC`.
+ `AWS::EC2::VPCEndpoint`Sumber daya dihapus.
+ Itu `SecurityGroupId``SubnetIds`,, dan `VpcId` dipindahkan ke `EndpointDetails` bagian `AWS::Transfer::Server` sumber daya,
+ `VpcEndpointId`Properti `EndpointDetails` telah dihapus.

Template yang diperbarui terlihat sebagai berikut:

```
AWS TemplateFormatVersion: '2010-09-09'
Description: 'Create AWS Transfer Server with VPC endpoint type'
Parameters:
  SecurityGroupId:
    Type: AWS::EC2::SecurityGroup::Id
  SubnetIds:
    Type: List<AWS::EC2::Subnet::Id>
  VpcId:
    Type: AWS::EC2::VPC::Id
Resources:
  TransferServer:
    Type: AWS::Transfer::Server
    Properties:
      Domain: S3
      EndpointDetails:
        SecurityGroupIds:
          - !Ref SecurityGroupId
        SubnetIds:
          - !Select [0, !Ref SubnetIds]
          - !Select [1, !Ref SubnetIds]
          - !Select [2, !Ref SubnetIds]
        VpcId: !Ref VpcId
      EndpointType: VPC
      IdentityProviderType: SERVICE_MANAGED
      Protocols:
        - SFTP
```

**Untuk memperbarui jenis endpoint dari server Transfer Family yang digunakan CloudFormation**

1. Hentikan server yang ingin Anda perbarui menggunakan langkah-langkah berikut.

   1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/).

   1. Di panel navigasi, pilih **Server**.

   1. Pilih kotak centang server yang ingin Anda ubah tipe endpoint.
**penting**  
Anda harus menghentikan server sebelum Anda dapat mengubah titik akhirnya.

   1. Untuk **Tindakan**, pilih **Berhenti**.

   1. Di kotak dialog konfirmasi yang muncul, pilih **Berhenti** untuk mengonfirmasi bahwa Anda ingin menghentikan server.
**catatan**  
Sebelum melanjutkan ke langkah berikutnya, tunggu **Status** server berubah menjadi **Offline**; ini bisa memakan waktu beberapa menit. Anda mungkin harus memilih **Refresh** di halaman **Server** untuk melihat perubahan status.

1. Perbarui CloudFormation tumpukan

   1. Buka CloudFormation konsol di [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/).

   1. Pilih tumpukan yang digunakan untuk membuat server Transfer Family.

   1. Pilih **Perbarui**.

   1. Pilih **Ganti template saat ini**

   1. Unggah template baru. CloudFormation Ubah Set membantu Anda memahami bagaimana perubahan template akan memengaruhi sumber daya yang berjalan sebelum Anda menerapkannya. Dalam contoh ini, sumber daya server Transfer akan dimodifikasi, dan VPCEndpoint sumber daya akan dihapus. Server tipe titik akhir VPC membuat titik akhir VPC atas nama Anda, menggantikan sumber daya asli. `VPCEndpoint`

      Setelah mengunggah template baru, set perubahan akan terlihat mirip dengan yang berikut ini:  
![\[Menampilkan Ubah halaman pratinjau set untuk mengganti CloudFormation template saat ini.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/vpc-endpoint-update-cfn.png)

   1. Perbarui tumpukan.

1. Setelah pembaruan tumpukan selesai, navigasikan ke konsol manajemen Transfer Family di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/).

1. Mulai ulang server. Pilih server yang Anda perbarui CloudFormation, lalu pilih **Mulai** dari menu **Tindakan**.

## Memperbarui server EndpointType menggunakan API
<a name="update-endpoint-cli"></a>

Anda dapat menggunakan [perintah deskripsi-server](https://docs.aws.amazon.com/cli/latest/reference/transfer/update-server.html), atau AWS CLI perintah API. [UpdateServer](https://docs.aws.amazon.com/transfer/latest/APIReference/API_UpdateServer.html) Contoh skrip berikut menghentikan server Transfer Family, memperbarui EndpointType, menghapus VPC\$1ENDPOINT, dan memulai server.

```
import boto3
import time

profile = input("Enter the name of the AWS account you'll be working in: ")
region_name = input("Enter the AWS Region you're working in: ")
server_id = input("Enter the AWS Transfer Server Id: ")

session = boto3.Session(profile_name=profile)

ec2 = session.client("ec2", region_name=region_name)
transfer = session.client("transfer", region_name=region_name)

group_ids=[]

transfer_description = transfer.describe_server(ServerId=server_id)
if transfer_description['Server']['EndpointType']=='VPC_ENDPOINT':
    transfer_vpc_endpoint = transfer_description['Server']['EndpointDetails']['VpcEndpointId']
    transfer_vpc_endpoint_descriptions = ec2.describe_vpc_endpoints(VpcEndpointIds=[transfer_vpc_endpoint])
    for transfer_vpc_endpoint_description in transfer_vpc_endpoint_descriptions['VpcEndpoints']:
        subnet_ids=transfer_vpc_endpoint_description['SubnetIds']
        group_id_list=transfer_vpc_endpoint_description['Groups']
        vpc_id=transfer_vpc_endpoint_description['VpcId']
        for group_id in group_id_list:
             group_ids.append(group_id['GroupId'])
    if transfer_description['Server']['State']=='ONLINE':
        transfer_stop = transfer.stop_server(ServerId=server_id)
        print(transfer_stop)
        time.sleep(300) #safe
        transfer_update = transfer.update_server(ServerId=server_id,EndpointType='VPC',EndpointDetails={'SecurityGroupIds':group_ids,'SubnetIds':subnet_ids,'VpcId':vpc_id})
        print(transfer_update)
        time.sleep(10) 
        transfer_start = transfer.start_server(ServerId=server_id)
        print(transfer_start)
        delete_vpc_endpoint = ec2.delete_vpc_endpoints(VpcEndpointIds=[transfer_vpc_endpoint])
```

# Bekerja dengan nama host khusus
<a name="requirements-dns"></a>

*Nama host server Anda adalah nama host* yang pengguna Anda masukkan di klien mereka ketika mereka terhubung ke server Anda. Anda dapat menggunakan domain khusus yang telah Anda daftarkan untuk nama host server Anda saat Anda bekerja dengannya AWS Transfer Family. Misalnya, Anda mungkin menggunakan nama host khusus seperti`mysftpserver.mysubdomain.domain.com`.

Untuk mengarahkan lalu lintas dari domain kustom terdaftar ke titik akhir server, Anda dapat menggunakan Amazon Route 53 atau penyedia Sistem Nama Domain (DNS) apa pun. Route 53 adalah layanan DNS yang mendukung AWS Transfer Family secara native.

**Topics**
+ [Gunakan Amazon Route 53 sebagai penyedia DNS](#requirements-use-r53)
+ [Gunakan penyedia DNS lainnya](#requirements-use-alt-dns)
+ [Nama host khusus untuk server yang dibuat non-konsol](#tag-custom-hostname-cdk)

Di konsol, Anda dapat memilih salah satu opsi ini untuk menyiapkan nama host khusus:
+ **Amazon Route 53 Alias DNS** — jika nama host yang ingin Anda gunakan terdaftar di Route 53. Anda kemudian dapat memasukkan nama host.
+ **DNS lainnya** — jika nama host yang ingin Anda gunakan terdaftar dengan penyedia DNS lain. Anda kemudian dapat memasukkan nama host.
+ **Tidak ada** - untuk menggunakan titik akhir server dan tidak menggunakan nama host khusus.

Anda mengatur opsi ini ketika Anda membuat server baru atau mengedit konfigurasi server yang ada. Untuk informasi selengkapnya tentang membuat server baru, lihat[Langkah 2: Buat server berkemampuan SFTP](getting-started.md#getting-started-server). Untuk informasi selengkapnya tentang mengedit konfigurasi server yang ada, lihat[Edit detail server](edit-server-config.md).

Untuk detail selengkapnya tentang penggunaan domain Anda sendiri untuk nama host server dan cara AWS Transfer Family menggunakan Route 53, lihat bagian berikut.

## Gunakan Amazon Route 53 sebagai penyedia DNS
<a name="requirements-use-r53"></a>

Saat membuat server, Anda dapat menggunakan Amazon Route 53 sebagai penyedia DNS Anda. Sebelum Anda menggunakan domain dengan Route 53, Anda mendaftarkan domain. Untuk informasi selengkapnya, lihat [Cara kerja pendaftaran Domain](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/welcome-domain-registration.html) di *Panduan Pengembang Amazon Route 53*.

Saat Anda menggunakan Route 53 untuk menyediakan perutean DNS ke server Anda, AWS Transfer Family gunakan nama host khusus yang Anda masukkan untuk mengekstrak zona hostingnya. Saat AWS Transfer Family mengekstrak zona yang dihosting, tiga hal dapat terjadi:

1. Jika Anda baru mengenal Route 53 dan tidak memiliki zona yang dihosting, AWS Transfer Family tambahkan zona host baru dan `CNAME` catatan. Nilai `CNAME` catatan ini adalah nama host endpoint untuk server Anda. *CNAME adalah nama* domain alternatif.

1. Jika Anda memiliki zona yang dihosting di Route 53 tanpa `CNAME` catatan apa pun, AWS Transfer Family tambahkan `CNAME` catatan ke zona yang dihosting.

1. Jika layanan mendeteksi bahwa `CNAME` rekaman sudah ada di zona yang dihosting, Anda akan melihat kesalahan yang menunjukkan bahwa `CNAME` rekaman sudah ada. Dalam hal ini, ubah nilai `CNAME` catatan ke nama host server Anda. 

Untuk informasi selengkapnya tentang zona yang dihosting di Route 53, lihat [Zona yang dihosting](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/CreatingHostedZone.html) di *Panduan Pengembang Amazon Route 53*.

## Gunakan penyedia DNS lainnya
<a name="requirements-use-alt-dns"></a>

Saat membuat server, Anda juga dapat menggunakan penyedia DNS selain Amazon Route 53. Jika Anda menggunakan penyedia DNS alternatif, pastikan lalu lintas dari domain Anda diarahkan ke titik akhir server Anda.

Untuk melakukannya, atur domain Anda ke nama host endpoint untuk server.
+ Untuk IPv4 titik akhir, nama host terlihat seperti ini di konsol:

   `serverid.server.transfer.region.amazonaws.com` 
+ Untuk titik akhir tumpukan ganda, nama host terlihat seperti ini di konsol:

   `serverid.transfer-server.region.on.aws` 

**catatan**  
Jika server Anda memiliki titik akhir VPC, maka format untuk nama host berbeda dari yang dijelaskan di atas. Untuk menemukan titik akhir VPC Anda, pilih VPC di halaman detail server, lalu pilih ID titik **akhir VPC di dasbor VPC**. Endpoint adalah nama DNS pertama dari yang terdaftar.

## Nama host khusus untuk server yang dibuat non-konsol
<a name="tag-custom-hostname-cdk"></a>

Saat Anda membuat server menggunakan AWS Cloud Development Kit (AWS CDK), CloudFormation, atau melalui CLI, Anda harus menambahkan tag jika Anda ingin server tersebut memiliki nama host khusus. Saat Anda membuat server Transfer Family menggunakan konsol, penandaan dilakukan secara otomatis.

**catatan**  
Anda juga perlu membuat catatan DNS untuk mengarahkan lalu lintas dari domain Anda ke titik akhir server Anda. Untuk detailnya, lihat [Bekerja dengan catatan](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/rrsets-working-with.html) di *Panduan Pengembang Amazon Route 53*.

Gunakan kunci berikut untuk nama host kustom Anda:
+ Tambahkan `transfer:customHostname` untuk menampilkan nama host khusus di konsol.
+ Jika Anda menggunakan Route 53 sebagai penyedia DNS Anda, tambahkan`transfer:route53HostedZoneId`. Tag ini menautkan nama host kustom ke Route 53 Hosted Zone ID Anda.

Untuk menambahkan nama host khusus, keluarkan perintah CLI berikut.

```
aws transfer tag-resource --arn arn:aws:transfer:region:Akun AWS:server/server-ID --tags Key=transfer:customHostname,Value="custom-host-name"
```

Contoh:

```
aws transfer tag-resource --arn arn:aws:transfer:us-east-1:111122223333:server/s-1234567890abcdef0 --tags Key=transfer:customHostname,Value="abc.example.com"
```

Jika Anda menggunakan Route 53, keluarkan perintah berikut untuk menautkan nama host kustom Anda ke Route 53 Hosted Zone ID Anda.

```
aws transfer tag-resource --arn server-ARN:server/server-ID --tags Key=transfer:route53HostedZoneId,Value=HOSTED-ZONE-ID
```

Contoh:

```
aws transfer tag-resource --arn arn:aws:transfer:us-east-1:111122223333:server/s-1234567890abcdef0 --tags Key=transfer:route53HostedZoneId,Value=ABCDE1111222233334444
```

Dengan asumsi nilai sampel dari perintah sebelumnya, jalankan perintah berikut untuk melihat tag Anda:

```
aws transfer list-tags-for-resource --arn arn:aws:transfer:us-east-1:111122223333:server/s-1234567890abcdef0
```

```
"Tags": [
   {
      "Key": "transfer:route53HostedZoneId",
      "Value": "/hostedzone/ABCDE1111222233334444"
   },
   {
      "Key": "transfer:customHostname",
      "Value": "abc.example.com"
   }
 ]
```

**catatan**  
 Zona publik Anda yang dihosting dan mereka IDs tersedia di Amazon Route 53.   
Masuk ke Konsol Manajemen AWS dan buka konsol Route 53 di [https://console.aws.amazon.com/route53/](https://console.aws.amazon.com/route53/).

## Pertimbangan Load Balancer Jaringan FTP dan FTPS
<a name="ftp-ftps-nlb-considerations"></a>

Meskipun kami menyarankan untuk menghindari Network Load Balancer di depan AWS Transfer Family server, jika implementasi FTP atau FTPS Anda memerlukan NLB atau NAT dalam rute komunikasi dari klien, ikuti rekomendasi ini:
+ Untuk NLB, gunakan port 21 untuk pemeriksaan kesehatan, bukan port 8192-8200.
+ Untuk AWS Transfer Family server, aktifkan dimulainya kembali sesi TLS dengan pengaturan. `TlsSessionResumptionMode = ENFORCED`
**catatan**  
Ini adalah mode yang disarankan, karena memberikan keamanan yang ditingkatkan:  
Membutuhkan klien untuk menggunakan dimulainya kembali sesi TLS untuk koneksi berikutnya.
Memberikan jaminan keamanan yang lebih kuat dengan memastikan parameter enkripsi yang konsisten.
Membantu mencegah potensi serangan downgrade.
Menjaga kepatuhan terhadap standar keamanan sambil mengoptimalkan kinerja.
+ Jika memungkinkan, bermigrasi dari menggunakan NLB untuk memanfaatkan batas AWS Transfer Family kinerja dan koneksi sepenuhnya.

Untuk panduan tambahan tentang alternatif NLB, hubungi tim Manajemen AWS Transfer Family Produk melalui Support AWS . Untuk informasi lebih lanjut tentang meningkatkan postur keamanan Anda, lihat posting blog [Enam tips untuk meningkatkan keamanan AWS Transfer Family server Anda](https://aws.amazon.com/blogs/security/six-tips-to-improve-the-security-of-your-aws-transfer-family-server/).

 Panduan keamanan untuk NLBs disediakan di[Hindari menempatkan NLBs dan NATs di depan AWS Transfer Family server](infrastructure-security.md#nlb-considerations). 

# Mentransfer file melalui titik akhir server menggunakan klien
<a name="transfer-file"></a>

Anda mentransfer file melalui AWS Transfer Family layanan dengan menentukan operasi transfer di klien. AWS Transfer Family mendukung klien berikut:
+ Kami mendukung versi 3 dari protokol SFTP.
+ OpenSSH (macOS dan Linux)
**catatan**  
Klien ini hanya berfungsi dengan server yang diaktifkan untuk Secure Shell (SSH) File Transfer Protocol (SFTP).
+ WinSCP (hanya Microsoft Windows)
+ Cyberduck (Windows, macOS, dan Linux)
+ FileZilla (Windows, macOS, dan Linux)

Batasan berikut berlaku untuk setiap klien:
+ Protokol SCP tidak didukung, karena dianggap tidak aman. Anda dapat menggunakan perintah `scp` OpenSSH seperti yang dijelaskan dalam. [Menggunakan `scp` perintah](#openssh-scp)
+ Jumlah maksimum sesi SFTP bersamaan, multipleks, per koneksi adalah 10.
+ Untuk koneksi idle, nilai batas waktu adalah 1800 detik (30 menit) untuk semua protokol (). SFTP/FTP/FTPS Jika tidak ada aktivitas setelah periode ini, klien mungkin terputus. Untuk koneksi yang tidak responsif:
  + SFTP memiliki batas waktu 300 detik (5 menit) ketika klien benar-benar tidak responsif.
  + FTPS dan FTP memiliki batas waktu kurang lebih 10 menit yang tidak responsif yang ditangani oleh perpustakaan yang mendasarinya.
+ Amazon S3 dan Amazon EFS (karena NFSv4 protokol) memerlukan nama file dalam pengkodean UTF-8. Menggunakan pengkodean yang berbeda dapat menyebabkan hasil yang tidak terduga. Untuk Amazon S3, lihat Pedoman [penamaan kunci objek](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-guidelines).
+ Untuk Protokol Transfer File melalui SSL (FTPS), hanya mode Eksplisit yang didukung. Mode implisit tidak didukung.
+ Untuk File Transfer Protocol (FTP) dan FTPS, hanya mode Pasif yang didukung.
+ Untuk FTP dan FTPS, hanya mode STREAM yang didukung.
+ Untuk FTP dan FTPS, hanya Image/Binary mode yang didukung.
+ Untuk FTP dan FTPS, TLS - PROT C (tidak dilindungi) TLS untuk koneksi data adalah default tetapi PROT C tidak didukung dalam protokol FTPS. AWS Transfer Family Jadi untuk FTPS, Anda perlu mengeluarkan PROT P agar operasi data Anda dapat diterima.
+ Jika Anda menggunakan Amazon S3 untuk penyimpanan server Anda, dan jika klien Anda berisi opsi untuk menggunakan beberapa koneksi untuk satu transfer, pastikan untuk menonaktifkan opsi tersebut. Jika tidak, unggahan file besar dapat gagal dengan cara yang tidak terduga. Perhatikan bahwa jika Anda menggunakan Amazon EFS sebagai backend penyimpanan, EFS *mendukung* beberapa koneksi untuk satu transfer.

Berikut ini adalah daftar perintah yang tersedia untuk FTP dan FTPS:


| Perintah yang tersedia | 
| --- | 
| ABOR | PRESTASI | MLST | LULUS | RETR | BESAR | 
| AUTENTIKASI | LANG | MKD | PASV | RMD | STOU | 
| CDUP | DAFTAR | MODE | PBSZ | RNFR | STRU | 
| CWD | MDTM | NLST | PROT | RNTO | SYST | 
| DELE | MFMT | NOOP | PWD | UKURAN | TIPE | 
| EPSV | MLSD | MEMILIH | QUIT (BERHENTI) | STAT | USER | 

**catatan**  
APPE tidak didukung.

Untuk SFTP, operasi berikut saat ini tidak didukung untuk pengguna yang menggunakan direktori home logis pada server yang menggunakan Amazon Elastic File System (Amazon EFS).


| Perintah SFTP yang tidak didukung | 
| --- | 
| SSH\$1FXP\$1READLINK | SSH\$1FXP\$1SYMLINK | SSH\$1FXP\$1STAT ketika file yang diminta adalah symlink | SSH\$1FXP\$1REALPATH ketika jalur yang diminta berisi komponen symlink | 

**Hasilkan key pair publik-pribadi**  
 Sebelum Anda dapat mentransfer file, Anda harus memiliki key pair publik-pribadi yang tersedia. Jika sebelumnya Anda belum membuat key pair, lihat[Hasilkan kunci SSH untuk pengguna yang dikelola layanan](sshkeygen.md). 

**Topics**
+ [SFTP/FTPS/FTPPerintah yang Tersedia](#transfer-sftp-commands)
+ [Temukan titik akhir Amazon VPC Anda](#find-vpc-endpoint)
+ [Hindari `setstat` kesalahan](#avoid-set-stat)
+ [Gunakan OpenSSH](#openssh)
+ [Gunakan WinSCP](#winscp)
+ [Gunakan Cyberduck](#cyberduck)
+ [Gunakan FileZilla](#filezilla)
+ [Gunakan klien Perl](#using-clients-with-perl-modules)
+ [Gunakan LFTP](#using-client-lftp)
+ [Pemrosesan unggahan pasca](#post-processing-upload)
+ [Pesan SFTP](#sftp-transfer-activity-types)

## SFTP/FTPS/FTPPerintah yang Tersedia
<a name="transfer-sftp-commands"></a>

Tabel berikut menjelaskan perintah yang tersedia untuk AWS Transfer Family, untuk protokol SFTP, FTPS, dan FTP. 

**catatan**  
Tabel menyebutkan *file* dan *direktori* untuk Amazon S3, yang hanya mendukung bucket dan objek: tidak ada hierarki. Namun, Anda dapat menggunakan awalan dalam nama kunci objek untuk menyiratkan hierarki dan mengatur data Anda dengan cara yang mirip dengan folder. Perilaku ini dijelaskan dalam [Bekerja dengan metadata objek](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingMetadata.html) di *Panduan Pengguna Layanan Penyimpanan Sederhana Amazon*.


**SFTP/FTPS/FTPPerintah**  

| Perintah | Amazon S3 | Amazon EFS | 
| --- | --- | --- | 
| cd | Didukung | Didukung | 
| chgrp | Tidak Support  | Didukung (rootatau owner hanya) | 
| chmod | Tidak didukung | Didukung (roothanya) | 
| chmtime | Tidak didukung | Didukung | 
| chown | Tidak Support | Didukung (roothanya) | 
| get | Didukung | Didukung (termasuk menyelesaikan tautan simbolik) | 
| ln -s | Tidak didukung  | Didukung | 
| ls/dir | Didukung | Didukung | 
| mkdir | Didukung | Didukung | 
| put | Didukung | Didukung | 
| pwd | Didukung | Didukung | 
| rename |  Didukung hanya untuk file  Mengganti nama yang akan menimpa file yang ada tidak didukung.   | Didukung  Mengganti nama yang akan menimpa file atau direktori yang ada tidak didukung.  | 
| rm | Didukung | Didukung | 
| rmdir | Didukung (hanya direktori kosong) | Didukung | 
| version | Didukung | Didukung | 

## Temukan titik akhir Amazon VPC Anda
<a name="find-vpc-endpoint"></a>

Jika tipe endpoint untuk server Transfer Family Anda adalah VPC, mengidentifikasi titik akhir yang akan digunakan untuk mentransfer file tidaklah mudah. Dalam hal ini, gunakan prosedur berikut untuk menemukan titik akhir VPC Amazon Anda. 

**Untuk menemukan titik akhir VPC Amazon Anda**

1. Arahkan ke halaman detail server Anda.

1. **Di panel **Detail titik akhir**, pilih VPC.**  
![\[\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/server-details-endpoint-vpc.png)

1. Di dasbor Amazon VPC, pilih ID titik akhir **VPC**.

1. Dalam daftar **nama DNS**, titik akhir server Anda adalah yang pertama terdaftar.  
![\[\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/server-details-endpoint-vpc-2.png)

## Hindari `setstat` kesalahan
<a name="avoid-set-stat"></a>

Beberapa klien transfer file SFTP dapat mencoba mengubah atribut file jarak jauh, termasuk stempel waktu dan izin, menggunakan perintah, seperti SETSTAT saat mengunggah file. Namun, perintah ini tidak kompatibel dengan sistem penyimpanan objek, seperti Amazon S3. Karena ketidakcocokan ini, unggahan file dari klien ini dapat mengakibatkan kesalahan bahkan ketika file tersebut berhasil diunggah.
+ Saat Anda memanggil `UpdateServer` API `CreateServer` atau, gunakan `ProtocolDetails` opsi `SetStatOption` untuk mengabaikan kesalahan yang dihasilkan saat klien mencoba menggunakan SETSTAT pada file yang Anda unggah ke bucket S3.
+ Tetapkan nilainya `ENABLE_NO_OP` agar server Transfer Family mengabaikan perintah SETSTAT, dan unggah file tanpa perlu membuat perubahan apa pun pada klien SFTP Anda.
+ Perhatikan bahwa meskipun `SetStatOption` `ENABLE_NO_OP` pengaturan mengabaikan kesalahan, *itu* menghasilkan entri CloudWatch log di Log, sehingga Anda dapat menentukan kapan klien melakukan panggilan SETSTAT.

 Untuk detail API untuk opsi ini, lihat [ProtocolDetails](https://docs.aws.amazon.com/transfer/latest/APIReference/API_ProtocolDetails.html).

## Gunakan OpenSSH
<a name="openssh"></a>

Bagian ini berisi instruksi untuk mentransfer file dari baris perintah menggunakan OpenSSH.

**catatan**  
Klien ini hanya berfungsi dengan server berkemampuan SFTP.

**Topics**
+ [Menggunakan OpenSSH](#openssh-use)
+ [Menggunakan `scp` perintah](#openssh-scp)

### Menggunakan OpenSSH
<a name="openssh-use"></a>

**Untuk mentransfer file AWS Transfer Family menggunakan utilitas baris perintah OpenSSH**

1. Di Linux, macOS, atau Windows, buka terminal perintah.

1. Pada prompt, masukkan perintah berikut: 

   `sftp -i transfer-key sftp_user@service_endpoint`

   Pada perintah sebelumnya, `sftp_user` adalah nama pengguna dan `transfer-key` merupakan kunci pribadi SSH. Di sini, `service_endpoint` adalah titik akhir server seperti yang ditunjukkan di AWS Transfer Family konsol untuk server yang dipilih.
**catatan**  
Perintah ini menggunakan pengaturan yang ada di `ssh_config` file default. Kecuali Anda sebelumnya telah mengedit file ini, SFTP menggunakan port 22. Anda dapat menentukan port yang berbeda (misalnya 2222) dengan menambahkan **-P** bendera ke perintah, sebagai berikut.  

   ```
   sftp -P 2222 -i transfer-key sftp_user@service_endpoint
   ```
Atau, jika Anda selalu ingin menggunakan port 2222 atau port 22000, Anda dapat memperbarui port default Anda di file Anda`ssh_config`.

   `sftp`Prompt akan muncul.

1.  (Opsional) Untuk melihat direktori home pengguna, masukkan perintah berikut pada `sftp` prompt: 

   `pwd` 

1. Untuk mengunggah file dari sistem file Anda ke server Transfer Family, gunakan `put` perintah. Misalnya, untuk mengunggah `hello.txt` (dengan asumsi bahwa file ada di direktori Anda saat ini di sistem file Anda), jalankan perintah berikut pada `sftp` prompt: 

   `put hello.txt` 

   Pesan yang mirip dengan berikut ini muncul, menunjukkan bahwa transfer file sedang berlangsung, atau selesai.

   `Uploading hello.txt to /amzn-s3-demo-bucket/home/sftp_user/hello.txt`

   `hello.txt 100% 127 0.1KB/s 00:00`

**catatan**  
Setelah server Anda dibuat, diperlukan beberapa menit agar nama host endpoint server dapat diselesaikan oleh layanan DNS di lingkungan Anda.

### Menggunakan `scp` perintah
<a name="openssh-scp"></a>

Transfer Family tidak mendukung protokol SCP. Namun, Anda dapat menggunakan perintah `scp` OpenSSH jika Anda membutuhkan fungsi ini.

Rekomendasi untuk menggunakan SCP melalui SFTP adalah menggunakan OpenSSH versi 9.0 atau yang lebih baru. Di OpenSSH versi 9 dan yang lebih baru, `scp` perintah default menggunakan protokol SFTP untuk transfer file, bukan protokol SCP lama.

**penting**  
Pastikan server Transfer Family Anda telah dikonfigurasi untuk menggunakan akses direktori yang dioptimalkan S3.

## Gunakan WinSCP
<a name="winscp"></a>

Gunakan instruksi yang mengikuti untuk mentransfer file dari baris perintah menggunakan WinSCP.

**catatan**  
Jika Anda menggunakan WinSCP 5.19, Anda dapat langsung terhubung ke Amazon S3 menggunakan kredensyal dan file Anda. AWS upload/download Untuk detail selengkapnya, lihat [Menghubungkan ke layanan Amazon S3](https://winscp.net/eng/docs/guide_amazon_s3).

**Untuk mentransfer file AWS Transfer Family menggunakan WinSCP**

1. Buka klien WinSCP.

1. **Di kotak dialog **Login**, untuk **protokol File**, pilih protokol: **SFTP atau FTP**.**

   Jika Anda memilih FTP, untuk **Enkripsi**, pilih salah satu dari berikut ini:
   + **Tidak ada enkripsi** untuk FTP
   + **Enkripsi eksplisit TLS/SSL** untuk FTPS

1. Untuk **nama Host**, masukkan endpoint server Anda. Titik akhir server terletak di halaman **detail Server**. Untuk informasi selengkapnya, lihat [Lihat detail server SFTP, FTPS, dan FTP](configuring-servers-view-info.md).

   Jika server Anda menggunakan titik akhir VPC, lihat. [Temukan titik akhir Amazon VPC Anda](#find-vpc-endpoint)

1. Untuk **nomor Port**, masukkan yang berikut ini:
   + **22**untuk SFTP
   + **21**untuk FTP/FTPS

1. Untuk **nama Pengguna**, masukkan nama untuk pengguna yang Anda buat untuk penyedia identitas spesifik Anda.

   **Tip:** Nama pengguna harus menjadi salah satu pengguna yang Anda buat atau konfigurasikan untuk penyedia identitas Anda. AWS Transfer Family menyediakan penyedia identitas berikut:
   + [Bekerja dengan pengguna yang dikelola layanan](service-managed-users.md)
   + [Menggunakan AWS Directory Service untuk Microsoft Active Directory](directory-services-users.md)
   + [Bekerja dengan penyedia identitas khusus](custom-idp-intro.md)

1. Pilih **Advanced** untuk membuka kotak dialog **Advanced Site Settings**. Di bagian **SSH**, pilih **Otentikasi**.

1. Untuk **file kunci pribadi**, telusuri dan pilih file kunci pribadi SSH dari sistem file Anda.

   **Jika WinSCP menawarkan untuk mengonversi kunci pribadi SSH Anda ke format PPK, pilih OK.**

1. Pilih **OK** untuk kembali ke kotak dialog **Login**, lalu pilih **Simpan**.

1. Dalam kotak dialog **Simpan sesi sebagai situs**, pilih **OK** untuk menyelesaikan pengaturan koneksi Anda.

1. Di kotak dialog **Login**, pilih **Tools**, lalu pilih **Preferences**.

1. Di kotak dialog **Preferensi**, untuk **Transfer**, pilih **Endurance**.

   **Untuk opsi **Aktifkan transfer resume/transfer ke nama file sementara untuk** opsi, pilih Nonaktifkan.**
**penting**  
Jika Anda membiarkan opsi ini diaktifkan, ini meningkatkan biaya unggahan, secara substansional mengurangi kinerja unggahan. Hal ini juga dapat menyebabkan kegagalan upload file besar.

1. Untuk **Transfer**, pilih **Latar Belakang**, dan kosongkan kotak centang **Gunakan beberapa koneksi untuk transfer tunggal**.

   **Tip:** Jika Anda membiarkan opsi ini dipilih, unggahan file besar dapat gagal dengan cara yang tidak terduga. Misalnya, unggahan multipart yatim piatu yang dikenakan biaya Amazon S3 dapat dibuat. Korupsi data senyap juga dapat terjadi.

1. Lakukan transfer file Anda.

   Anda dapat menggunakan drag-and-drop metode untuk menyalin file antara target dan jendela sumber. Anda dapat menggunakan ikon bilah alat untuk mengunggah, mengunduh, menghapus, mengedit, atau memodifikasi properti file di WinSCP.

**catatan**  
Catatan ini tidak berlaku jika Anda menggunakan Amazon EFS untuk penyimpanan.  
Perintah yang mencoba mengubah atribut file jarak jauh, termasuk stempel waktu, tidak kompatibel dengan sistem penyimpanan objek seperti Amazon S3. Oleh karena itu, jika Anda menggunakan Amazon S3 untuk penyimpanan, pastikan untuk menonaktifkan pengaturan stempel waktu WinSCP (atau gunakan `SetStatOption` seperti yang dijelaskan dalam) sebelum Anda melakukan transfer file. [Hindari `setstat` kesalahan](#avoid-set-stat) **Untuk melakukannya, di kotak dialog **WinSCP Transfer** settings, nonaktifkan opsi **Setel** izin upload dan opsi Preserve timestamp common.**

## Gunakan Cyberduck
<a name="cyberduck"></a>

Gunakan instruksi yang mengikuti untuk mentransfer file dari baris perintah menggunakan Cyberduck.

**Untuk mentransfer file AWS Transfer Family menggunakan Cyberduck**

1. Buka klien [Cyberduck](https://cyberduck.io/download/).

1. Pilih **Buka Koneksi**.

1. **Dalam kotak dialog **Open Connection**, pilih protokol: **SFTP (SSH File Transfer Protocol), FTP-SSL (Explicit AUTH TLS)****, atau FTP (File Transfer Protocol)**.**

1. Untuk **Server**, masukkan endpoint server Anda. Titik akhir server terletak di halaman **detail Server**. Untuk informasi selengkapnya, lihat [Lihat detail server SFTP, FTPS, dan FTP](configuring-servers-view-info.md).

   Jika server Anda menggunakan titik akhir VPC, lihat. [Temukan titik akhir Amazon VPC Anda](#find-vpc-endpoint)

1. Untuk **nomor Port**, masukkan yang berikut ini:
   + **22**untuk SFTP
   + **21**untuk FTP/FTPS

1. Untuk **Nama Pengguna**, masukkan nama untuk pengguna yang Anda buat[Mengelola pengguna untuk titik akhir server](create-user.md).

1. Jika SFTP dipilih, untuk **SSH Private Key, pilih atau masukkan kunci pribadi SSH**.

1. Pilih **Hubungkan**.

1. Lakukan transfer file Anda.

   Tergantung di mana file Anda berada, lakukan salah satu hal berikut:
   + Di direktori lokal Anda (sumber), pilih file yang ingin Anda transfer, dan seret dan jatuhkan ke direktori Amazon S3 (target).
   + Di direktori Amazon S3 (sumber), pilih file yang ingin Anda transfer, dan seret dan jatuhkan ke direktori lokal Anda (target).

## Gunakan FileZilla
<a name="filezilla"></a>

Gunakan instruksi yang mengikuti untuk mentransfer file menggunakan FileZilla.

**FileZilla Untuk mengatur transfer file**

1. Buka FileZilla klien.

1. Pilih **File**, lalu pilih **Site Manager**.

1. Di kotak dialog **Pengelola Situs**, pilih **Situs baru**.

1. **Pada tab **Umum**, untuk **Protokol**, pilih protokol: **SFTP atau FTP**.**

   Jika Anda memilih FTP, untuk **Enkripsi**, pilih salah satu dari berikut ini:
   + **Hanya gunakan FTP biasa (tidak aman)** — untuk FTP
   + **Gunakan FTP eksplisit melalui TLS jika tersedia** - untuk FTPS

1. Untuk **nama Host**, masukkan protokol yang Anda gunakan, diikuti oleh endpoint server Anda. Titik akhir server terletak di halaman **detail Server**. Untuk informasi selengkapnya, lihat [Lihat detail server SFTP, FTPS, dan FTP](configuring-servers-view-info.md).
   + Jika Anda menggunakan SFTP, masukkan: `sftp://hostname`
   +  Jika Anda menggunakan FTPS, masukkan: `ftps://hostname` 

   Pastikan untuk mengganti *hostname* dengan endpoint server Anda yang sebenarnya.

   Jika server Anda menggunakan titik akhir VPC, lihat. [Temukan titik akhir Amazon VPC Anda](#find-vpc-endpoint)

1. Untuk **nomor Port**, masukkan yang berikut ini:
   + **22**untuk SFTP
   + **21**untuk FTP/FTPS

1. **Jika SFTP dipilih, untuk **Jenis Logon**, pilih File kunci.**

   Untuk **file Kunci**, pilih atau masukkan kunci pribadi SSH.

1. Untuk **Pengguna**, masukkan nama untuk pengguna yang Anda buat[Mengelola pengguna untuk titik akhir server](create-user.md).

1. Pilih **Hubungkan**.

1. Lakukan transfer file Anda.
**catatan**  
Jika Anda mengganggu transfer file yang sedang berlangsung, AWS Transfer Family mungkin menulis sebagian objek di bucket Amazon S3 Anda. Jika Anda mengganggu unggahan, periksa apakah ukuran file di bucket Amazon S3 cocok dengan ukuran file objek sumber sebelum melanjutkan.

## Gunakan klien Perl
<a name="using-clients-with-perl-modules"></a>

Jika Anda menggunakan klien NET::SFTP::Foreign perl, Anda harus mengatur `queue_size` ke`1`. Contoh:

`my $sftp = Net::SFTP::Foreign->new('user@s-12345.server.transfer.us-east-2.amazonaws.com', queue_size => 1);`

**catatan**  
 [Solusi ini diperlukan untuk revisi sebelum 1.92.02. `Net::SFTP::Foreign`](https://metacpan.org/changes/release/SALVA/Net-SFTP-Foreign-1.93#L12) 

## Gunakan LFTP
<a name="using-client-lftp"></a>

LFTP adalah klien FTP gratis yang memungkinkan pengguna untuk melakukan transfer file melalui antarmuka baris perintah dari sebagian besar mesin Linux.

 Untuk unduhan file besar, LFTP memiliki masalah yang diketahui dengan paket yang rusak, menyebabkan transfer file gagal.

## Pemrosesan unggahan pasca
<a name="post-processing-upload"></a>

Anda dapat melihat informasi pemrosesan unggahan posting termasuk metadata objek Amazon S3 dan pemberitahuan acara.

**Topics**
+ [Metadata objek Amazon S3](#post-processing-S3-object-metadata)
+ [Pemberitahuan acara Amazon S3](#post-processing-S3-event-notifications)

### Metadata objek Amazon S3
<a name="post-processing-S3-object-metadata"></a>

Sebagai bagian dari metadata objek Anda, Anda melihat kunci yang disebut `x-amz-meta-user-agent` yang nilainya `AWSTransfer` dan `x-amz-meta-user-agent-id` nilainya. `username@server-id` `username`Ini adalah pengguna Transfer Family yang mengunggah file dan `server-id` merupakan server yang digunakan untuk mengunggah. Informasi ini dapat diakses menggunakan [HeadObject](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectHEAD.html)operasi pada objek S3 di dalam fungsi Lambda Anda.

![\[Layar Metadata menampilkan informasi tentang metadata objek Amazon S3 untuk. AWS Transfer Family\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/s3-object-metadata.png)


### Pemberitahuan acara Amazon S3
<a name="post-processing-S3-event-notifications"></a>

Saat objek diunggah ke bucket S3 Anda menggunakan Transfer Family, `RoleSessionName` terdapat dalam bidang Peminta dalam struktur notifikasi [peristiwa S3](https://docs.aws.amazon.com/AmazonS3/latest/dev/notification-content-structure.html) sebagai. `[AWS:Role Unique Identifier]/username.sessionid@server-id` Misalnya, berikut ini adalah konten untuk bidang Peminta sampel dari log akses S3 untuk file yang disalin ke bucket S3.

`arn:aws:sts::AWS-Account-ID:assumed-role/IamRoleName/username.sessionid@server-id`

Di bidang Pemohon di atas, ini menunjukkan Peran IAM yang disebut. `IamRoleName` Untuk informasi selengkapnya tentang mengonfigurasi notifikasi peristiwa S3, lihat [Mengonfigurasi notifikasi peristiwa Amazon S3 di Panduan Pengembang Layanan](https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) Penyimpanan *Sederhana Amazon*. *Untuk informasi selengkapnya tentang pengidentifikasi unik peran AWS Identity and Access Management (IAM), lihat [Pengidentifikasi unik di Panduan](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-unique-ids) Pengguna.AWS Identity and Access Management *

## Pesan SFTP
<a name="sftp-transfer-activity-types"></a>

Bagian ini menjelaskan pesan sisi klien yang mungkin Anda terima selama atau setelah transfer file SFTP Anda saat menggunakan server Transfer Family. Untuk informasi lebih lanjut tentang acara SFTP apa pun, periksa log klien SFTP Anda. Anda dapat menggunakan informasi tersebut untuk memecahkan masalah kesalahan apa pun, atau meneruskan informasi tersebut ke tim jaringan Anda untuk bantuan mereka dalam mengidentifikasi masalah.


**Pesan sisi klien SFTP**  

| Aktifitas | Deskripsi | 
| --- | --- | 
| AUTH\$1FAILURE | Pengguna gagal otentikasi. Ini bisa berupa kegagalan apa pun dari penyedia identitas khusus atau pengguna yang dikelola layanan. Rincian dalam acara tersebut membantu memperjelas akar penyebab kegagalan. | 
| TUTUP | Menunjukkan bahwa file atau direktori yang dibuka berhasil ditutup. | 
| TERHUBUNG/TERPUTUS | Menunjukkan keberhasilan koneksi normal dan pemutusan. | 
| CREATE\$1SYMLINK  | Tautan simbolis dibuat (berhasil atau tidak berhasil). | 
| DELETE | Sebuah file telah dihapus (berhasil atau tidak berhasil). | 
| ERROR | Kesalahan umum yang tidak terduga. Deskripsi terkait berisi informasi yang dapat membantu Anda atau administrator jaringan Anda untuk mengidentifikasi masalah tertentu. | 
| EXIT\$1REASON | Dipancarkan ketika kesalahan tak terduga menyebabkan penghentian sesi SFTP Anda. Pesan yang terkait dengan peristiwa tersebut menjelaskan penyebabnya. | 
| MKDIR | Direktori dibuat (berhasil atau tidak berhasil). | 
| BUKA | File dibuka untuk dibaca atau ditulis (berhasil atau tidak berhasil) | 
| PARSIAL\$1CLOSE | Klien terputus dari server saat file masih terbuka tanpa pesan CLOSE diterima. Transfer Family menyimpan bagian file yang diterima (yang sebenarnya bisa menjadi file lengkap) dan memancarkan acara PARTIAL\$1CLOSE untuk mengingatkan pelanggan tentang masalah tersebut. Integrasi alur kerja juga menerima onPartialClose acara untuk menangani file dengan tepat. | 
| GANTI NAMA | File diganti namanya (berhasil atau tidak berhasil) | 
| RMDIR | Direktori telah dihapus (berhasil atau tidak berhasil) | 
| SETSTAT |  Atribut file diubah (berhasil atau tidak berhasil).  Transfer Family tidak mendukung SETSTAT jika Anda menggunakan Amazon S3 untuk penyimpanan. [Hindari `setstat` kesalahan](#avoid-set-stat)Bagian ini memberikan detail tentang cara menghindari `SetStat` kesalahan, dengan mematikan pengaturan. Ini menghindari Anda menerima`fail unsupported error`: sebagai gantinya, Anda menerima `success but do nothing` pesan.   | 
| TLS\$1RESUME\$1FAILURE  | Server dikonfigurasi untuk menegakkan Dimulainya Kembali Sesi TLS dan klien tidak mendukungnya. | 

# Mengelola pengguna untuk titik akhir server
<a name="create-user"></a>

Di bagian berikut, Anda dapat menemukan informasi tentang cara menambahkan pengguna yang menggunakan AWS Transfer Family, AWS Directory Service for Microsoft Active Directory atau penyedia identitas khusus.

Sebagai bagian dari properti setiap pengguna, Anda juga menyimpan kunci publik Secure Shell (SSH) pengguna tersebut. Melakukan hal itu diperlukan untuk otentikasi berbasis kunci. Kunci pribadi disimpan secara lokal di komputer pengguna Anda. Ketika pengguna Anda mengirim permintaan otentikasi ke server Anda dengan menggunakan klien, server Anda terlebih dahulu mengonfirmasi bahwa pengguna memiliki akses ke kunci pribadi SSH terkait. Server kemudian berhasil mengotentikasi pengguna.

**catatan**  
Untuk penerapan otomatis dan pengelolaan pengguna dengan beberapa kunci SSH, lihat. [Modul Transfer Family Terraform](terraform.md)

Selain itu, Anda menentukan direktori home pengguna, atau direktori landing, dan menetapkan peran AWS Identity and Access Management (IAM) kepada pengguna. Secara opsional, Anda dapat memberikan kebijakan sesi untuk membatasi akses pengguna hanya ke direktori home bucket Amazon S3 Anda.

**penting**  
AWS Transfer Family memblokir nama pengguna yang panjangnya 1 atau 2 karakter dari otentikasi ke server SFTP. Selain itu, kami juga memblokir nama `root` pengguna.  
Alasan di balik ini adalah karena volume besar upaya login berbahaya oleh pemindai kata sandi.

## Amazon EFS vs Amazon S3
<a name="efs-vs-s3-users"></a>

Karakteristik masing-masing opsi penyimpanan:
+ Untuk membatasi akses: Amazon S3 mendukung kebijakan sesi; Amazon EFS mendukung pengguna POSIX, grup, dan grup sekunder IDs
+  Kedua public/private kunci dukungan 
+  Keduanya mendukung direktori rumah 
+  Keduanya mendukung direktori logis 
**catatan**  
 Untuk Amazon S3, sebagian besar dukungan untuk direktori logis adalah melalui API/CLI. Anda dapat menggunakan kotak centang **Dibatasi** di konsol untuk mengunci pengguna ke direktori home mereka, tetapi Anda tidak dapat menentukan struktur direktori virtual. 

## Direktori logis
<a name="logical-dir-users"></a>

Jika Anda menentukan nilai direktori logis untuk pengguna Anda, parameter yang Anda gunakan tergantung pada jenis pengguna.
+ Untuk pengguna yang dikelola layanan, berikan nilai direktori logis di. `HomeDirectoryMappings`
+ Untuk pengguna penyedia identitas kustom, berikan nilai direktori logis di`HomeDirectoryDetails`.

AWS Transfer Family mendukung menentukan HomeDirectory nilai saat menggunakan LOGICAL HomeDirectoryType. Ini berlaku untuk pengguna yang Dikelola Layanan, akses Direktori Aktif, dan implementasi Penyedia Identitas Kustom HomeDirectoryDetails yang disediakan dalam respons.

**penting**  
Saat menentukan HomeDirectory dengan LOGICAL HomeDirectoryType, nilainya harus dipetakan ke salah satu pemetaan direktori logis Anda. Layanan memvalidasi ini selama pembuatan dan pembaruan pengguna untuk mencegah konfigurasi yang tidak akan berfungsi.

### Perilaku default
<a name="logical-dir-default"></a>

Secara default, jika dibiarkan tidak ditentukan, HomeDirectory diatur ke “/” untuk mode LOGICAL. Perilaku ini tidak berubah dan tetap kompatibel dengan definisi pengguna yang ada.
+ Pastikan untuk memetakan Anda HomeDirectory ke *Entri* dan bukan *Target*. Untuk detail selengkapnya, lihat [Aturan untuk menggunakan direktori logis](logical-dir-mappings.md#logical-dir-rules).
+ Untuk detail tentang bagaimana direktori virtual terstruktur lihat[Struktur direktori virtual](implement-log-dirs.md#virtual-dirs).

### Pertimbangan Penyedia Identitas Kustom
<a name="logical-dir-custom-idp"></a>

Saat menggunakan Penyedia Identitas Kustom, Anda sekarang dapat menentukan respons saat menggunakan LOGICAL HomeDirectoryType. HomeDirectory Panggilan TestIdentityProvider API akan menghasilkan hasil yang benar ketika IDP Kustom menentukan mode LOGICAL. HomeDirectory 

Contoh respon IDP kustom dengan HomeDirectory dan LOGICAL HomeDirectoryType:

```
{
  "Role": "arn:aws:iam::123456789012:role/transfer-user-role",
  "HomeDirectoryType": "LOGICAL",
  "HomeDirectory": "/marketing",
  "HomeDirectoryDetails": "[{\"Entry\":\"/\",\"Target\":\"/bucket/home\"},{\"Entry\":\"/marketing\",\"Target\":\"/marketing-bucket/campaigns\"}]"
}
```

## Kuota grup Direktori Aktif
<a name="ad-group-quotas"></a>

AWS Transfer Family memiliki batas default 100 grup Active Directory per server. Jika kasus penggunaan Anda memerlukan lebih dari 100 grup, pertimbangkan untuk menggunakan solusi penyedia identitas kustom seperti yang dijelaskan dalam [Simplify Active Directory autentikasi dengan penyedia identitas kustom untuk](https://aws.amazon.com/blogs/storage/simplify-active-directory-authentication-with-a-custom-identity-provider-for-aws-transfer-family/). AWS Transfer Family

Batas ini berlaku untuk server yang menggunakan penyedia identitas berikut:
+ AWS Directory Service untuk Microsoft Active Directory
+ AWS Directory Service untuk Entra ID Domain Services

Jika Anda perlu meminta peningkatan batas layanan, lihat [Layanan AWS kuota](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) di. *Referensi Umum AWS* Jika kasus penggunaan Anda memerlukan lebih dari 100 grup, pertimbangkan untuk menggunakan solusi penyedia identitas kustom seperti yang dijelaskan dalam [Simplify Active Directory autentikasi dengan penyedia identitas kustom untuk](https://aws.amazon.com/blogs/storage/simplify-active-directory-authentication-with-a-custom-identity-provider-for-aws-transfer-family/). AWS Transfer Family

Untuk informasi pemecahan masalah yang terkait dengan batas grup Active Directory, lihat. [Batas grup Active Directory terlampaui](auth-issues.md#managed-ad-group-limits)

**Topics**
+ [Amazon EFS vs Amazon S3](#efs-vs-s3-users)
+ [Direktori logis](#logical-dir-users)
+ [Kuota grup Direktori Aktif](#ad-group-quotas)
+ [Bekerja dengan pengguna yang dikelola layanan](service-managed-users.md)
+ [Bekerja dengan penyedia identitas khusus](custom-idp-intro.md)
+ [Menggunakan AWS Directory Service untuk Microsoft Active Directory](directory-services-users.md)
+ [Menggunakan AWS Directory Service untuk Entra ID Domain Services](azure-sftp.md)

# Bekerja dengan pengguna yang dikelola layanan
<a name="service-managed-users"></a>

**Anda dapat menambahkan pengguna yang dikelola layanan Amazon S3 atau Amazon EFS ke server Anda, tergantung pada pengaturan Domain server.** Untuk informasi selengkapnya, lihat [Mengkonfigurasi titik akhir server SFTP, FTPS, atau FTP](tf-server-endpoint.md).

Jika Anda menggunakan tipe identitas yang dikelola layanan, Anda menambahkan pengguna ke server yang diaktifkan protokol transfer file Anda. Ketika Anda melakukannya, setiap nama pengguna harus unik di server Anda.

Untuk menambahkan pengguna yang dikelola layanan secara terprogram, lihat [contoh](https://docs.aws.amazon.com/transfer/latest/APIReference/API_CreateUser.html#API_CreateUser_Examples) untuk API. [CreateUser](https://docs.aws.amazon.com/transfer/latest/APIReference/API_CreateUser.html)

**catatan**  
Untuk pengguna yang dikelola layanan ada batas 2.000 entri direktori logis. Untuk informasi tentang menggunakan direktori logis, lihat[Menggunakan direktori logis untuk menyederhanakan struktur direktori Transfer Family](logical-dir-mappings.md).

**Topics**
+ [Menambahkan pengguna yang dikelola layanan Amazon S3](#add-s3-user)
+ [Menambahkan pengguna yang dikelola layanan Amazon EFS](#add-efs-user)
+ [Mengelola pengguna yang dikelola layanan](#managing-service-managed-users)

## Menambahkan pengguna yang dikelola layanan Amazon S3
<a name="add-s3-user"></a>

**catatan**  
 Jika Anda ingin mengonfigurasi bucket Amazon S3 lintas akun, ikuti langkah-langkah yang disebutkan dalam artikel Pusat Pengetahuan ini: [Bagaimana cara mengonfigurasi AWS Transfer Family server saya untuk menggunakan bucket Amazon Simple Storage Service yang ada di akun lain? AWS](https://aws.amazon.com/premiumsupport/knowledge-center/sftp-cross-account-s3-bucket/) .

**Untuk menambahkan pengguna yang dikelola layanan Amazon S3 ke server Anda**

1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/), lalu pilih **Server** dari panel navigasi.

1. Pada halaman **Server**, pilih kotak centang server yang ingin Anda tambahkan pengguna.

1. Pilih **Tambahkan pengguna**.

1. Di bagian **Konfigurasi pengguna**, untuk **Nama Pengguna**, masukkan nama pengguna. Nama pengguna ini harus minimal 3 dan maksimal 100 karakter. Anda dapat menggunakan karakter berikut dalam nama pengguna: a—z, A-Z, 0—9, garis bawah '\$1', tanda hubung '-', titik '.' dan di tanda '@'. Nama pengguna tidak dapat dimulai dengan tanda hubung '-', titik '.' atau di tanda '@'.

1. Untuk **Access**, pilih peran IAM yang sebelumnya Anda buat yang menyediakan akses ke bucket Amazon S3 Anda.

   Anda membuat peran IAM ini menggunakan prosedur di[Buat peran dan kebijakan IAM](requirements-roles.md). Peran IAM tersebut mencakup kebijakan IAM yang menyediakan akses ke bucket Amazon S3 Anda. Ini juga mencakup hubungan kepercayaan dengan AWS Transfer Family layanan, yang didefinisikan dalam kebijakan IAM lain. Jika Anda memerlukan kontrol akses berbutir halus untuk pengguna Anda, lihat [Tingkatkan kontrol akses data dengan dan posting blog Amazon AWS Transfer Family S3](https://aws.amazon.com/blogs/storage/enhance-data-access-control-with-aws-transfer-family-and-amazon-s3-access-points/).

1. (Opsional) Untuk **Kebijakan**, pilih salah satu dari berikut ini:
   + **Tidak ada**
   + **Kebijakan yang ada**
   + **Pilih kebijakan dari IAM**: memungkinkan Anda memilih kebijakan sesi yang ada. Pilih **Lihat** untuk melihat objek JSON yang berisi detail kebijakan.
   + **Kebijakan buat otomatis berdasarkan folder beranda**: menghasilkan kebijakan sesi untuk Anda. Pilih **Lihat** untuk melihat objek JSON yang berisi detail kebijakan.
**catatan**  
Jika Anda memilih **Kebijakan buat otomatis berdasarkan folder beranda**, jangan pilih **Dibatasi** untuk pengguna ini.

   Untuk mempelajari lebih lanjut tentang kebijakan sesi, lihat[Buat peran dan kebijakan IAM](requirements-roles.md),[Membuat kebijakan sesi untuk bucket Amazon S3](users-policies-session.md), atau[Pendekatan manajemen izin dinamis](dynamic-permission-management.md).

1. Untuk **direktori Home**, pilih bucket Amazon S3 untuk menyimpan data yang akan ditransfer. AWS Transfer Family Masukkan jalur ke `home` direktori tempat pengguna Anda mendarat saat mereka masuk menggunakan klien mereka.

   Jika parameter ini kosong, `root` direktori bucket Amazon S3 Anda akan digunakan. Dalam hal ini, pastikan bahwa peran IAM Anda menyediakan akses ke `root` direktori ini.
**catatan**  
Sebaiknya pilih jalur direktori yang berisi nama pengguna pengguna, yang memungkinkan Anda menggunakan kebijakan sesi secara efektif. Kebijakan sesi membatasi akses pengguna di bucket Amazon S3 ke direktori pengguna tersebut. `home`

1. (Opsional) Untuk **Dibatasi**, pilih kotak centang sehingga pengguna Anda tidak dapat mengakses apa pun di luar folder itu dan tidak dapat melihat keranjang Amazon S3 atau nama folder.
**catatan**  
Menugaskan pengguna direktori home dan membatasi pengguna ke direktori home itu harus cukup untuk mengunci akses pengguna ke folder yang ditunjuk. Jika Anda perlu menerapkan kontrol lebih lanjut, gunakan kebijakan sesi.   
Jika Anda memilih **Dibatasi** untuk pengguna ini, Anda tidak dapat memilih **Kebijakan buat otomatis berdasarkan folder beranda**, karena folder beranda bukan nilai yang ditentukan untuk pengguna Terbatas.

1. Untuk **kunci publik SSH**, masukkan bagian kunci SSH publik dari key pair SSH.

   Kunci Anda divalidasi oleh layanan sebelum Anda dapat menambahkan pengguna baru Anda.
**catatan**  
Untuk petunjuk tentang cara membuat key pair SSH, lihat[Hasilkan kunci SSH untuk pengguna yang dikelola layanan](sshkeygen.md).

1. (Opsional) Untuk **Kunci** dan **Nilai**, masukkan satu atau beberapa tag sebagai pasangan nilai kunci, dan pilih **Tambahkan** tag.

1. Pilih **Tambah** untuk menambahkan pengguna baru Anda ke server yang Anda pilih.

   Pengguna baru muncul di bagian **Pengguna** pada halaman **detail Server**.

**Langkah selanjutnya** — Untuk langkah selanjutnya, lanjutkan ke[Mentransfer file melalui titik akhir server menggunakan klien](transfer-file.md).

## Menambahkan pengguna yang dikelola layanan Amazon EFS
<a name="add-efs-user"></a>

Amazon EFS menggunakan model izin file Portable Operating System Interface (POSIX) untuk mewakili kepemilikan file.
+  Untuk detail selengkapnya tentang kepemilikan file Amazon EFS, lihat [Kepemilikan file Amazon EFS](configure-storage.md#efs-file-ownership). 
+ Untuk detail selengkapnya tentang menyiapkan direktori untuk pengguna EFS Anda, lihat[Menyiapkan pengguna Amazon EFS untuk Transfer Family](configure-storage.md#configure-efs-users-permissions). 

**Untuk menambahkan pengguna yang dikelola layanan Amazon EFS ke server Anda**

1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/), lalu pilih **Server** dari panel navigasi.

1. Pada halaman **Server**, pilih server Amazon EFS yang ingin Anda tambahkan pengguna.

1. Pilih **Tambah pengguna** untuk menampilkan halaman **Tambah pengguna**.

1. Di bagian **Konfigurasi pengguna**, gunakan pengaturan berikut.

   1. Nama **pengguna**, harus minimal 3 dan maksimal 100 karakter. Anda dapat menggunakan karakter berikut dalam nama pengguna: a—z, A-Z, 0-9, garis bawah '\$1', tanda hubung '-', periode ' . ', dan pada tanda “@”. Nama pengguna tidak dapat dimulai dengan tanda hubung '-', titik ' . ', atau pada tanda “@”.

   1.  Untuk **User ID** dan **Group ID**, perhatikan hal berikut: 
      + Untuk pengguna pertama yang Anda buat, kami sarankan Anda memasukkan nilai **0** untuk **ID Grup dan ID** **Pengguna**. Ini memberikan hak administrator pengguna untuk Amazon EFS. 
      + Untuk pengguna tambahan, masukkan ID pengguna POSIX dan ID grup pengguna. Ini IDs digunakan untuk semua operasi Amazon Elastic File System yang dilakukan oleh pengguna. 
      + Untuk **ID Pengguna** dan **ID Grup**, jangan gunakan angka nol di depan. Misalnya, dapat **12345** diterima, **012345** tidak. 

   1. (Opsional) Untuk **Grup Sekunder IDs**, masukkan satu atau lebih grup POSIX tambahan IDs untuk setiap pengguna, dipisahkan dengan koma.

   1. Untuk **Access**, pilih peran IAM yang:
      + Memberikan pengguna akses hanya ke sumber daya Amazon EFS (sistem file) yang Anda ingin mereka akses.
      + Mendefinisikan operasi sistem file mana yang dapat dan tidak dapat dilakukan oleh pengguna.

      Kami menyarankan Anda menggunakan peran IAM untuk pemilihan sistem file Amazon EFS dengan akses mount dan read/write izin. Misalnya, kombinasi dari dua kebijakan AWS terkelola berikut, meskipun cukup permisif, memberikan izin yang diperlukan untuk pengguna Anda: 
      +  AmazonElasticFileSystemClientFullAccess 
      +  AWSTransferConsoleFullAccess 

      Untuk informasi selengkapnya, lihat [AWS Transfer Family dukungan posting blog untuk Amazon Elastic File System](https://aws.amazon.com/blogs/aws/new-aws-transfer-family-support-for-amazon-elastic-file-system/).

   1. Untuk **direktori Home**, lakukan hal berikut:
      + Pilih sistem file Amazon EFS yang ingin Anda gunakan untuk menyimpan data yang akan ditransfer AWS Transfer Family.
      + Putuskan apakah akan mengatur direktori home ke **Restricted**. Menyetel direktori home ke **Restricted** memiliki efek berikut:
        + Pengguna Amazon EFS tidak dapat mengakses file atau direktori apa pun di luar folder itu.
        + Pengguna Amazon EFS tidak dapat melihat nama sistem file Amazon EFS (**fs-xxxxxxx**).
**catatan**  
Saat Anda memilih opsi **Dibatasi**, symlink tidak dapat diselesaikan untuk pengguna Amazon EFS.
      + (Opsional) Masukkan jalur ke direktori home yang Anda inginkan agar pengguna masuk saat mereka masuk menggunakan klien mereka.

        Jika Anda tidak menentukan direktori home, direktori root sistem file Amazon EFS Anda akan digunakan. Dalam hal ini, pastikan bahwa peran IAM Anda menyediakan akses ke direktori root ini.

1. Untuk **kunci publik SSH**, masukkan bagian kunci SSH publik dari key pair SSH.

   Kunci Anda divalidasi oleh layanan sebelum Anda dapat menambahkan pengguna baru Anda.
**catatan**  
Untuk petunjuk tentang cara membuat key pair SSH, lihat[Hasilkan kunci SSH untuk pengguna yang dikelola layanan](sshkeygen.md).

1. (Opsional) Masukkan tag apa pun untuk pengguna. Untuk **Kunci** dan **Nilai**, masukkan satu atau beberapa tag sebagai pasangan nilai kunci, dan pilih **Tambah** tag.

1. Pilih **Tambah** untuk menambahkan pengguna baru Anda ke server yang Anda pilih.

   Pengguna baru muncul di bagian **Pengguna** pada halaman **detail Server**.

 Masalah yang mungkin Anda temui saat pertama kali SFTP ke server Transfer Family Anda: 
+  Jika Anda menjalankan `sftp` perintah dan prompt tidak muncul, Anda mungkin menemukan pesan berikut: 

   `Couldn't canonicalize: Permission denied` 

   `Need cwd` 

   Dalam hal ini, Anda harus meningkatkan izin kebijakan untuk peran pengguna Anda. Anda dapat menambahkan kebijakan AWS terkelola, seperti`AmazonElasticFileSystemClientFullAccess`. 
+ Jika Anda memasukkan `pwd` pada `sftp` prompt untuk melihat direktori home pengguna, Anda mungkin melihat pesan berikut, di mana *USER-HOME-DIRECTORY* direktori home untuk pengguna SFTP:

   `remote readdir("/USER-HOME-DIRECTORY"): No such file or directory` 

  Dalam hal ini, Anda harus dapat menavigasi ke direktori induk (`cd ..`), dan membuat direktori home pengguna (`mkdir username`).

**Langkah selanjutnya** — Untuk langkah selanjutnya, lanjutkan ke[Mentransfer file melalui titik akhir server menggunakan klien](transfer-file.md).

## Mengelola pengguna yang dikelola layanan
<a name="managing-service-managed-users"></a>

 Di bagian ini, Anda dapat menemukan informasi tentang cara melihat daftar pengguna, cara mengedit detail pengguna, dan cara menambahkan kunci publik SSH. 
+ [Melihat daftar pengguna](#list-users)
+ [Melihat atau mengedit detail pengguna](#view-user-details)
+ [Menghapus pengguna](#delete-user)
+ [Tambahkan kunci publik SSH](#add-user-ssh-key)
+ [Hapus kunci publik SSH](#delete-user-ssh-key)<a name="list-users"></a>

**Untuk menemukan daftar pengguna Anda**

1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/).

1. Pilih **Server** dari panel navigasi untuk menampilkan halaman **Server**.

1. Pilih pengenal di kolom **ID Server** untuk melihat halaman **Detail Server**.

1. Di bawah **Pengguna**, lihat daftar pengguna.<a name="view-user-details"></a>

**Untuk melihat atau mengedit detail pengguna**

1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/).

1. Pilih **Server** dari panel navigasi untuk menampilkan halaman **Server**.

1. Pilih pengenal di kolom **ID Server** untuk melihat halaman **Detail Server**.

1. Di bawah **Pengguna**, pilih nama pengguna untuk melihat halaman **Detail pengguna**.

   Anda dapat mengubah properti pengguna di halaman ini dengan memilih **Edit**.

1. Pada halaman **Detail pengguna**, pilih **Edit** di samping **Konfigurasi pengguna**.  
![\[Gambar yang menampilkan layar untuk mengedit konfigurasi pengguna\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/edit-user-details-page-user-config.png)

1. Pada halaman **Edit konfigurasi**, untuk **Access**, pilih peran IAM yang sebelumnya Anda buat yang menyediakan akses ke bucket Amazon S3 Anda.

   Anda membuat peran IAM ini menggunakan prosedur di[Buat peran dan kebijakan IAM](requirements-roles.md). Peran IAM tersebut mencakup kebijakan IAM yang menyediakan akses ke bucket Amazon S3 Anda. Ini juga mencakup hubungan kepercayaan dengan AWS Transfer Family layanan, yang didefinisikan dalam kebijakan IAM lain.

1. (Opsional) Untuk **Kebijakan**, pilih salah satu dari berikut ini:
   + **Tidak ada**
   + **Kebijakan yang ada**
   + **Pilih kebijakan dari IAM** untuk memilih kebijakan yang ada. Pilih **Lihat** untuk melihat objek JSON yang berisi detail kebijakan.

   Untuk mempelajari lebih lanjut tentang kebijakan sesi, lihat[Buat peran dan kebijakan IAM](requirements-roles.md). Untuk mempelajari lebih lanjut tentang membuat kebijakan sesi, lihat[Membuat kebijakan sesi untuk bucket Amazon S3](users-policies-session.md).

1. Untuk **direktori Home**, pilih bucket Amazon S3 untuk menyimpan data yang akan ditransfer. AWS Transfer Family Masukkan jalur ke `home` direktori tempat pengguna Anda mendarat saat mereka masuk menggunakan klien mereka.

   Jika Anda membiarkan parameter ini kosong, `root` direktori bucket Amazon S3 Anda akan digunakan. Dalam hal ini, pastikan bahwa peran IAM Anda menyediakan akses ke `root` direktori ini.
**catatan**  
Sebaiknya pilih jalur direktori yang berisi nama pengguna pengguna, yang memungkinkan Anda menggunakan kebijakan sesi secara efektif. Kebijakan sesi membatasi akses pengguna di bucket Amazon S3 ke direktori pengguna tersebut. `home`

1. (Opsional) Untuk **Dibatasi**, pilih kotak centang sehingga pengguna Anda tidak dapat mengakses apa pun di luar folder itu dan tidak dapat melihat keranjang Amazon S3 atau nama folder.
**catatan**  
Saat menugaskan pengguna direktori home dan membatasi pengguna ke direktori home itu, ini harus cukup untuk mengunci akses pengguna ke folder yang ditunjuk. Gunakan kebijakan sesi saat Anda perlu menerapkan kontrol lebih lanjut.

1. Pilih **Simpan** untuk menyimpan perubahan Anda.<a name="delete-user"></a>

**Untuk menghapus klaster**

1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/).

1. Pilih **Server** dari panel navigasi untuk menampilkan halaman **Server**.

1. Pilih pengenal di kolom **ID Server** untuk melihat halaman **Detail Server**.

1. Di bawah **Pengguna**, pilih nama pengguna untuk melihat halaman **Detail pengguna**. 

1. Pada halaman **Detail pengguna**, pilih **Hapus** di sebelah kanan nama pengguna.

1. Di kotak dialog konfirmasi yang muncul, masukkan kata**delete**, lalu pilih **Hapus** untuk mengonfirmasi bahwa Anda ingin menghapus pengguna.

 Pengguna dihapus dari daftar **pengguna**.<a name="add-user-ssh-key"></a>

**Untuk menambahkan kunci publik SSH untuk pengguna**

1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/).

1. Di panel navigasi, pilih **Server**.

1. Pilih pengenal di kolom **ID Server** untuk melihat halaman **Detail Server**.

1. Di bawah **Pengguna**, pilih nama pengguna untuk melihat halaman **Detail pengguna**.

1. Pilih **Tambahkan kunci publik SSH** untuk menambahkan kunci publik SSH baru ke pengguna.
**catatan**  
Kunci SSH hanya digunakan oleh server yang diaktifkan untuk Secure Shell (SSH) File Transfer Protocol (SFTP). Untuk informasi tentang cara membuat key pair SSH, lihat[Hasilkan kunci SSH untuk pengguna yang dikelola layanan](sshkeygen.md).

1. Untuk **kunci publik SSH**, masukkan bagian kunci publik SSH dari SSH key pair.

   Kunci Anda divalidasi oleh layanan sebelum Anda dapat menambahkan pengguna baru Anda. Format kunci SSH adalah`ssh-rsa string`. Untuk menghasilkan key pair SSH, lihat[Hasilkan kunci SSH untuk pengguna yang dikelola layanan](sshkeygen.md).

1. Pilih **Tambah kunci**.<a name="delete-user-ssh-key"></a>

**Untuk menghapus kunci publik SSH untuk pengguna**

1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/).

1. Di panel navigasi, pilih **Server**.

1. Pilih pengenal di kolom **ID Server** untuk melihat halaman **Detail Server**.

1. Di bawah **Pengguna**, pilih nama pengguna untuk melihat halaman **Detail pengguna**.

1. Untuk menghapus kunci publik, pilih kotak centang kunci SSH dan pilih **Hapus**.

# Bekerja dengan penyedia identitas khusus
<a name="custom-idp-intro"></a>

AWS Transfer Family menawarkan beberapa opsi bagi penyedia identitas khusus untuk mengautentikasi dan mengotorisasi pengguna untuk transfer file yang aman. Berikut adalah pendekatan utama:
+ [Solusi penyedia identitas khusus](custom-idp-toolkit.md)—Topik ini menjelaskan solusi penyedia identitas kustom Transfer Family, menggunakan toolkit yang dihosting. GitHub
**catatan**  
Untuk sebagian besar kasus penggunaan, ini adalah opsi yang disarankan. Secara khusus, jika Anda perlu mendukung lebih dari 100 grup Active Directory, solusi penyedia identitas kustom menawarkan alternatif yang dapat diskalakan tanpa batasan grup. Solusi ini dijelaskan dalam posting blog, [Sederhanakan otentikasi Active Directory dengan penyedia identitas khusus](https://aws.amazon.com/blogs/storage/simplify-active-directory-authentication-with-a-custom-identity-provider-for-aws-transfer-family/) untuk. AWS Transfer Family
+ [Menggunakan Amazon API Gateway untuk mengintegrasikan penyedia identitas Anda](authentication-api-gateway.md)—Topik ini menjelaskan cara menggunakan AWS Lambda fungsi untuk mendukung metode Amazon API Gateway.

  Anda dapat menyediakan RESTful antarmuka dengan satu metode Amazon API Gateway. Transfer Family memanggil metode ini untuk terhubung ke penyedia identitas Anda, yang mengautentikasi dan memberi wewenang kepada pengguna Anda untuk mengakses Amazon S3 atau Amazon EFS. Gunakan opsi ini jika Anda memerlukan RESTful API untuk mengintegrasikan penyedia identitas Anda atau jika Anda ingin menggunakannya untuk memanfaatkan kemampuannya AWS WAF untuk permintaan pemblokiran geografis atau pembatasan kecepatan. Lihat perinciannya di [Menggunakan Amazon API Gateway untuk mengintegrasikan penyedia identitas Anda](authentication-api-gateway.md).
+ [Pendekatan manajemen izin dinamis](dynamic-permission-management.md)—Topik ini menjelaskan pendekatan untuk mengelola izin pengguna secara dinamis menggunakan kebijakan sesi.

  Untuk mengautentikasi pengguna, Anda dapat menggunakan penyedia identitas yang ada dengan AWS Transfer Family. Anda mengintegrasikan penyedia identitas Anda menggunakan AWS Lambda fungsi, yang mengautentikasi dan memberi wewenang kepada pengguna Anda untuk mengakses Amazon S3 atau Amazon Elastic File System (Amazon EFS). Lihat perinciannya di [Menggunakan AWS Lambda untuk mengintegrasikan penyedia identitas Anda](custom-lambda-idp.md). Anda juga dapat mengakses CloudWatch grafik untuk metrik seperti jumlah file dan byte yang ditransfer di AWS Transfer Family Management Console, memberi Anda satu panel kaca untuk memantau transfer file menggunakan dasbor terpusat.
+ Transfer Family menyediakan posting blog dan lokakarya yang memandu Anda membangun solusi transfer file. Solusi ini memanfaatkan AWS Transfer Family SFTP/FTPS endpoint terkelola dan Amazon Cognito dan DynamoDB untuk manajemen pengguna. 

  Posting blog tersedia di [Menggunakan Amazon Cognito sebagai penyedia identitas dengan AWS Transfer Family dan Amazon S3](https://aws.amazon.com/blogs/storage/using-amazon-cognito-as-an-identity-provider-with-aws-transfer-family-and-amazon-s3/). Anda dapat melihat detail untuk lokakarya [di sini](https://catalog.workshops.aws/transfer-family-sftp/en-US). 

**catatan**  
Untuk penyedia identitas khusus, nama pengguna harus minimal 3 dan maksimal 100 karakter. Anda dapat menggunakan karakter berikut dalam nama pengguna: a—z, A-Z, 0—9, garis bawah '\$1', tanda hubung '-', titik '.' dan di tanda '@'. Nama pengguna tidak dapat dimulai dengan tanda hubung '-', titik '.' atau di tanda '@'.

Saat menerapkan penyedia identitas khusus, pertimbangkan praktik terbaik berikut:
+ Terapkan solusi di wilayah yang sama dengan Akun AWS server Transfer Family Anda.
+ Menerapkan prinsip hak istimewa paling sedikit saat mengonfigurasi peran dan kebijakan IAM.
+ Gunakan fitur seperti daftar izin IP dan pencatatan standar untuk keamanan yang ditingkatkan.
+ Uji penyedia identitas kustom Anda secara menyeluruh di lingkungan non-produksi sebelum penerapan.

**Topics**
+ [Solusi penyedia identitas khusus](custom-idp-toolkit.md)
+ [Menggunakan AWS Lambda untuk mengintegrasikan penyedia identitas Anda](custom-lambda-idp.md)
+ [Menggunakan Amazon API Gateway untuk mengintegrasikan penyedia identitas Anda](authentication-api-gateway.md)
+ [Menggunakan beberapa metode otentikasi](custom-idp-mfa.md)
+ [IPv6 dukungan untuk penyedia identitas khusus](custom-idp-ipv6.md)

# Solusi penyedia identitas khusus
<a name="custom-idp-toolkit"></a>

Solusi penyedia identitas AWS Transfer Family kustom adalah solusi penyedia identitas kustom modular yang memecahkan banyak kasus penggunaan otentikasi dan otorisasi umum yang dimiliki perusahaan saat menerapkan layanan. Solusi ini memberikan fondasi yang dapat digunakan kembali untuk menerapkan penyedia identitas khusus dengan konfigurasi sesi per pengguna terperinci dan memisahkan logika otentikasi dan otorisasi, menawarkan fleksibilitas dan fondasi untuk berbagai kasus penggunaan. easy-to-maintain 

Dengan solusi penyedia identitas AWS Transfer Family khusus, Anda dapat mengatasi kasus penggunaan otentikasi dan otorisasi perusahaan umum. Solusi modular ini menawarkan:
+ Fondasi yang dapat digunakan kembali untuk menerapkan penyedia identitas khusus 
+ Konfigurasi sesi per pengguna granular 
+ Otentikasi terpisah dan logika otorisasi 

## Detail implementasi untuk toolkit identitas kustom
<a name="idp-toolkit-implementation-details"></a>

Solusinya menyediakan basis yang fleksibel dan dapat dipelihara untuk berbagai kasus penggunaan. Untuk memulai, tinjau toolkit di [https://github.com/aws-samples/toolkit-for-aws-transfer-family](https://github.com/aws-samples/toolkit-for-aws-transfer-family), lalu ikuti petunjuk penerapan di bagian [Memulai](https://github.com/aws-samples/toolkit-for-aws-transfer-family/tree/main/solutions/custom-idp#getting-started).

![\[Diagram arsitektur untuk toolkit penyedia identitas kustom yang tersedia di GitHub.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/custom-idp-solution-high-level-architecture.png)


**catatan**  
Jika sebelumnya Anda telah menggunakan templat dan contoh penyedia identitas kustom, pertimbangkan untuk mengadopsi solusi ini sebagai gantinya. Ke depan, modul khusus penyedia akan menstandarisasi solusi ini. Pemeliharaan berkelanjutan dan peningkatan fitur akan diterapkan pada solusi ini.

Solusi ini berisi pola standar untuk menerapkan penyedia kustom yang memperhitungkan detail termasuk pencatatan dan tempat menyimpan metadata sesi tambahan yang diperlukan AWS Transfer Family, seperti parameter. `HomeDirectoryDetails` Solusi ini memberikan fondasi yang dapat digunakan kembali untuk mengimplementasikan penyedia identitas kustom dengan konfigurasi sesi per pengguna granular, dan memisahkan logika otentikasi penyedia identitas dari logika yang dapat digunakan kembali yang membangun konfigurasi yang dikembalikan ke Transfer Family untuk menyelesaikan otentikasi dan menetapkan pengaturan untuk sesi tersebut. 

Kode dan sumber daya pendukung untuk solusi ini tersedia di [https://github.com/aws-samples/toolkit-for-aws-transfer-family](https://github.com/aws-samples/toolkit-for-aws-transfer-family).

Toolkit berisi fitur-fitur berikut:
+ [AWS Serverless Application Model](https://aws.amazon.com/serverless/sam)Template yang menyediakan sumber daya yang dibutuhkan. Secara opsional, terapkan dan konfigurasikan Amazon API Gateway untuk digabungkan AWS WAF, seperti yang dijelaskan dalam posting blog [Mengamankan AWS Transfer Family dengan Firewall Aplikasi AWS Web dan Amazon](https://aws.amazon.com/blogs/storage/securing-aws-transfer-family-with-aws-web-application-firewall-and-amazon-api-gateway/) API Gateway.
+ Skema [Amazon DynamoDB](https://aws.amazon.com/dynamodb) untuk menyimpan metadata konfigurasi tentang penyedia identitas, termasuk setelan sesi pengguna seperti,, dan. `HomeDirectoryDetails` `Role` `Policy`
+ Pendekatan modular yang memungkinkan Anda menambahkan penyedia identitas baru ke solusi di masa depan, sebagai modul.
+ Pengambilan atribut: Secara opsional mengambil peran IAM dan atribut Profil POSIX (UID dan GID) dari penyedia identitas yang didukung, termasuk AD, LDAP, dan Okta.
+ Support untuk beberapa penyedia identitas yang terhubung ke satu server Transfer Family dan beberapa server Transfer Family menggunakan penerapan solusi yang sama.
+ Pemeriksaan daftar izin IP bawaan seperti IP mengizinkan daftar yang secara opsional dapat dikonfigurasi berdasarkan penyedia per-pengguna atau per-identitas.
+ Pencatatan terperinci dengan tingkat log yang dapat dikonfigurasi dan dukungan penelusuran untuk membantu pemecahan masalah.

Sebelum Anda mulai menerapkan solusi penyedia identitas kustom, Anda harus memiliki AWS sumber daya berikut.
+ Amazon Virtual Private Cloud (VPC) dengan subnet pribadi, dengan konektivitas internet melalui gateway NAT atau titik akhir gateway DynamoDB.
+ Izin IAM yang sesuai untuk melakukan tugas-tugas berikut:
  + Menyebarkan `custom-idp.yaml` CloudFormation template,
  + Buat AWS CodePipeline proyek
  + Buat AWS CodeBuild proyek
  + Buat peran dan kebijakan IAM

**penting**  
Anda harus menerapkan solusi yang sama Akun AWS dan Wilayah AWS yang berisi server Transfer Family target Anda.

## Penyedia identitas yang didukung
<a name="custom-supported-idp"></a>

Daftar berikut berisi detail untuk penyedia identitas yang didukung untuk solusi penyedia identitas kustom.


| Penyedia | Alur kata sandi | Arus kunci publik | Multi-faktor | Pengambilan atribut | Detail | 
| --- | --- | --- | --- | --- | --- | 
| Direktori Aktif dan LDAP | Ya | Ya | Tidak | Ya | Verifikasi pengguna dapat dilakukan sebagai bagian dari alur otentikasi kunci publik. | 
| Argon2 (hash lokal) | Ya | Tidak | Tidak | Tidak | Hash Argon2 disimpan dalam catatan pengguna untuk kasus penggunaan otentikasi berbasis kata sandi 'lokal'. | 
| Amazon Cognito | Ya | Tidak | Ya\$1 | Tidak | Hanya otentikasi multi-faktor berbasis One-Time Password (TOTP) berbasis waktu. \$1 MFA berbasis SMS tidak didukung. | 
| Entra ID (sebelumnya Azure AD) | Ya | Tidak | Tidak | Tidak |  | 
| Okta | Ya | Ya | Ya\$1 | Ya | MFA berbasis TOTP saja. | 
| Kunci publik | Tidak | Ya | Tidak | Tidak | Kunci publik disimpan dalam catatan pengguna di DynamoDB. | 
| Secrets Manager | Ya | Ya | Tidak | Tidak |  | 

# Menggunakan AWS Lambda untuk mengintegrasikan penyedia identitas Anda
<a name="custom-lambda-idp"></a>

Topik ini menjelaskan cara membuat AWS Lambda fungsi yang terhubung ke penyedia identitas kustom Anda. Anda dapat menggunakan penyedia identitas kustom apa pun, seperti Okta, Secrets Manager OneLogin, atau penyimpanan data khusus yang menyertakan logika otorisasi dan otentikasi.

Untuk sebagian besar kasus penggunaan, cara yang disarankan untuk mengonfigurasi penyedia identitas khusus adalah dengan menggunakan[Solusi penyedia identitas khusus](custom-idp-toolkit.md).

**catatan**  
Sebelum membuat server Transfer Family yang menggunakan Lambda sebagai penyedia identitas, Anda harus membuat fungsinya. Untuk contoh fungsi Lambda, lihat. [Contoh fungsi Lambda](#lambda-auth-examples) Atau, Anda dapat menerapkan CloudFormation tumpukan yang menggunakan salah satu. [Template fungsi Lambda](#lambda-idp-templates) Selain itu, pastikan fungsi Lambda Anda menggunakan kebijakan berbasis sumber daya yang mempercayai Transfer Family. Untuk contoh kebijakan, lihat [Kebijakan berbasis sumber daya Lambda](#lambda-resource-policy).

1. Buka [konsol AWS Transfer Family](https://console.aws.amazon.com/transfer/).

1. Pilih **Buat server** untuk membuka halaman **Buat server**. Untuk **Pilih penyedia identitas**, pilih **Penyedia Identitas Kustom**, seperti yang ditunjukkan pada gambar berikut.  
![\[Bagian Pilih konsol penyedia identitas dengan Penyedia identitas kustom dipilih. Juga memiliki nilai default yang dipilih, yaitu bahwa pengguna dapat mengautentikasi menggunakan kata sandi atau kunci mereka.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/custom-lambda-console.png)
**catatan**  
Pilihan metode otentikasi hanya tersedia jika Anda mengaktifkan SFTP sebagai salah satu protokol untuk server Transfer Family Anda.

1. Pastikan nilai default, **Gunakan AWS Lambda untuk menghubungkan penyedia identitas Anda**, dipilih.

1. Untuk **AWS Lambda fungsi**, pilih nama fungsi Lambda Anda.

1. Isi kotak yang tersisa, lalu pilih **Buat server**. Untuk detail tentang langkah-langkah yang tersisa untuk membuat server, lihat[Mengkonfigurasi titik akhir server SFTP, FTPS, atau FTP](tf-server-endpoint.md).

## Kebijakan berbasis sumber daya Lambda
<a name="lambda-resource-policy"></a>

Anda harus memiliki kebijakan yang mereferensikan server Transfer Family dan Lambda ARNs. Misalnya, Anda dapat menggunakan kebijakan berikut dengan fungsi Lambda yang terhubung ke penyedia identitas Anda. Kebijakan ini lolos dari JSON sebagai string.

****  

```
"Policy":
"{\"Version\":\"2012-10-17\",
\"Id\":\"default\",
\"Statement\":[
  {\"Sid\":\"AllowTransferInvocation\",
  \"Effect\":\"Allow\",
  \"Principal\":{\"Service\":\"transfer.amazonaws.com\"},
  \"Action\":\"lambda:InvokeFunction\",
  \"Resource\":\"arn:aws:lambda:region:123456789012:function:my-lambda-auth-function\",
  \"Condition\":{\"ArnLike\":{\"AWS:SourceArn\":\"arn:aws:transfer:region:123456789012:server/server-id\"}}}
]}"
```

**catatan**  
Dalam contoh kebijakan di atas, ganti masing-masing *user input placeholder* dengan informasi Anda sendiri.

## Struktur pesan peristiwa
<a name="event-message-structure"></a>

Struktur pesan acara dari server SFTP yang dikirim ke fungsi Lambda otorisasi untuk IDP kustom adalah sebagai berikut.

```
{
    "username": "value",
    "password": "value",
    "protocol": "SFTP",
    "serverId": "s-abcd123456",
    "sourceIp": "192.168.0.100"
}
```

Di mana `username` dan `password` merupakan nilai untuk kredensyal masuk yang dikirim ke server.

Misalnya, Anda memasukkan perintah berikut untuk menghubungkan:

```
sftp bobusa@server_hostname
```

Anda kemudian diminta untuk memasukkan kata sandi Anda:

```
Enter password:
    mysecretpassword
```

Anda dapat memeriksa ini dari fungsi Lambda Anda dengan mencetak peristiwa yang diteruskan dari dalam fungsi Lambda. Seharusnya terlihat mirip dengan blok teks berikut.

```
{
    "username": "bobusa",
    "password": "mysecretpassword",
    "protocol": "SFTP",
    "serverId": "s-abcd123456",
    "sourceIp": "192.168.0.100"
}
```

Struktur acara serupa untuk FTP dan FTPS: satu-satunya perbedaan adalah nilai-nilai tersebut digunakan untuk `protocol` parameter, bukan SFTP.

## Fungsi Lambda untuk otentikasi
<a name="authentication-lambda-examples"></a>

Untuk menerapkan strategi otentikasi yang berbeda, edit fungsi Lambda. Untuk membantu Anda memenuhi kebutuhan aplikasi Anda, Anda dapat menerapkan CloudFormation tumpukan. Untuk informasi selengkapnya tentang Lambda, lihat [Panduan AWS Lambda Pengembang](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) atau Membangun fungsi [Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-nodejs.html) dengan Node.js.

**Topics**
+ [Nilai Lambda yang valid](#lambda-valid-values)
+ [Contoh fungsi Lambda](#lambda-auth-examples)
+ [Menguji konfigurasi Anda](#authentication-test-configuration)
+ [Template fungsi Lambda](#lambda-idp-templates)

### Nilai Lambda yang valid
<a name="lambda-valid-values"></a>

Tabel berikut menjelaskan detail nilai yang diterima Transfer Family untuk fungsi Lambda yang digunakan untuk penyedia identitas kustom.


|  Nilai  |  Deskripsi  |  Diperlukan  | 
| --- | --- | --- | 
|  `Role`  |  Menentukan Nama Sumber Daya Amazon (ARN) dari peran IAM yang mengontrol akses pengguna ke bucket Amazon S3 atau sistem file Amazon EFS. Kebijakan yang dilampirkan pada peran ini menentukan tingkat akses yang ingin Anda berikan kepada pengguna saat mentransfer file masuk dan keluar dari sistem file Amazon S3 atau Amazon EFS Anda. IAM role juga harus berisi hubungan kepercayaan yang mengizinkan server untuk mengakses sumber daya Anda saat melayani permintaan transfer pengguna. Untuk detail tentang membangun hubungan kepercayaan, lihat[Untuk membangun hubungan kepercayaan](requirements-roles.md#establish-trust-transfer).  |  Diperlukan  | 
|  `PosixProfile`  |  Identitas POSIX lengkap, termasuk ID pengguna (`Uid`), ID grup (`Gid`), dan grup sekunder IDs (`SecondaryGids`) apa pun, yang mengontrol akses pengguna ke sistem file Amazon EFS Anda. POSIX izin yang ditetapkan pada file dan direktori dalam sistem file Anda menentukan tingkat akses pengguna Anda mendapatkan ketika mentransfer file ke dalam dan keluar dari sistem file Amazon EFS Anda.  |  Diperlukan untuk penyimpanan dukungan Amazon EFS  | 
|  `PublicKeys`  |  Daftar nilai kunci publik SSH yang valid untuk pengguna ini. Daftar kosong menyiratkan bahwa ini bukan login yang valid. Tidak boleh dikembalikan selama otentikasi kata sandi.  |  Opsional  | 
|  `Policy`  |  Kebijakan sesi untuk pengguna Anda sehingga Anda dapat menggunakan peran IAM yang sama di beberapa pengguna. Kebijakan ini mencakup bawah akses pengguna ke bagian dari bucket Amazon S3 mereka. Untuk informasi selengkapnya tentang penggunaan kebijakan sesi dengan penyedia identitas kustom, lihat contoh kebijakan sesi dalam topik ini.  |  Opsional  | 
|  `HomeDirectoryType`  |  Jenis direktori pendaratan (folder) yang Anda inginkan direktori home pengguna Anda ketika mereka masuk ke server. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/custom-lambda-idp.html)  |  Opsional  | 
|  `HomeDirectoryDetails`  |  Pemetaan direktori logis yang menentukan jalur dan kunci Amazon S3 atau Amazon EFS mana yang harus terlihat oleh pengguna Anda dan bagaimana Anda ingin membuatnya terlihat. Anda harus menentukan `Entry` dan `Target` memasangkan, di mana `Entry` menunjukkan bagaimana jalur dibuat terlihat dan `Target` merupakan jalur Amazon S3 atau Amazon EFS yang sebenarnya.  |  Diperlukan jika `HomeDirectoryType` memiliki nilai `LOGICAL`  | 
|  `HomeDirectory`  |  Direktori pendaratan untuk pengguna ketika mereka masuk ke server menggunakan klien. Formatnya tergantung pada backend penyimpanan Anda: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/custom-lambda-idp.html)  Nama bucket atau ID sistem file Amazon EFS harus disertakan dalam path. Menghilangkan informasi ini akan mengakibatkan kesalahan “File tidak ditemukan” selama transfer file.   |  Opsional  | 

**catatan**  
`HomeDirectoryDetails`adalah representasi string dari peta JSON. Hal ini berbeda dengan`PosixProfile`, yang merupakan objek peta JSON yang sebenarnya, dan `PublicKeys` yang merupakan array JSON string. Lihat contoh kode untuk detail khusus bahasa.

**HomeDirectory Persyaratan Format**  
Saat menggunakan `HomeDirectory` parameter, pastikan Anda menyertakan format jalur lengkap:  
**Untuk penyimpanan Amazon S3:** Selalu sertakan nama bucket dalam format `/bucket-name/path`
**Untuk penyimpanan Amazon EFS:** Selalu sertakan ID sistem file dalam format `/fs-12345/path`
Penyebab umum kesalahan “File tidak ditemukan” adalah menghilangkan nama bucket atau ID sistem file EFS dari `HomeDirectory` jalur. Pengaturan `HomeDirectory` ke hanya `/` tanpa pengenal penyimpanan akan menyebabkan otentikasi berhasil tetapi operasi file gagal.

### Contoh fungsi Lambda
<a name="lambda-auth-examples"></a>

Bagian ini menyajikan beberapa contoh fungsi Lambda, baik di NodeJS maupun Python.

**catatan**  
Dalam contoh ini, detail direktori pengguna, peran, profil POSIX, kata sandi, dan home directory adalah contoh, dan harus diganti dengan nilai aktual Anda.

------
#### [ Logical home directory, NodeJS ]

[Fungsi contoh NodeJS berikut memberikan rincian untuk pengguna yang memiliki direktori home logis.](https://docs.aws.amazon.com/transfer/latest/userguide/logical-dir-mappings.html) 

```
// GetUserConfig Lambda

exports.handler = (event, context, callback) => {
  console.log("Username:", event.username, "ServerId: ", event.serverId);

  var response;
  // Check if the username presented for authentication is correct. This doesn't check the value of the server ID, only that it is provided.
  if (event.serverId !== "" && event.username == 'example-user') {
    var homeDirectoryDetails = [
      {
        Entry: "/",
        Target: "/fs-faa1a123"
      }
    ];
    response = {
      Role: 'arn:aws:iam::123456789012:role/transfer-access-role', // The user is authenticated if and only if the Role field is not blank
      PosixProfile: {"Gid": 65534, "Uid": 65534}, // Required for EFS access, but not needed for S3
      HomeDirectoryDetails: JSON.stringify(homeDirectoryDetails),
      HomeDirectoryType: "LOGICAL",
    };

    // Check if password is provided
    if (!event.password) {
      // If no password provided, return the user's SSH public key
      response['PublicKeys'] = [ "ssh-rsa abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789" ];
    // Check if password is correct
    } else if (event.password !== 'Password1234') {
      // Return HTTP status 200 but with no role in the response to indicate authentication failure
      response = {};
    }
  } else {
    // Return HTTP status 200 but with no role in the response to indicate authentication failure
    response = {};
  }
  callback(null, response);
};
```

------
#### [ Path-based home directory, NodeJS ]

Fungsi contoh NodeJS berikut memberikan rincian untuk pengguna yang memiliki direktori home berbasis jalur. 

```
// GetUserConfig Lambda

exports.handler = (event, context, callback) => {
  console.log("Username:", event.username, "ServerId: ", event.serverId);

  var response;
  // Check if the username presented for authentication is correct. This doesn't check the value of the server ID, only that it is provided.
  // There is also event.protocol (one of "FTP", "FTPS", "SFTP") and event.sourceIp (e.g., "127.0.0.1") to further restrict logins.
  if (event.serverId !== "" && event.username == 'example-user') {
    response = {
      Role: 'arn:aws:iam::123456789012:role/transfer-access-role', // The user is authenticated if and only if the Role field is not blank
      Policy: '', // Optional, JSON stringified blob to further restrict this user's permissions
      // HomeDirectory format depends on your storage backend:
      // For S3: '/bucket-name/user-home-directory' (e.g., '/my-transfer-bucket/users/john')
      // For EFS: '/fs-12345/user-home-directory' (e.g., '/fs-faa1a123/users/john')
      HomeDirectory: '/my-transfer-bucket/users/example-user' // S3 example - replace with your bucket name
      // HomeDirectory: '/fs-faa1a123/users/example-user' // EFS example - uncomment for EFS
    };
    
    // Check if password is provided
    if (!event.password) {
      // If no password provided, return the user's SSH public key
     response['PublicKeys'] = [ "ssh-rsa abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789" ];
    // Check if password is correct
    } else if (event.password !== 'Password1234') {
      // Return HTTP status 200 but with no role in the response to indicate authentication failure
      response = {};
    } 
  } else {
    // Return HTTP status 200 but with no role in the response to indicate authentication failure
    response = {};
  }
  callback(null, response);
};
```

------
#### [ Logical home directory, Python ]

Contoh fungsi Python berikut memberikan rincian untuk pengguna yang memiliki direktori [home logis](https://docs.aws.amazon.com/transfer/latest/userguide/logical-dir-mappings.html). 

```
# GetUserConfig Python Lambda with LOGICAL HomeDirectoryDetails
import json

def lambda_handler(event, context):
  print("Username: {}, ServerId: {}".format(event['username'], event['serverId']))

  response = {}

  # Check if the username presented for authentication is correct. This doesn't check the value of the server ID, only that it is provided.
  if event['serverId'] != '' and event['username'] == 'example-user':
    homeDirectoryDetails = [
      {
        'Entry': '/',
        'Target': '/fs-faa1a123'
      }
    ]
    response = {
      'Role': 'arn:aws:iam::123456789012:role/transfer-access-role', # The user will be authenticated if and only if the Role field is not blank
      'PosixProfile': {"Gid": 65534, "Uid": 65534}, # Required for EFS access, but not needed for S3
      'HomeDirectoryDetails': json.dumps(homeDirectoryDetails),
      'HomeDirectoryType': "LOGICAL"
    }

    # Check if password is provided
    if event.get('password', '') == '':
      # If no password provided, return the user's SSH public key
     response['PublicKeys'] = [ "ssh-rsa abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789" ]
    # Check if password is correct
    elif event['password'] != 'Password1234':
      # Return HTTP status 200 but with no role in the response to indicate authentication failure
      response = {}
  else:
    # Return HTTP status 200 but with no role in the response to indicate authentication failure
    response = {}

  return response
```

------
#### [ Path-based home directory, Python ]

Contoh fungsi Python berikut memberikan rincian untuk pengguna yang memiliki direktori home berbasis jalur. 

```
# GetUserConfig Python Lambda with PATH HomeDirectory

def lambda_handler(event, context):
  print("Username: {}, ServerId: {}".format(event['username'], event['serverId']))

  response = {}

  # Check if the username presented for authentication is correct. This doesn't check the value of the server ID, only that it is provided.
  # There is also event.protocol (one of "FTP", "FTPS", "SFTP") and event.sourceIp (e.g., "127.0.0.1") to further restrict logins.
  if event['serverId'] != '' and event['username'] == 'example-user':
    response = {
      'Role': 'arn:aws:iam::123456789012:role/transfer-access-role', # The user will be authenticated if and only if the Role field is not blank
      'Policy': '', #  Optional, JSON stringified blob to further restrict this user's permissions
      # HomeDirectory format depends on your storage backend:
      # For S3: '/bucket-name/user-home-directory' (e.g., '/my-transfer-bucket/users/john')
      # For EFS: '/fs-12345/user-home-directory' (e.g., '/fs-faa1a123/users/john')
      'HomeDirectory': '/my-transfer-bucket/users/example-user', # S3 example - replace with your bucket name
      # 'HomeDirectory': '/fs-faa1a123/users/example-user', # EFS example - uncomment for EFS
      'HomeDirectoryType': "PATH" # Not strictly required, defaults to PATH
    }
    
    # Check if password is provided
    if event.get('password', '') == '':
      # If no password provided, return the user's SSH public key
     response['PublicKeys'] = [ "ssh-rsa abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789" ]
    # Check if password is correct
    elif event['password'] != 'Password1234':
      # Return HTTP status 200 but with no role in the response to indicate authentication failure
      response = {}
  else:
    # Return HTTP status 200 but with no role in the response to indicate authentication failure
    response = {}

  return response
```

------

### Menguji konfigurasi Anda
<a name="authentication-test-configuration"></a>

Setelah Anda membuat penyedia identitas kustom Anda, Anda harus menguji konfigurasi Anda.

------
#### [ Console ]

**Untuk menguji konfigurasi Anda dengan menggunakan AWS Transfer Family konsol**

1. Buka [konsol AWS Transfer Family](https://console.aws.amazon.com/transfer/). 

1. Pada halaman **Server**, pilih server baru Anda, pilih **Tindakan**, lalu pilih **Uji**.

1. Masukkan teks untuk **Nama Pengguna** dan **Kata Sandi** yang Anda atur saat Anda menerapkan CloudFormation tumpukan. Jika Anda menyimpan opsi default, nama pengguna adalah `myuser` dan kata sandinya`MySuperSecretPassword`.

1. Pilih **protokol Server** dan masukkan alamat IP untuk **IP Sumber**, jika Anda mengaturnya saat Anda menerapkan CloudFormation tumpukan.

------
#### [ CLI ]

**Untuk menguji konfigurasi Anda dengan menggunakan AWS CLI**

1. Jalankan perintah [test-identity-provider](https://docs.aws.amazon.com/cli/latest/reference/transfer/test-identity-provider.html). Ganti masing-masing `user input placeholder` dengan informasi Anda sendiri, seperti yang dijelaskan dalam langkah-langkah selanjutnya.

   ```
   aws transfer test-identity-provider --server-id s-1234abcd5678efgh --user-name myuser --user-password MySuperSecretPassword --server-protocol FTP --source-ip 127.0.0.1
   ```

1. Masukkan ID server.

1. Masukkan nama pengguna dan kata sandi yang Anda tetapkan saat Anda menerapkan CloudFormation tumpukan. Jika Anda menyimpan opsi default, nama pengguna adalah `myuser` dan kata sandinya`MySuperSecretPassword`.

1. Masukkan protokol server dan alamat IP sumber, jika Anda mengaturnya saat Anda menerapkan CloudFormation tumpukan.

------

Jika otentikasi pengguna berhasil, pengujian mengembalikan respons `StatusCode: 200` HTTP, string kosong `Message: ""` (yang akan berisi alasan kegagalan jika tidak), dan bidang. `Response`

**catatan**  
 Dalam contoh respons di bawah ini, `Response` bidang adalah objek JSON yang telah “dirangkai” (diubah menjadi string JSON datar yang dapat digunakan di dalam program), dan berisi rincian peran dan izin pengguna.

```
{
    "Response":"{\"Policy\":\"{\\\"Version\\\":\\\"2012-10-17\\\",\\\"Statement\\\":[{\\\"Sid\\\":\\\"ReadAndListAllBuckets\\\",\\\"Effect\\\":\\\"Allow\\\",\\\"Action\\\":[\\\"s3:ListAllMybuckets\\\",\\\"s3:GetBucketLocation\\\",\\\"s3:ListBucket\\\",\\\"s3:GetObjectVersion\\\",\\\"s3:GetObjectVersion\\\"],\\\"Resource\\\":\\\"*\\\"}]}\",\"Role\":\"arn:aws:iam::000000000000:role/MyUserS3AccessRole\",\"HomeDirectory\":\"/\"}",
    "StatusCode": 200,
    "Message": ""
}
```

### Template fungsi Lambda
<a name="lambda-idp-templates"></a>

Anda dapat menerapkan CloudFormation tumpukan yang menggunakan fungsi Lambda untuk otentikasi. Kami menyediakan beberapa templat yang mengautentikasi dan mengotorisasi pengguna Anda menggunakan kredensyal masuk. Anda dapat memodifikasi template atau AWS Lambda kode ini untuk lebih menyesuaikan akses pengguna.

**catatan**  
Anda dapat membuat AWS Transfer Family server berkemampuan FIPS CloudFormation dengan menentukan kebijakan keamanan berkemampuan FIPS di template Anda. Kebijakan keamanan yang tersedia dijelaskan dalam [Kebijakan keamanan untuk AWS Transfer Family server](security-policies.md) 

**Untuk membuat CloudFormation tumpukan yang akan digunakan untuk otentikasi**

1. Buka CloudFormation konsol di [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/).

1. Ikuti petunjuk untuk menerapkan CloudFormation tumpukan dari template yang ada di [Memilih template tumpukan](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-using-console-create-stack-template.html) di *Panduan AWS CloudFormation Pengguna*.

1. Gunakan salah satu templat berikut untuk membuat fungsi Lambda yang akan digunakan untuk otentikasi di Transfer Family. 
   + [Templat tumpukan klasik (Amazon Cognito)](https://s3.amazonaws.com/aws-transfer-resources/custom-idp-templates/aws-transfer-custom-idp-basic-lambda-cognito-s3.template.yml)

     Template dasar untuk membuat AWS Lambda untuk digunakan sebagai penyedia identitas kustom di AWS Transfer Family. Ini mengautentikasi terhadap Amazon Cognito untuk otentikasi berbasis kata sandi dan kunci publik dikembalikan dari bucket Amazon S3 jika otentikasi berbasis kunci publik digunakan. Setelah penerapan, Anda dapat memodifikasi kode fungsi Lambda untuk melakukan sesuatu yang berbeda.
   + [AWS Secrets Manager template tumpukan](https://s3.amazonaws.com/aws-transfer-resources/custom-idp-templates/aws-transfer-custom-idp-secrets-manager-lambda.template.yml)

     Template dasar yang digunakan AWS Lambda dengan AWS Transfer Family server untuk mengintegrasikan Secrets Manager sebagai penyedia identitas. Ini mengotentikasi terhadap entri dalam AWS Secrets Manager format`aws/transfer/server-id/username`. Selain itu, secret harus menyimpan pasangan kunci-nilai untuk semua properti pengguna yang dikembalikan ke Transfer Family. Setelah penerapan, Anda dapat memodifikasi kode fungsi Lambda untuk melakukan sesuatu yang berbeda.
   + [Template tumpukan Okta](https://s3.amazonaws.com/aws-transfer-resources/custom-idp-templates/aws-transfer-custom-idp-okta-lambda.template.yml): Template dasar yang digunakan AWS Lambda dengan AWS Transfer Family server untuk mengintegrasikan Okta sebagai penyedia identitas khusus.
   + [Template tumpukan Okta-MFA: Template](https://s3.amazonaws.com/aws-transfer-resources/custom-idp-templates/aws-transfer-custom-idp-okta-mfa-lambda.template.yml) dasar yang digunakan AWS Lambda dengan AWS Transfer Family server untuk mengintegrasikan Okta, dengan Multi Factor Authentication, sebagai penyedia identitas khusus.
   + [Template Azure Active Directory](https://s3.amazonaws.com/aws-transfer-resources/custom-idp-templates/aws-transfer-custom-idp-basic-lambda-azure-ad.template.yml): detail untuk tumpukan ini dijelaskan dalam posting blog [Mengautentikasi AWS Transfer Family dengan Azure Active](https://aws.amazon.com/blogs/storage/authenticating-to-aws-transfer-family-with-azure-active-directory-and-aws-lambda/) Directory dan. AWS Lambda

   Setelah tumpukan dikerahkan, Anda dapat melihat detailnya di tab **Output** di CloudFormation konsol.

   Menerapkan salah satu tumpukan ini adalah cara termudah untuk mengintegrasikan penyedia identitas kustom ke dalam alur kerja Transfer Family.

# Menggunakan Amazon API Gateway untuk mengintegrasikan penyedia identitas Anda
<a name="authentication-api-gateway"></a>

Topik ini menjelaskan cara menggunakan AWS Lambda fungsi untuk mendukung metode API Gateway. Gunakan opsi ini jika Anda memerlukan RESTful API untuk mengintegrasikan penyedia identitas Anda atau jika Anda ingin menggunakannya untuk memanfaatkan kemampuannya AWS WAF untuk permintaan pemblokiran geografis atau pembatasan kecepatan.

Untuk sebagian besar kasus penggunaan, cara yang disarankan untuk mengonfigurasi penyedia identitas khusus adalah dengan menggunakan[Solusi penyedia identitas khusus](custom-idp-toolkit.md).

**Batasan jika menggunakan API Gateway untuk mengintegrasikan penyedia identitas Anda**
+ Konfigurasi ini tidak mendukung domain kustom.
+ Konfigurasi ini tidak mendukung URL API Gateway pribadi.

Jika Anda membutuhkan salah satu dari ini, Anda dapat menggunakan Lambda sebagai penyedia identitas, tanpa API Gateway. Lihat perinciannya di [Menggunakan AWS Lambda untuk mengintegrasikan penyedia identitas Anda](custom-lambda-idp.md).

## Mengautentikasi menggunakan metode API Gateway
<a name="authentication-custom-ip"></a>

Anda dapat membuat metode API Gateway untuk digunakan sebagai penyedia identitas untuk Transfer Family. Pendekatan ini memberikan cara yang sangat aman bagi Anda untuk membuat dan menyediakan APIs. Dengan API Gateway, Anda dapat membuat titik akhir HTTPS sehingga semua operasi API yang masuk ditransmisikan dengan keamanan yang lebih besar. Untuk detail selengkapnya tentang layanan API Gateway, lihat [Panduan Pengembang API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/welcome.html).

API Gateway menawarkan metode otorisasi bernama`AWS_IAM`, yang memberi Anda autentikasi yang sama berdasarkan AWS Identity and Access Management (IAM) yang AWS digunakan secara internal. Jika Anda mengaktifkan autentikasi`AWS_IAM`, hanya penelepon dengan izin eksplisit untuk memanggil API yang dapat mencapai metode API Gateway API tersebut.

Untuk menggunakan metode API Gateway Anda sebagai penyedia identitas khusus untuk Transfer Family, aktifkan IAM untuk metode API Gateway Anda. Sebagai bagian dari proses ini, Anda memberikan peran IAM dengan izin untuk Transfer Family untuk menggunakan gateway Anda.

**catatan**  
Untuk meningkatkan keamanan, Anda dapat mengkonfigurasi firewall aplikasi web. AWS WAF adalah firewall aplikasi web yang memungkinkan Anda memantau permintaan HTTP dan HTTPS yang diteruskan ke Amazon API Gateway. Lihat perinciannya di [Tambahkan firewall aplikasi web](web-application-firewall.md).

**Jangan aktifkan caching API Gateway**  
Jangan aktifkan caching untuk metode API Gateway Anda saat menggunakannya sebagai penyedia identitas khusus untuk Transfer Family. Caching tidak pantas dan tidak valid untuk permintaan otentikasi karena:  
Setiap permintaan otentikasi unik dan memerlukan respons langsung, bukan respons yang di-cache
Caching tidak memberikan manfaat karena Transfer Family tidak pernah mengirimkan permintaan duplikat atau berulang ke API Gateway
Mengaktifkan caching akan menyebabkan API Gateway merespons dengan data yang tidak cocok, sehingga respons yang tidak valid terhadap permintaan otentikasi

**Untuk menggunakan metode API Gateway Anda untuk autentikasi kustom dengan Transfer Family**

1. Buat CloudFormation tumpukan. Untuk melakukannya:
**catatan**  
Templat tumpukan telah diperbarui untuk menggunakan kata sandi yang BASE64 dienkode: untuk detailnya, lihat. [Perbaikan CloudFormation template](#base64-templates)

   1. Buka CloudFormation konsol di [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/).

   1. Ikuti petunjuk untuk menerapkan CloudFormation tumpukan dari template yang ada di [Memilih template tumpukan](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-using-console-create-stack-template.html) di *Panduan AWS CloudFormation Pengguna*.

   1. Gunakan salah satu templat dasar berikut untuk membuat metode API Gateway yang AWS Lambda didukung untuk digunakan sebagai penyedia identitas kustom di Transfer Family.
      + [Template tumpukan dasar](https://s3.amazonaws.com/aws-transfer-resources/custom-idp-templates/aws-transfer-custom-idp-basic-apig.template.yml)

        Secara default, metode API Gateway Anda digunakan sebagai penyedia identitas khusus untuk mengautentikasi satu pengguna dalam satu server menggunakan kunci atau kata sandi SSH (Secure Shell) dengan kode keras. Setelah penerapan, Anda dapat memodifikasi kode fungsi Lambda untuk melakukan sesuatu yang berbeda.
      + [AWS Secrets Manager template tumpukan](https://s3.amazonaws.com/aws-transfer-resources/custom-idp-templates/aws-transfer-custom-idp-secrets-manager-apig.template.yml)

        Secara default, metode API Gateway Anda melakukan autentikasi terhadap entri di Secrets Manager format`aws/transfer/server-id/username`. Selain itu, secret harus menyimpan pasangan kunci-nilai untuk semua properti pengguna yang dikembalikan ke Transfer Family. Setelah penerapan, Anda dapat memodifikasi kode fungsi Lambda untuk melakukan sesuatu yang berbeda. Untuk informasi selengkapnya, lihat posting blog [Aktifkan otentikasi kata sandi untuk AWS Transfer Family digunakan AWS Secrets Manager](https://aws.amazon.com/blogs/storage/enable-password-authentication-for-aws-transfer-family-using-aws-secrets-manager-updated/).
      + [Templat tumpukan Okta](https://s3.amazonaws.com/aws-transfer-resources/custom-idp-templates/aws-transfer-custom-idp-okta-apig.template.yml)

        Metode API Gateway Anda terintegrasi dengan Okta sebagai penyedia identitas khusus di Transfer Family. Untuk informasi lebih lanjut, lihat posting blog [Menggunakan Okta sebagai penyedia identitas dengan AWS Transfer Family](https://aws.amazon.com/blogs/storage/using-okta-as-an-identity-provider-with-aws-transfer-for-sftp/).

   Menerapkan salah satu tumpukan ini adalah cara termudah untuk mengintegrasikan penyedia identitas kustom ke dalam alur kerja Transfer Family. Setiap tumpukan menggunakan fungsi Lambda untuk mendukung metode API Anda berdasarkan API Gateway. Anda kemudian dapat menggunakan metode API sebagai penyedia identitas kustom di Transfer Family. Secara default, fungsi Lambda mengautentikasi satu pengguna yang dipanggil `myuser` dengan kata sandi. `MySuperSecretPassword` Setelah penerapan, Anda dapat mengedit kredensyal ini atau memperbarui kode fungsi Lambda untuk melakukan sesuatu yang berbeda.
**penting**  
Kami menyarankan Anda mengedit kredensi pengguna dan kata sandi default.

   Setelah tumpukan dikerahkan, Anda dapat melihat detailnya di tab **Output** di CloudFormation konsol. Detail ini termasuk Amazon Resource Name (ARN) stack, ARN dari peran IAM yang dibuat stack, dan URL untuk gateway baru Anda.
**catatan**  
Jika Anda menggunakan opsi penyedia identitas khusus untuk mengaktifkan autentikasi berbasis kata sandi bagi pengguna Anda, dan Anda mengaktifkan pencatatan permintaan dan respons yang disediakan oleh API Gateway, API Gateway mencatat kata sandi pengguna Anda ke Log Amazon Anda. CloudWatch Kami tidak menyarankan menggunakan log ini di lingkungan produksi Anda. Untuk informasi selengkapnya, lihat [Menyiapkan pencatatan CloudWatch API di API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-logging.html) di *Panduan Pengembang API Gateway*.

1. Periksa konfigurasi metode API Gateway untuk server Anda. Untuk melakukannya:

   1. Buka konsol API Gateway di [https://console.aws.amazon.com/apigateway/](https://console.aws.amazon.com/apigateway/). 

   1. Pilih **API template dasar Transfer Custom Identity Provider** yang dihasilkan CloudFormation template. Anda mungkin perlu memilih wilayah Anda untuk melihat gateway Anda.

   1. Di panel **Resources**, pilih **GET**. Tangkapan layar berikut menunjukkan konfigurasi metode yang benar.  
![\[Detail konfigurasi API, menampilkan parameter konfigurasi metode untuk Jalur Permintaan dan String Kueri URL.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/apig-config-method-fields.png)

   Pada titik ini, gateway API Anda siap digunakan.

1. Untuk **Tindakan**, pilih **Deploy API**. **Untuk **tahap Deployment**, pilih **prod**, lalu pilih Deploy.**

   Setelah metode API Gateway berhasil diterapkan, lihat kinerjanya di **Tahapan>** **Detail tahap**, seperti yang ditunjukkan pada gambar berikut.
**catatan**  
Salin alamat **URL Invoke** yang muncul di bagian atas layar. Anda mungkin membutuhkannya untuk langkah selanjutnya.  
![\[Detail tahap dengan URL Invoke disorot.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/apig-config-method-invoke.png)

1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/).

1. Transfer Family seharusnya dibuat untuk Anda, saat Anda membuat tumpukan. Jika tidak, konfigurasikan server Anda menggunakan langkah-langkah ini.

   1. Pilih **Buat server** untuk membuka halaman **Buat server**. Untuk **Pilih penyedia identitas**, pilih **Kustom**, lalu pilih **Gunakan Amazon API Gateway untuk terhubung ke penyedia identitas Anda**, seperti yang ditunjukkan pada gambar berikut.  
![\[Layar penyedia identitas dengan Penyedia Identitas Kustom dipilih, dan dengan API Gateway dipilih untuk terhubung ke penyedia identitas Anda.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/create-server-choose-idp-custom.png)

   1. Di kotak teks **Berikan URL Amazon API Gateway**, tempelkan **alamat URL Panggilan** titik akhir API Gateway yang Anda buat di langkah 3 prosedur ini.

   1. Untuk **Peran**, pilih peran IAM yang dibuat oleh CloudFormation template. Peran ini memungkinkan Transfer Family untuk menjalankan metode gateway API Anda.

      Peran pemanggilan berisi nama CloudFormation tumpukan yang Anda pilih untuk tumpukan yang Anda buat di langkah 1. Ini memiliki format berikut:`CloudFormation-stack-name-TransferIdentityProviderRole-ABC123DEF456GHI`.

   1. Isi kotak yang tersisa, lalu pilih **Buat server**. Untuk detail tentang langkah-langkah yang tersisa untuk membuat server, lihat[Mengkonfigurasi titik akhir server SFTP, FTPS, atau FTP](tf-server-endpoint.md).

## Menerapkan metode API Gateway
<a name="authentication-api-method"></a>

Untuk membuat penyedia identitas khusus untuk Transfer Family, metode API Gateway Anda harus mengimplementasikan satu metode yang memiliki jalur sumber daya`/servers/serverId/users/username/config`. `username`Nilai `serverId` dan berasal dari jalur RESTful sumber daya. Juga, tambahkan `sourceIp` dan `protocol` sebagai **Parameter String Kueri URL** dalam **Permintaan Metode**, seperti yang ditunjukkan pada gambar berikut.

![\[Layar Sumber Daya API Gateway yang menampilkan detail GET metode.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/apig-config-method-request.png)


**catatan**  
Nama pengguna harus minimal 3 dan maksimal 100 karakter. Anda dapat menggunakan karakter berikut dalam nama pengguna: a—z, A-Z, 0—9, garis bawah '\$1', tanda hubung '-', titik '.' dan di tanda '@'. Nama pengguna tidak dapat dimulai dengan tanda hubung '-', titik '.' atau di tanda '@'.

Jika Transfer Family mencoba otentikasi kata sandi untuk pengguna Anda, layanan akan menyediakan bidang `Password:` header. Jika tidak ada `Password:` header, Transfer Family mencoba otentikasi kunci publik untuk mengautentikasi pengguna Anda.

Saat Anda menggunakan penyedia identitas untuk mengautentikasi dan mengotorisasi pengguna akhir, selain memvalidasi kredensialnya, Anda dapat mengizinkan atau menolak permintaan akses berdasarkan alamat IP klien yang digunakan oleh pengguna akhir Anda. Anda dapat menggunakan fitur ini untuk memastikan bahwa data yang disimpan di bucket S3 atau sistem file Amazon EFS Anda dapat diakses melalui protokol yang didukung hanya dari alamat IP yang telah Anda tentukan sebagai tepercaya. Untuk mengaktifkan fitur ini, Anda harus menyertakan `sourceIp` dalam string Query.

Jika Anda memiliki beberapa protokol yang diaktifkan untuk server Anda dan ingin memberikan akses menggunakan nama pengguna yang sama melalui beberapa protokol, Anda dapat melakukannya selama kredensyal khusus untuk setiap protokol telah diatur di penyedia identitas Anda. Untuk mengaktifkan fitur ini, Anda harus menyertakan `protocol` nilai di jalur RESTful sumber daya.

Metode API Gateway Anda harus selalu menampilkan kode status HTTP`200`. Kode status HTTP lainnya berarti ada kesalahan saat mengakses API.

**Contoh respons Amazon S3**  
Contoh badan respons adalah dokumen JSON dari formulir berikut untuk Amazon S3.

```
{
 "Role": "IAM role with configured S3 permissions",
 "PublicKeys": [
     "ssh-rsa public-key1",
     "ssh-rsa public-key2"
  ],
 "Policy": "STS Assume role session policy",
 "HomeDirectory": "/amzn-s3-demo-bucket/path/to/home/directory"
}
```

**catatan**  
 Kebijakan ini lolos dari JSON sebagai string. Contoh:   

****  

```
"Policy":
"{
  \"Version\": \"2012-10-17\",
  \"Statement\":
     [
     {\"Condition\":
        {\"StringLike\":
            {\"s3:prefix\":
               [\"user/*\", \"user/\"]}},
     \"Resource\": \"arn:aws:s3:::amzn-s3-demo-bucket\",
     \"Action\": \"s3:ListBucket\",
     \"Effect\": \"Allow\",
     \"Sid\": \"ListHomeDir\"},
     {\"Resource\": \"arn:aws:s3:::*\",
        \"Action\": [\"s3:PutObject\",
        \"s3:GetObject\",
        \"s3:DeleteObjectVersion\",
        \"s3:DeleteObject\",
        \"s3:GetObjectVersion\",
        \"s3:GetObjectACL\",
        \"s3:PutObjectACL\"],
     \"Effect\": \"Allow\",
     \"Sid\": \"HomeDirObjectAccess\"}]
}"
```

Contoh respon berikut menunjukkan bahwa pengguna memiliki tipe direktori home logis.

```
{
   "Role": "arn:aws:iam::123456789012:role/transfer-access-role-s3",
   "HomeDirectoryType":"LOGICAL",
   "HomeDirectoryDetails":"[{\"Entry\":\"/\",\"Target\":\"/amzn-s3-demo-bucket1\"}]",
   "PublicKeys":[""]
}
```

**Contoh respons Amazon EFS**  
Contoh badan respons adalah dokumen JSON dari formulir berikut untuk Amazon EFS.

```
{
 "Role": "IAM role with configured EFS permissions",
 "PublicKeys": [
     "ssh-rsa public-key1",
     "ssh-rsa public-key2"
  ],
 "PosixProfile": {
   "Uid": "POSIX user ID",
   "Gid": "POSIX group ID",
   "SecondaryGids": [Optional list of secondary Group IDs],
 },
 "HomeDirectory": "/fs-id/path/to/home/directory"
}
```

`Role`Bidang menunjukkan bahwa otentikasi berhasil terjadi. Saat melakukan otentikasi kata sandi (saat Anda menyediakan `Password:` header), Anda tidak perlu memberikan kunci publik SSH. Jika pengguna tidak dapat diautentikasi, misalnya, jika kata sandi salah, metode Anda harus mengembalikan respons tanpa `Role` disetel. Contoh respon tersebut adalah objek JSON kosong.

 Contoh respon berikut menunjukkan pengguna yang memiliki tipe direktori home logis. 

```
{
    "Role": "arn:aws:iam::123456789012:role/transfer-access-role-efs",
    "HomeDirectoryType": "LOGICAL",
    "HomeDirectoryDetails":"[{\"Entry\":\"/\",\"Target\":\"/faa1a123\"}]",
    "PublicKeys":[""],
    "PosixProfile":{"Uid":65534,"Gid":65534}
}
```

Anda dapat menyertakan kebijakan pengguna dalam fungsi Lambda dalam format JSON. Untuk informasi selengkapnya tentang mengonfigurasi kebijakan pengguna di Transfer Family, lihat[Mengelola kontrol akses](users-policies.md).

## Fungsi Lambda default
<a name="authentication-lambda-examples-default"></a>

Untuk menerapkan strategi otentikasi yang berbeda, edit fungsi Lambda yang digunakan gateway Anda. Untuk membantu Anda memenuhi kebutuhan aplikasi Anda, Anda dapat menggunakan contoh fungsi Lambda berikut di Node.js. Untuk informasi selengkapnya tentang Lambda, lihat [Panduan AWS Lambda Pengembang](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) atau Membangun fungsi [Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-nodejs.html) dengan Node.js.

Contoh fungsi Lambda berikut mengambil nama pengguna, kata sandi (jika Anda melakukan otentikasi kata sandi), ID server, protokol, dan alamat IP klien. Anda dapat menggunakan kombinasi input ini untuk mencari penyedia identitas Anda dan menentukan apakah login harus diterima.

**catatan**  
Jika Anda memiliki beberapa protokol yang diaktifkan untuk server Anda dan ingin memberikan akses menggunakan nama pengguna yang sama melalui beberapa protokol, Anda dapat melakukannya selama kredensyal khusus untuk protokol telah diatur di penyedia identitas Anda.  
Untuk File Transfer Protocol (FTP), kami sarankan untuk mempertahankan kredensyal terpisah dari Secure Shell (SSH) File Transfer Protocol (SFTP) dan File Transfer Protocol melalui SSL (FTPS). Sebaiknya pertahankan kredensyal terpisah untuk FTP karena, tidak seperti SFTP dan FTPS, FTP mentransmisikan kredensyal dalam teks yang jelas. Dengan mengisolasi kredensyal FTP dari SFTP atau FTPS, jika kredensyal FTP dibagikan atau diekspos, beban kerja Anda menggunakan SFTP atau FTPS tetap aman.

Fungsi contoh ini mengembalikan peran dan rincian direktori home logis, bersama dengan kunci publik (jika melakukan otentikasi kunci publik).

Saat Anda membuat pengguna yang dikelola layanan, Anda mengatur direktori home mereka, baik logis maupun fisik. Demikian pula, kita membutuhkan hasil fungsi Lambda untuk menyampaikan struktur direktori fisik atau logis pengguna yang diinginkan. Parameter yang Anda tetapkan bergantung pada nilai untuk [https://docs.aws.amazon.com//transfer/latest/APIReference/API_CreateUser.html#TransferFamily-CreateUser-request-HomeDirectoryType](https://docs.aws.amazon.com//transfer/latest/APIReference/API_CreateUser.html#TransferFamily-CreateUser-request-HomeDirectoryType)bidang tersebut.
+ `HomeDirectoryType`disetel ke `PATH` — `HomeDirectory` bidang tersebut kemudian harus berupa awalan bucket Amazon S3 absolut atau jalur absolut Amazon EFS yang dapat dilihat oleh pengguna Anda.
+ `HomeDirectoryType`set ke `LOGICAL` - *Jangan* mengatur `HomeDirectory` bidang. Sebagai gantinya, kami menetapkan `HomeDirectoryDetails` bidang yang menyediakan Entry/Target pemetaan yang diinginkan, mirip dengan nilai yang dijelaskan dalam [https://docs.aws.amazon.com//transfer/latest/APIReference/API_CreateUser.html#TransferFamily-CreateUser-request-HomeDirectoryMappings](https://docs.aws.amazon.com//transfer/latest/APIReference/API_CreateUser.html#TransferFamily-CreateUser-request-HomeDirectoryMappings)parameter untuk pengguna yang dikelola layanan.

Contoh fungsi tercantum dalam[Contoh fungsi Lambda](custom-lambda-idp.md#lambda-auth-examples).

## Fungsi Lambda untuk digunakan dengan AWS Secrets Manager
<a name="authentication-lambda-examples-secrets-mgr"></a>

Untuk digunakan AWS Secrets Manager sebagai penyedia identitas Anda, Anda dapat bekerja dengan fungsi Lambda di template sampel CloudFormation . Fungsi Lambda menanyakan layanan Secrets Manager dengan kredensyal Anda dan, jika berhasil, mengembalikan rahasia yang ditunjuk. Untuk informasi selengkapnya tentang Secrets Manager, lihat [Panduan Pengguna AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html).

Untuk mengunduh contoh CloudFormation template yang menggunakan fungsi Lambda ini, buka bucket [Amazon S3](https://s3.amazonaws.com/aws-transfer-resources/custom-idp-templates/aws-transfer-custom-idp-secrets-manager-apig.template.yml) yang disediakan oleh. AWS Transfer Family

## Perbaikan CloudFormation template
<a name="base64-templates"></a>

Perbaikan antarmuka API Gateway telah dilakukan pada CloudFormation template yang diterbitkan. Template sekarang menggunakan BASE64 -encoded password dengan API Gateway. Penerapan Anda yang ada terus berfungsi tanpa peningkatan ini, tetapi jangan izinkan kata sandi dengan karakter di luar set karakter AS-ASCII dasar.

Perubahan dalam template yang mengaktifkan kemampuan ini adalah sebagai berikut:
+ `GetUserConfigRequest AWS::ApiGateway::Method`Sumber daya harus memiliki `RequestTemplates` kode ini (baris miring adalah baris yang diperbarui)

  ```
  RequestTemplates:
     application/json: |
     {
        "username": "$util.urlDecode($input.params('username'))",
        "password": "$util.escapeJavaScript($util.base64Decode($input.params('PasswordBase64'))).replaceAll("\\'","'")",
        "protocol": "$input.params('protocol')",
        "serverId": "$input.params('serverId')",
        "sourceIp": "$input.params('sourceIp')"
  }
  ```
+ `GetUserConfig`Sumber daya harus diubah untuk menggunakan `PasswordBase64` header (baris miring adalah baris yang diperbarui): `RequestParameters`

  ```
  RequestParameters:
     method.request.header.PasswordBase64: false
     method.request.querystring.protocol: false
     method.request.querystring.sourceIp: false
  ```

**Untuk memeriksa apakah template untuk tumpukan Anda adalah yang terbaru**

1. Buka CloudFormation konsol di [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/).

1. Dari daftar tumpukan, pilih tumpukan Anda.

1. Dari panel detail, pilih tab **Template**.

1. Cari yang berikut ini:
   + Cari`RequestTemplates`, dan pastikan Anda memiliki baris ini:

     ```
     "password": "$util.escapeJavaScript($util.base64Decode($input.params('PasswordBase64'))).replaceAll("\\'","'")",
     ```
   + Cari`RequestParameters`, dan pastikan Anda memiliki baris ini:

     ```
     method.request.header.PasswordBase64: false
     ```

Jika Anda tidak melihat baris yang diperbarui, edit tumpukan Anda. Untuk detail tentang cara memperbarui CloudFormation tumpukan Anda, lihat [Memodifikasi template tumpukan](https://docs.aws.amazon.com//AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-get-template.html) di *AWS CloudFormation; Panduan Pengguna*.

# Menggunakan beberapa metode otentikasi
<a name="custom-idp-mfa"></a>

Server Transfer Family mengontrol logika AND saat Anda menggunakan beberapa metode otentikasi. Transfer Family memperlakukan ini sebagai dua permintaan terpisah ke penyedia identitas kustom Anda: namun, efeknya digabungkan.

Kedua permintaan harus berhasil dikembalikan dengan respons yang benar untuk memungkinkan otentikasi selesai. Transfer Family mengharuskan dua tanggapan lengkap, artinya berisi semua elemen yang diperlukan (peran, direktori beranda, kebijakan, dan profil POSIX jika Anda menggunakan Amazon EFS untuk penyimpanan). Transfer Family juga mensyaratkan bahwa respons kata sandi tidak boleh menyertakan kunci publik.

Permintaan kunci publik harus memiliki respons terpisah dari penyedia identitas. Perilaku itu tidak berubah saat menggunakan **Kata Sandi ATAU Kunci atau** **Kata Sandi DAN Kunci**.

Protokol SSH/SFTP menantang klien perangkat lunak terlebih dahulu dengan otentikasi kunci publik, kemudian meminta otentikasi kata sandi. Operasi ini mengamanatkan keduanya berhasil sebelum pengguna diizinkan untuk menyelesaikan otentikasi.

Untuk opsi penyedia identitas kustom, Anda dapat menentukan salah satu opsi berikut untuk cara mengautentikasi.
+ **Kata Sandi ATAU Kunci** — pengguna dapat mengautentikasi dengan kata sandi atau kunci mereka. Ini adalah nilai default.
+ **Hanya kata sandi** — pengguna harus memberikan kata sandi mereka untuk terhubung.
+ **Hanya kunci** — pengguna harus menyediakan kunci pribadi mereka untuk terhubung.
+ **Kata Sandi dan Kunci** — pengguna harus memberikan kunci pribadi dan kata sandi mereka untuk terhubung. Server memeriksa kunci terlebih dahulu, dan kemudian jika kuncinya valid, sistem meminta kata sandi. Jika kunci pribadi yang disediakan tidak cocok dengan kunci publik yang disimpan, otentikasi gagal.

# IPv6 dukungan untuk penyedia identitas khusus
<a name="custom-idp-ipv6"></a>

AWS Transfer Family penyedia identitas khusus sepenuhnya mendukung IPv6 koneksi. Saat menerapkan penyedia identitas khusus, fungsi Lambda Anda dapat menerima dan memproses permintaan otentikasi dari keduanya IPv4 dan IPv6 klien tanpa konfigurasi tambahan apa pun. Fungsi Lambda menerima alamat IP klien di `sourceIp` bidang permintaan, yang dapat berupa IPv4 alamat (misalnya,`203.0.113.42`) atau IPv6 alamat (misalnya,`2001:db8:85a3:8d3:1319:8a2e:370:7348`). Implementasi penyedia identitas kustom Anda harus menangani kedua format alamat dengan tepat.

**penting**  
Jika penyedia identitas kustom Anda melakukan validasi atau pencatatan berbasis IP, pastikan implementasi Anda menangani format IPv6 alamat dengan benar. IPv6 alamat lebih panjang dari IPv4 alamat dan menggunakan format notasi yang berbeda.

**catatan**  
Saat menangani IPv6 alamat di penyedia identitas kustom Anda, pastikan Anda menggunakan fungsi penguraian IPv6 alamat yang tepat daripada perbandingan string sederhana. IPv6alamat dapat direpresentasikan dalam berbagai format kanonik (misalnya `fd00:b600::ec2` atau`fd00:b600:0:0:0:0:0:ec2`). Gunakan pustaka IPv6 alamat atau fungsi yang sesuai dalam bahasa implementasi Anda untuk memvalidasi dan membandingkan IPv6 alamat dengan benar.

**Example Menangani keduanya IPv4 dan IPv6 alamat di penyedia identitas khusus**  

```
def lambda_handler(event, context):
    # Extract the source IP address from the request
    source_ip = event.get('sourceIp', '')
    
    # Log the client IP address (works for both IPv4 and IPv6)
    print(f"Authentication request from: {source_ip}")
    
    # Example of IP-based validation that works with both IPv4 and IPv6
    if is_ip_allowed(source_ip):
        # Continue with authentication
        # ...
    else:
        # Reject the authentication request
        return {
            "Role": "",
            "HomeDirectory": "",
            "Status": "DENIED"
        }
```

Untuk informasi selengkapnya tentang penerapan penyedia identitas kustom, lihat[Menggunakan AWS Lambda untuk mengintegrasikan penyedia identitas Anda](custom-lambda-idp.md).

# Menggunakan AWS Directory Service untuk Microsoft Active Directory
<a name="directory-services-users"></a>

Anda dapat menggunakan AWS Transfer Family untuk mengautentikasi pengguna akhir transfer file Anda menggunakan AWS Directory Service for Microsoft Active Directory. Ini memungkinkan migrasi mulus dari alur kerja transfer file yang mengandalkan otentikasi Active Directory tanpa mengubah kredensyal pengguna akhir atau memerlukan otorisasi khusus. 

Dengan AWS Managed Microsoft AD, Anda dapat dengan aman memberikan akses kepada Directory Service pengguna dan grup melalui SFTP, FTPS, dan FTP untuk data yang disimpan di Amazon Simple Storage Service (Amazon S3) atau Amazon Elastic File System (Amazon EFS). Jika Anda menggunakan Active Directory untuk menyimpan kredensi pengguna Anda, Anda sekarang memiliki cara yang lebih mudah untuk mengaktifkan transfer file untuk pengguna ini. 

Anda dapat memberikan akses ke grup Active Directory AWS Managed Microsoft AD di lingkungan lokal atau di AWS Cloud menggunakan konektor Active Directory. Anda dapat memberi pengguna yang sudah dikonfigurasi di lingkungan Microsoft Windows Anda, baik di AWS Cloud atau di jaringan lokal mereka, akses ke AWS Transfer Family server yang menggunakan AWS Managed Microsoft AD identitas. Blog AWS penyimpanan berisi posting yang merinci solusi untuk menggunakan Active Directory dengan Transfer Family: [Sederhanakan otentikasi Active Directory dengan penyedia identitas kustom untuk](https://aws.amazon.com/blogs/storage/simplify-active-directory-authentication-with-a-custom-identity-provider-for-aws-transfer-family/). AWS Transfer Family

**catatan**  
AWS Transfer Family tidak mendukung Simple AD.
Transfer Family tidak mendukung konfigurasi Direktori Aktif lintas wilayah: kami hanya mendukung integrasi Direktori Aktif yang berada di wilayah yang sama dengan server Transfer Family.
Transfer Family tidak mendukung penggunaan salah satu AWS Managed Microsoft AD atau AD Connector untuk mengaktifkan otentikasi multi-faktor (MFA) untuk infrastruktur MFA berbasis Radius yang ada.
AWS Transfer Family tidak mendukung wilayah yang direplikasi dari Direktori Aktif Terkelola.

Untuk menggunakannya AWS Managed Microsoft AD, Anda harus melakukan langkah-langkah berikut:

1. Buat satu atau lebih AWS Managed Microsoft AD direktori menggunakan Directory Service konsol.

1. Gunakan konsol Transfer Family untuk membuat server yang digunakan AWS Managed Microsoft AD sebagai penyedia identitasnya. 

1. Siapkan AWS Direktori menggunakan Konektor Direktori Aktif.

1. Tambahkan akses dari satu atau beberapa Directory Service grup Anda. 

1. Meskipun tidak diperlukan, kami menyarankan Anda menguji dan memverifikasi akses pengguna.

**Topics**
+ [Sebelum Anda mulai menggunakan AWS Directory Service for Microsoft Active Directory](#managed-ad-prereq)
+ [Bekerja dengan ranah Active Directory](#managed-ad-realms)
+ [Memilih AWS Managed Microsoft AD sebagai penyedia identitas Anda](#managed-ad-identity-provider)
+ [Menghubungkan ke Microsoft Active Directory di lokasi](#on-prem-ad)
+ [Memberikan akses ke grup](#directory-services-grant-access)
+ [Menguji pengguna](#directory-services-test-user)
+ [Menghapus akses server untuk grup](#directory-services-misc)
+ [Menghubungkan ke server menggunakan SSH (Secure Shell)](#directory-services-ssh-procedure)
+ [Menghubungkan AWS Transfer Family ke Active Directory yang dikelola sendiri menggunakan hutan dan trust](#directory-services-ad-trust)

## Sebelum Anda mulai menggunakan AWS Directory Service for Microsoft Active Directory
<a name="managed-ad-prereq"></a>

**catatan**  
AWS Transfer Family memiliki batas default 100 grup Active Directory per server. Jika kasus penggunaan Anda memerlukan lebih dari 100 grup, pertimbangkan untuk menggunakan solusi penyedia identitas kustom seperti yang dijelaskan dalam [Simplify Active Directory autentikasi dengan penyedia identitas kustom untuk](https://aws.amazon.com/blogs/storage/simplify-active-directory-authentication-with-a-custom-identity-provider-for-aws-transfer-family/). AWS Transfer Family

### Menyediakan pengenal unik untuk grup iklan Anda
<a name="add-identifier-adgroups"></a>

Sebelum dapat menggunakan AWS Managed Microsoft AD, Anda harus memberikan pengenal unik untuk setiap grup di direktori Microsoft AD Anda. Anda dapat menggunakan pengenal keamanan (SID) untuk setiap grup untuk melakukan ini. Pengguna grup yang Anda asosiasikan memiliki akses ke sumber daya Amazon S3 atau Amazon EFS Anda melalui protokol yang diaktifkan menggunakan Transfer Family. AWS 

Gunakan PowerShell perintah Windows berikut untuk mengambil SID untuk grup, ganti *YourGroupName* dengan nama grup. 

```
Get-ADGroup -Filter {samAccountName -like "YourGroupName*"} -Properties * | Select SamAccountName,ObjectSid
```

**catatan**  
Jika Anda menggunakan AWS Directory Service sebagai penyedia identitas Anda, dan jika `userPrincipalName` dan `SamAccountName` memiliki nilai yang berbeda, AWS Transfer Family terima nilainya. `SamAccountName` Transfer Family tidak menerima nilai yang ditentukan dalam`userPrincipalName`.

### Tambahkan Directory Service izin ke peran Anda
<a name="add-active-directory-permissions"></a>

Anda juga memerlukan izin Directory Service API untuk digunakan AWS Directory Service sebagai penyedia identitas Anda. Izin berikut diperlukan atau disarankan:
+ `ds:DescribeDirectories`Diperlukan Transfer Family untuk mencari direktori
+ `ds:AuthorizeApplication`diperlukan untuk menambahkan otorisasi untuk Transfer Family
+ `ds:UnauthorizeApplication`disarankan untuk menghapus sumber daya apa pun yang dibuat untuk sementara, jika terjadi kesalahan selama proses pembuatan server

Tambahkan izin ini ke peran yang Anda gunakan untuk membuat server Transfer Family Anda. Untuk detail selengkapnya tentang izin ini, lihat Izin [Directory Service API: Referensi tindakan, sumber daya, dan kondisi](https://docs.aws.amazon.com//directoryservice/latest/admin-guide/UsingWithDS_IAM_ResourcePermissions.html).

## Bekerja dengan ranah Active Directory
<a name="managed-ad-realms"></a>

 Saat Anda mempertimbangkan cara agar pengguna Active Directory mengakses AWS Transfer Family server, ingatlah ranah pengguna, dan ranah grup mereka. Idealnya, ranah pengguna dan ranah grup mereka harus cocok. Artinya, baik pengguna maupun grup berada di ranah default, atau keduanya berada di ranah tepercaya. Jika tidak demikian, pengguna tidak dapat diautentikasi oleh Transfer Family.

Anda dapat menguji pengguna untuk memastikan konfigurasi sudah benar. Lihat perinciannya di [Menguji pengguna](#directory-services-test-user). Jika ada masalah dengan user/group ranah, Anda menerima kesalahan, Tidak ada akses terkait yang ditemukan untuk grup pengguna.

## Memilih AWS Managed Microsoft AD sebagai penyedia identitas Anda
<a name="managed-ad-identity-provider"></a>

Bagian ini menjelaskan cara menggunakan AWS Directory Service for Microsoft Active Directory dengan server.

**Untuk digunakan AWS Managed Microsoft AD dengan Transfer Family**

1. Masuk ke Konsol Manajemen AWS dan buka Directory Service konsol di [https://console.aws.amazon.com/directoryservicev2/](https://console.aws.amazon.com/directoryservicev2/).

   Gunakan Directory Service konsol untuk mengonfigurasi satu atau beberapa direktori terkelola. Untuk informasi lebih lanjut, lihat [AWS Managed Microsoft AD](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/directory_microsoft_ad.html) dalam *Panduan Admin Directory Service *.  
![\[Konsol Directory Service menampilkan daftar direktori dan detailnya.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/directory-services-AD-list.png)

1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/), dan pilih **Buat server**.

1. Pada halaman **Pilih protokol**, pilih satu atau beberapa protokol dari daftar.
**catatan**  
Jika Anda memilih **FTPS**, Anda harus memberikan AWS Certificate Manager sertifikat. 

1. Untuk **Pilih penyedia identitas**, pilih **AWS Directory Service**.  
![\[Tangkapan layar konsol yang menampilkan bagian Pilih penyedia identitas dengan Directory Service dipilih.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/create-server-choose-idp-directory-services.png)

1. Daftar **Direktori** berisi semua direktori terkelola yang telah Anda konfigurasi. Pilih direktori dari daftar, dan pilih **Berikutnya**.
**catatan**  
 Direktori Cross-Account dan Shared tidak didukung untuk. AWS Managed Microsoft AD
Untuk menyiapkan server dengan Directory Service sebagai penyedia identitas Anda, Anda perlu menambahkan beberapa Directory Service izin. Lihat perinciannya di [Sebelum Anda mulai menggunakan AWS Directory Service for Microsoft Active Directory](#managed-ad-prereq).

1. Untuk menyelesaikan pembuatan server, gunakan salah satu prosedur berikut:
   + [Buat server berkemampuan SFTP](create-server-sftp.md)
   + [Buat server berkemampuan FTPS](create-server-ftps.md)
   + [Buat server berkemampuan FTP](create-server-ftp.md)

   Dalam prosedur tersebut, lanjutkan dengan langkah berikut memilih penyedia identitas.

**penting**  
 Anda tidak dapat menghapus direktori Microsoft AD Directory Service jika Anda menggunakannya di server Transfer Family. Anda harus menghapus server terlebih dahulu, dan kemudian Anda dapat menghapus direktori. 

## Menghubungkan ke Microsoft Active Directory di lokasi
<a name="on-prem-ad"></a>

Bagian ini menjelaskan cara menyiapkan AWS Direktori menggunakan AD Connector

**Untuk mengatur AWS Direktori menggunakan AD Connector**

1. Buka konsol [Directory Service](https://console.aws.amazon.com/directoryservicev2/) dan pilih **Directories.**

1. Pilih **Siapkan direktori**.

1. Untuk jenis direktori, pilih **AD Connector**.

1. Pilih ukuran direktori, pilih **Berikutnya**, lalu pilih VPC dan Subnet Anda.

1. Pilih **Berikutnya**, lalu isi kolom sebagai berikut:
   + **Nama DNS direktori: masukkan nama** domain yang Anda gunakan untuk Microsoft Active Directory Anda.
   + **Alamat IP DNS: masukkan alamat IP** Microsoft Active Directory Anda.
   + **Nama pengguna dan **kata sandi** akun server**: masukkan detail untuk akun layanan yang akan digunakan.

1. Lengkapi layar untuk membuat layanan direktori.

Langkah selanjutnya adalah membuat server Transfer Family dengan protokol SFTP, dan tipe penyedia identitas **AWS Directory** Service. Dari daftar drop-down **Direktori**, pilih direktori yang Anda tambahkan di prosedur sebelumnya.

## Memberikan akses ke grup
<a name="directory-services-grant-access"></a>

 Setelah Anda membuat server, Anda harus memilih grup mana di direktori yang harus memiliki akses untuk mengunggah dan mengunduh file melalui protokol yang diaktifkan menggunakan. AWS Transfer Family Anda melakukan ini dengan membuat *akses*.

**catatan**  
AWS Transfer Family memiliki batas default 100 grup Active Directory per server. Jika kasus penggunaan Anda memerlukan lebih dari 100 grup, pertimbangkan untuk menggunakan solusi penyedia identitas kustom seperti yang dijelaskan dalam [Simplify Active Directory autentikasi dengan penyedia identitas kustom untuk](https://aws.amazon.com/blogs/storage/simplify-active-directory-authentication-with-a-custom-identity-provider-for-aws-transfer-family/). AWS Transfer Family

**catatan**  
Pengguna harus menjadi bagian *langsung* dari grup tempat Anda memberikan akses. Misalnya, asumsikan bahwa Bob adalah pengguna dan milik GroupA, dan GroupA sendiri termasuk dalam GroupB.  
Jika Anda memberikan akses ke GroUpa, Bob diberikan akses.
 Jika Anda memberikan akses ke GroupB (dan bukan ke GroupA), Bob tidak memiliki akses.

**Untuk memberikan akses ke grup**

1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/).

1. Arahkan ke halaman detail server Anda.

1.  Di bagian **Accesses**, pilih **Tambah akses**. 

1.  Masukkan SID untuk AWS Managed Microsoft AD direktori yang ingin Anda akses ke server ini.
**catatan**  
Untuk informasi tentang cara menemukan SID untuk grup Anda, lihat[Sebelum Anda mulai menggunakan AWS Directory Service for Microsoft Active Directory](#managed-ad-prereq).

1. Untuk **Access**, pilih peran AWS Identity and Access Management (IAM) untuk grup.

1.  Di bagian **Kebijakan**, pilih kebijakan. Pengaturan default adalah **None**. 

1. Untuk **direktori Home**, pilih bucket Amazon S3 yang sesuai dengan direktori home grup.
**catatan**  
Anda dapat membatasi bagian bucket yang dilihat pengguna dengan membuat kebijakan sesi. Misalnya, untuk membatasi pengguna ke folder mereka sendiri di bawah `/filetest` direktori, masukkan teks berikut di dalam kotak.  

   ```
   /filetest/${transfer:UserName}
   ```
 Untuk mempelajari lebih lanjut tentang membuat kebijakan sesi, lihat[Membuat kebijakan sesi untuk bucket Amazon S3](users-policies-session.md). 

1.  Pilih **Tambah** untuk membuat asosiasi. 

1. Pilih server Anda.

1. Pilih **Tambahkan akses**.

   1.  Masukkan SID untuk grup. 
**catatan**  
Untuk informasi tentang cara menemukan SID, lihat[Sebelum Anda mulai menggunakan AWS Directory Service for Microsoft Active Directory](#managed-ad-prereq).

1. Pilih **Tambahkan akses**.

 Di bagian **Accesses**, akses untuk server terdaftar. 

![\[Konsol yang menampilkan bagian Accesses dengan akses server yang terdaftar.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/accesses-list.png)


## Menguji pengguna
<a name="directory-services-test-user"></a>

Anda dapat menguji apakah pengguna memiliki akses ke AWS Managed Microsoft AD direktori untuk server Anda.

**catatan**  
Seorang pengguna harus berada dalam satu grup (ID eksternal) yang tercantum di bagian **Access** pada halaman **konfigurasi Endpoint**. Jika pengguna tidak berada dalam grup, atau berada di lebih dari satu grup, pengguna tersebut tidak diberikan akses.

**Untuk menguji apakah pengguna tertentu memiliki akses**

1. Pada halaman detail server, pilih **Tindakan**, lalu pilih **Uji**.

1. Untuk **pengujian penyedia Identitas**, masukkan kredensi masuk untuk pengguna yang berada di salah satu grup yang memiliki akses. 

1.  Pilih **Uji**. 

Anda melihat tes penyedia identitas yang berhasil, menunjukkan bahwa pengguna yang dipilih telah diberikan akses ke server.

![\[Tangkapan layar konsol dari respons pengujian penyedia identitas yang berhasil.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/identity-provider-test-success.png)


Jika pengguna termasuk dalam lebih dari satu grup yang memiliki akses, Anda menerima tanggapan berikut.

```
"Response":"",
"StatusCode":200,
"Message":"More than one associated access found for user's groups."
```

## Menghapus akses server untuk grup
<a name="directory-services-misc"></a>

**Untuk menghapus akses server untuk grup**

1. Pada halaman detail server, pilih **Tindakan**, lalu pilih **Hapus Akses**.

1. Di kotak dialog, konfirmasikan bahwa Anda ingin menghapus akses untuk grup ini.

 Ketika Anda kembali ke halaman detail server, Anda melihat bahwa akses untuk grup ini tidak lagi terdaftar. 

## Menghubungkan ke server menggunakan SSH (Secure Shell)
<a name="directory-services-ssh-procedure"></a>

Setelah Anda mengkonfigurasi server dan pengguna Anda, Anda dapat terhubung ke server menggunakan SSH dan menggunakan nama pengguna yang sepenuhnya memenuhi syarat untuk pengguna yang memiliki akses. 

```
sftp user@active-directory-domain@vpc-endpoint
```

Sebagai contoh: `transferuserexample@mycompany.com@vpce-0123456abcdef-789xyz.vpc-svc-987654zyxabc.us-east-1.vpce.amazonaws.com`.

Format ini menargetkan pencarian federasi, membatasi pencarian Direktori Aktif yang berpotensi besar. 

**catatan**  
Anda dapat menentukan nama pengguna sederhana. Namun, dalam hal ini, kode Active Directory harus mencari semua direktori di federasi. Ini mungkin membatasi pencarian, dan otentikasi mungkin gagal bahkan jika pengguna harus memiliki akses. 

Setelah mengautentikasi, pengguna berada di direktori home yang Anda tentukan saat Anda mengonfigurasi pengguna.

## Menghubungkan AWS Transfer Family ke Active Directory yang dikelola sendiri menggunakan hutan dan trust
<a name="directory-services-ad-trust"></a>

Directory Service memiliki opsi berikut yang tersedia untuk terhubung ke Direktori Aktif yang dikelola sendiri:
+ Kepercayaan hutan satu arah (keluar dari AWS Managed Microsoft AD dan masuk untuk Active Directory lokal) hanya berfungsi untuk domain root.
+ Untuk domain anak, Anda dapat menggunakan salah satu dari berikut ini:
  + Gunakan kepercayaan dua arah antara Active AWS Managed Microsoft AD Directory dan lokal
  + Gunakan kepercayaan eksternal satu arah untuk setiap domain anak.

Saat menghubungkan ke server menggunakan domain tepercaya, pengguna perlu menentukan domain tepercaya, misalnya`transferuserexample@mycompany.com`.

# Menggunakan AWS Directory Service untuk Entra ID Domain Services
<a name="azure-sftp"></a>

 Untuk pelanggan yang membutuhkan Transfer SFTP saja, dan tidak ingin mengelola domain, ada Simple Active Directory. Atau, pelanggan yang menginginkan manfaat Active Directory dan ketersediaan tinggi dalam layanan yang dikelola sepenuhnya dapat menggunakan Microsoft AD yang AWS Dikelola. Terakhir, bagi pelanggan yang ingin memanfaatkan hutan Direktori Aktif yang ada untuk Transfer SFTP mereka, ada Konektor Direktori Aktif. 

Perhatikan hal-hal berikut:
+ Untuk memanfaatkan hutan Active Directory yang ada untuk kebutuhan Transfer SFTP Anda, Anda dapat menggunakan [Active Directory](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/directory_ad_connector.html) Connector.
+ Jika Anda menginginkan manfaat Active Directory dan ketersediaan tinggi dalam layanan yang dikelola sepenuhnya, Anda dapat menggunakannya AWS Directory Service for Microsoft Active Directory. Lihat perinciannya di [Menggunakan AWS Directory Service untuk Microsoft Active Directory](directory-services-users.md).

Topik ini menjelaskan cara menggunakan Konektor Direktori Aktif dan [Layanan Domain Entra ID (sebelumnya Azure AD)](https://azure.microsoft.com/en-us/services/active-directory-ds/) untuk mengautentikasi pengguna Transfer SFTP dengan ID Entra.

**Topics**
+ [Sebelum Anda mulai menggunakan AWS Directory Service untuk Entra ID Domain Services](#azure-prereq)
+ [Langkah 1: Menambahkan Layanan Domain Entra ID](#azure-add-adds)
+ [Langkah 2: Membuat akun layanan](#azure-create-service-acct)
+ [Langkah 3: Menyiapkan AWS Direktori menggunakan AD Connector](#azure-setup-directory)
+ [Langkah 4: Menyiapkan AWS Transfer Family server](#azure-setup-transfer-server)
+ [Langkah 5: Memberikan akses ke grup](#azure-grant-access)
+ [Langkah 6: Menguji pengguna](#azure-test)

## Sebelum Anda mulai menggunakan AWS Directory Service untuk Entra ID Domain Services
<a name="azure-prereq"></a>

**catatan**  
AWS Transfer Family memiliki batas default 100 grup Active Directory per server. Jika kasus penggunaan Anda memerlukan lebih dari 100 grup, pertimbangkan untuk menggunakan solusi penyedia identitas kustom seperti yang dijelaskan dalam [Simplify Active Directory autentikasi dengan penyedia identitas kustom untuk](https://aws.amazon.com/blogs/storage/simplify-active-directory-authentication-with-a-custom-identity-provider-for-aws-transfer-family/). AWS Transfer Family

Untuk AWS, Anda memerlukan yang berikut ini:
+ Virtual Private Cloud (VPC) di AWS wilayah tempat Anda menggunakan server Transfer Family
+ Setidaknya dua subnet pribadi di VPC Anda
+ VPC harus memiliki konektivitas internet
+ Gateway pelanggan dan gateway pribadi Virtual untuk koneksi site-to-site VPN dengan Microsoft Entra

Untuk Microsoft Entra, Anda memerlukan yang berikut ini:
+ ID Entra dan layanan domain direktori Aktif
+ Grup sumber daya Entra
+ Jaringan virtual Entra
+ Konektivitas VPN antara VPC Amazon Anda dan grup sumber daya Entra Anda
**catatan**  
Ini bisa melalui terowongan IPSEC asli atau menggunakan peralatan VPN. Dalam topik ini, kami menggunakan terowongan IPSEC antara gateway jaringan Virtual Entra dan gateway jaringan lokal. Terowongan harus dikonfigurasi untuk memungkinkan lalu lintas antara titik akhir Layanan Domain Entra Anda dan subnet yang menampung VPC Anda. AWS 
+ Gateway pelanggan dan gateway pribadi Virtual untuk koneksi site-to-site VPN dengan Microsoft Entra

Diagram berikut menunjukkan konfigurasi yang diperlukan sebelum Anda mulai.

![\[Entra/Azure AD dan diagram arsitektur. AWS Transfer Family AWS VPC yang terhubung ke jaringan virtual Entra melalui internet, menggunakan konektor AWS Directory Service ke Entra Domain Service.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/azure-architecture.png)


## Langkah 1: Menambahkan Layanan Domain Entra ID
<a name="azure-add-adds"></a>

 Entra ID tidak mendukung instance penggabungan Domain secara default. Untuk melakukan tindakan seperti Gabung Domain, dan untuk menggunakan alat seperti Kebijakan Grup, administrator harus mengaktifkan Layanan Domain ID Entra. Jika Anda belum menambahkan Entra DS, atau implementasi yang ada tidak terkait dengan domain yang Anda inginkan server Transfer SFTP Anda gunakan, Anda harus menambahkan instance baru.

Untuk informasi tentang mengaktifkan Layanan Domain ID Entra, lihat [Tutorial: Membuat dan mengonfigurasi domain terkelola Microsoft Entra Domain Services](https://docs.microsoft.com/en-us/azure/active-directory-domain-services/active-directory-ds-getting-started).

**catatan**  
Saat Anda mengaktifkan Entra DS, pastikan itu dikonfigurasi untuk grup sumber daya dan domain Entra tempat Anda menghubungkan server Transfer SFTP Anda.

![\[Layar layanan domain entra yang menampilkan grup sumber daya bob.us berjalan.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/azure-ad-add-instance.png)


## Langkah 2: Membuat akun layanan
<a name="azure-create-service-acct"></a>

 Entra harus memiliki satu akun layanan yang merupakan bagian dari grup Admin di Entra DS. Akun ini digunakan dengan konektor AWS Active Directory. Pastikan akun ini sinkron dengan Entra DS. 

![\[Layar Entra menampilkan profil untuk pengguna.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/azure-service-acct.png)


**Tip**  
Otentikasi multi-faktor untuk Entra ID tidak didukung untuk server Transfer Family yang menggunakan protokol SFTP. Server Transfer Family tidak dapat menyediakan token MFA setelah pengguna mengautentikasi ke SFTP. Pastikan untuk menonaktifkan MFA sebelum Anda mencoba untuk terhubung.  

![\[Entra detail otentikasi multi-faktor, menunjukkan status MFA sebagai dinonaktifkan untuk dua pengguna.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/azure-ad-mfa-disable.png)


## Langkah 3: Menyiapkan AWS Direktori menggunakan AD Connector
<a name="azure-setup-directory"></a>

 Setelah Anda mengonfigurasi Entra DS, dan membuat akun layanan dengan terowongan VPN IPSEC antara AWS VPC dan jaringan Virtual Entra, Anda dapat menguji konektivitas dengan melakukan ping ke alamat IP DNS Entra DS dari instans EC2 mana pun. AWS 

Setelah Anda memverifikasi koneksi aktif, Anda dapat melanjutkan di bawah ini.

**Untuk mengatur AWS Direktori menggunakan AD Connector**

1. Buka konsol [Directory Service](https://console.aws.amazon.com/directoryservicev2/) dan pilih **Directories.**

1. Pilih **Siapkan direktori**.

1. Untuk jenis direktori, pilih **AD Connector**.

1. Pilih ukuran direktori, pilih **Berikutnya**, lalu pilih VPC dan Subnet Anda.

1. Pilih **Berikutnya**, lalu isi kolom sebagai berikut:
   + **Nama DNS direktori**: masukkan nama domain yang Anda gunakan untuk Entra DS Anda.
   + **Alamat IP DNS: masukkan alamat IP** Entra DS Anda.
   + **Nama pengguna dan **kata sandi** akun server**: masukkan detail untuk akun layanan yang Anda buat di *Langkah 2: Buat akun layanan*.

1. Lengkapi layar untuk membuat layanan direktori.

Sekarang status direktori harus **Aktif**, dan siap digunakan dengan server Transfer SFTP.

![\[Layar Layanan Direktori menampilkan satu direktori dengan status Aktif, seperti yang diperlukan.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/azure-connector-ready.png)


## Langkah 4: Menyiapkan AWS Transfer Family server
<a name="azure-setup-transfer-server"></a>

Buat server Transfer Family dengan protokol SFTP, dan jenis penyedia identitas **AWS Directory** Service. Dari daftar drop-down **Directory**, pilih direktori yang Anda tambahkan di *Langkah 3: Setup AWS Directory menggunakan AD Connector*.

**catatan**  
Anda tidak dapat menghapus direktori Microsoft AD di AWS Directory Service jika Anda menggunakannya di server Transfer Family. Anda harus menghapus server terlebih dahulu, dan kemudian Anda dapat menghapus direktori. 

## Langkah 5: Memberikan akses ke grup
<a name="azure-grant-access"></a>

 Setelah Anda membuat server, Anda harus memilih grup mana di direktori yang harus memiliki akses untuk mengunggah dan mengunduh file melalui protokol yang diaktifkan menggunakan. AWS Transfer Family Anda melakukan ini dengan membuat *akses*.

**catatan**  
Pengguna harus menjadi bagian *langsung* dari grup tempat Anda memberikan akses. Misalnya, asumsikan bahwa Bob adalah pengguna dan milik GroupA, dan GroupA sendiri termasuk dalam GroupB.  
Jika Anda memberikan akses ke GroUpa, Bob diberikan akses.
 Jika Anda memberikan akses ke GroupB (dan bukan ke GroupA), Bob tidak memiliki akses.

 Untuk memberikan akses, Anda perlu mengambil SID untuk grup.

Gunakan PowerShell perintah Windows berikut untuk mengambil SID untuk grup, ganti *YourGroupName* dengan nama grup. 

```
Get-ADGroup -Filter {samAccountName -like "YourGroupName*"} -Properties * | Select SamAccountName,ObjectSid
```

![\[Windows PowerShell menunjukkan Object SID sedang diambil.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/azure-grant-access.png)


**Berikan akses ke grup**

1. Buka [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/).

1. Arahkan ke halaman detail server Anda dan di bagian **Akses**, pilih **Tambahkan akses**. 

1. Masukkan SID yang Anda terima dari output dari prosedur sebelumnya.

1. Untuk **Access**, pilih AWS Identity and Access Management peran untuk grup.

1. Di bagian **Kebijakan**, pilih kebijakan. Nilai defaultnya adalah **None**.

1. Untuk **direktori Home**, pilih bucket Amazon S3 yang sesuai dengan direktori home grup.

1. Pilih **Tambah** untuk membuat asosiasi.

Detail dari server Transfer Anda akan terlihat mirip dengan yang berikut ini:

![\[Sebagian dari layar detail server Transfer Family, menampilkan contoh ID Direktori untuk penyedia Identitas.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/azure-assoc-1.png)


![\[Sebagian dari layar detail server Transfer Family, menampilkan ID Eksternal direktori aktif di bagian Accesses layar.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/azure-assoc-2.png)


## Langkah 6: Menguji pengguna
<a name="azure-test"></a>

Anda dapat menguji ([Menguji pengguna](directory-services-users.md#directory-services-test-user)) apakah pengguna memiliki akses ke AWS Managed Microsoft AD direktori untuk server Anda. Seorang pengguna harus berada dalam satu grup (ID eksternal) yang tercantum di bagian **Access** pada halaman **konfigurasi Endpoint**. Jika pengguna tidak berada dalam grup, atau berada di lebih dari satu grup, pengguna tersebut tidak diberikan akses. 

# Menggunakan direktori logis untuk menyederhanakan struktur direktori Transfer Family
<a name="logical-dir-mappings"></a>

Direktori logis menyederhanakan struktur direktori AWS Transfer Family server Anda. Dengan direktori logis, Anda dapat membuat struktur direktori virtual dengan nama yang mudah digunakan yang dinavigasi pengguna saat menghubungkan ke bucket Amazon S3 atau sistem file Amazon EFS Anda. Ini mencegah pengguna melihat jalur direktori, nama bucket, dan nama sistem file yang sebenarnya.

**catatan**  
Anda harus menggunakan kebijakan sesi sehingga pengguna akhir Anda hanya dapat melakukan operasi yang Anda izinkan untuk mereka lakukan.  
Anda harus menggunakan direktori logis untuk membuat direktori virtual yang ramah pengguna untuk pengguna akhir Anda dan mengabstraksi nama bucket jauh. Pemetaan direktori logis hanya memungkinkan pengguna untuk mengakses jalur logis dan subdirektori yang ditunjuk, dan melarang jalur relatif yang melintasi akar logis.  
Transfer Family memvalidasi setiap jalur yang mungkin menyertakan elemen relatif dan secara aktif memblokir jalur ini agar tidak diselesaikan sebelum kami meneruskan jalur ini ke Amazon S3; ini mencegah pengguna Anda bergerak melampaui pemetaan logisnya.  
Meskipun Transfer Family mencegah pengguna akhir mengakses direktori di luar direktori logisnya, kami sarankan Anda juga menggunakan peran unik atau kebijakan sesi untuk menerapkan hak istimewa paling sedikit di tingkat penyimpanan.

## Memahami struktur chroot dan direktori
<a name="chroot-dir-structure"></a>

Operasi **chroot** memungkinkan Anda mengatur direktori root pengguna ke lokasi mana pun dalam hierarki penyimpanan Anda. Ini membatasi pengguna ke direktori home atau root yang dikonfigurasi, mencegah akses ke direktori tingkat yang lebih tinggi.

Pertimbangkan kasus di mana pengguna Amazon S3 terbatas. `amzn-s3-demo-bucket/home/${transfer:UserName}` Tanpa **chroot**, beberapa klien mungkin mengizinkan pengguna untuk pindah ke/amzn-s3-demo-bucket/home, memerlukan logout dan login untuk kembali ke direktori yang tepat. Melakukan operasi **chroot** mencegah masalah ini.

Anda dapat membuat struktur direktori kustom di beberapa bucket dan awalan. Ini berguna jika alur kerja Anda memerlukan tata letak direktori tertentu yang tidak dapat disediakan oleh awalan bucket saja. Anda juga dapat menautkan ke beberapa lokasi yang tidak berdekatan dalam Amazon S3, mirip dengan membuat tautan simbolis dalam sistem file Linux di mana jalur direktori Anda mereferensikan lokasi yang berbeda dalam sistem file.

## Aturan untuk menggunakan direktori logis
<a name="logical-dir-rules"></a>

Bagian ini menjelaskan beberapa aturan dan pertimbangan lain untuk menggunakan direktori logis.

### Batas pemetaan
<a name="key-mapping-rules"></a>
+ Hanya satu pemetaan yang diizinkan saat `Entry` `"/"` (tidak ada jalur tumpang tindih yang diizinkan).
+ Direktori logis mendukung pemetaan hingga 2,1 MB untuk IDP kustom dan pengguna AD, dan 2.000 entri untuk pengguna yang dikelola layanan. Anda dapat menghitung ukuran pemetaan Anda sebagai berikut:

  1. Tuliskan pemetaan khas dalam format`{"Entry":"/entry-path","Target":"/target-path"}`, di mana `entry-path` dan `target-path` merupakan nilai aktual yang akan Anda gunakan.

  1. Hitung karakter dalam string itu, lalu tambahkan satu (1).

  1. Kalikan angka itu dengan perkiraan jumlah pemetaan yang Anda miliki untuk server Anda.

  Jika jumlah yang Anda perkirakan pada langkah 3 kurang dari 2,1 MB, maka pemetaan Anda berada dalam batas yang dapat diterima.

### Persyaratan jalur target
<a name="target-path"></a>
+ Gunakan `${transfer:UserName}` variabel jika bucket atau jalur sistem file telah diparameterisasi berdasarkan nama pengguna.
+ Target dapat dikonfigurasi untuk menunjuk ke bucket Amazon S3 atau sistem file yang berbeda, selama peran IAM terkait memiliki izin yang diperlukan untuk mengakses lokasi penyimpanan tersebut.
+ Semua target harus dimulai dengan garis miring (`/`) tetapi tidak dapat diakhiri dengan satu. Misalnya, `/amzn-s3-demo-bucket/images` benar, sementara `amzn-s3-demo-bucket/images ` dan `/amzn-s3-demo-bucket/images/` tidak.

### Pertimbangan penyimpanan
<a name="storage-considerations"></a>
+ Amazon S3 adalah toko objek di mana folder hanya ada sebagai konsep virtual. Saat menggunakan penyimpanan Amazon S3, Transfer Family melaporkan awalan sebagai direktori dalam operasi STAT, bahkan jika tidak ada objek zero-byte dengan garis miring. Objek zero-byte yang tepat dengan garis miring juga dilaporkan sebagai direktori dalam operasi STAT. Perilaku ini dijelaskan dalam [Mengatur objek di konsol Amazon S3 menggunakan folder](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-folders.html) di *Panduan Pengguna Layanan Penyimpanan Sederhana Amazon*.
+ Untuk aplikasi yang perlu membedakan antara file dan folder, gunakan Amazon Elastic File System (Amazon EFS) sebagai opsi penyimpanan Transfer Family Anda.
+ Jika Anda menentukan nilai direktori logis untuk pengguna Anda, parameter yang Anda gunakan bergantung pada jenis pengguna:
  + Untuk pengguna yang dikelola layanan, berikan nilai direktori logis di. `HomeDirectoryMappings`
  + Untuk pengguna penyedia identitas kustom, berikan nilai direktori logis di`HomeDirectoryDetails`.

### Nilai direktori pengguna
<a name="user-dir-values"></a>
+ Parameter untuk menentukan nilai direktori logis tergantung pada jenis pengguna Anda:
  + Untuk pengguna yang dikelola layanan, berikan nilai direktori logis di. `HomeDirectoryMappings`
  + Untuk pengguna penyedia identitas kustom, berikan nilai direktori logis di`HomeDirectoryDetails`.
+ Saat menggunakan LOGICAL HomeDirectoryType, Anda dapat menentukan HomeDirectory nilai untuk pengguna yang Dikelola Layanan, akses Direktori Aktif, dan implementasi Penyedia Identitas Kustom HomeDirectoryDetails yang disediakan dalam respons. Jika tidak ditentukan, HomeDirectory default ke. `/`

Untuk detail tentang cara menerapkan direktori logis, lihat[Menerapkan direktori logis](implement-log-dirs.md).

# Menerapkan direktori logis
<a name="implement-log-dirs"></a>

**penting**  
**Persyaratan direktori root**
Jika Anda tidak menggunakan pengaturan optimasi kinerja Amazon S3 direktori root Anda harus ada saat startup.
Untuk Amazon S3, ini berarti membuat objek zero-byte yang diakhiri dengan garis miring (). `/`
Untuk menghindari persyaratan ini, pertimbangkan untuk mengaktifkan pengoptimalan kinerja Amazon S3 saat Anda membuat atau memperbarui server Anda.
Saat menentukan HomeDirectory dengan LOGICAL HomeDirectoryType, nilainya harus dipetakan ke salah satu pemetaan direktori logis Anda. Layanan memvalidasi ini selama pembuatan dan pembaruan pengguna untuk mencegah konfigurasi yang tidak akan berfungsi.
**Konfigurasi direktori home logis**
Saat menggunakan LOGICAL sebagai milik Anda HomeDirectoryType, perhatikan hal berikut:  
 HomeDirectory Nilai harus sesuai dengan salah satu pemetaan direktori logis Anda yang ada.
Sistem secara otomatis memvalidasi ini selama pembuatan dan pembaruan pengguna.
Validasi ini mencegah konfigurasi yang akan menyebabkan masalah akses.

## Aktifkan direktori logis
<a name="enable-log-dirs-small"></a>

Untuk menggunakan direktori logis untuk pengguna, atur `HomeDirectoryType` parameter ke`LOGICAL`. Lakukan ini saat Anda membuat pengguna baru atau memperbarui pengguna yang sudah ada. 

```
"HomeDirectoryType": "LOGICAL"
```

## Aktifkan `chroot` untuk pengguna
<a name="chroot"></a>

Untuk**chroot**, buat struktur direktori yang terdiri dari satu `Entry` dan `Target` pasangan untuk setiap pengguna. Entri**/**mewakili folder root, sedangkan **Target** menentukan lokasi sebenarnya di bucket atau sistem file Anda.

------
#### [ Example for Amazon S3 ]

```
[{"Entry": "/", "Target": "/amzn-s3-demo-bucket/jane"}]
```

------
#### [ Example for Amazon EFS ]

```
[{"Entry": "/", "Target": "/fs-faa1a123/jane"}]
```

------

Anda dapat menggunakan jalur absolut seperti pada contoh sebelumnya, atau Anda dapat menggunakan substitusi dinamis untuk nama pengguna dengan`${transfer:UserName}`, seperti pada contoh berikut.

```
[{"Entry": "/", "Target":
"/amzn-s3-demo-bucket/${transfer:UserName}"}]
```

Dalam contoh sebelumnya, pengguna dikunci ke direktori root mereka dan tidak dapat melintasi lebih tinggi dalam hierarki.

## Struktur direktori virtual
<a name="virtual-dirs"></a>

Untuk struktur direktori virtual, Anda dapat membuat beberapa `Entry` `Target` pasangan, dengan target di mana saja di bucket S3 atau sistem file EFS Anda, termasuk di beberapa bucket atau sistem file, selama pemetaan peran IAM pengguna memiliki izin untuk mengaksesnya.

Dalam contoh struktur virtual berikut, ketika pengguna login ke AWS SFTP, mereka berada di direktori root dengan sub-direktori`/pics`,,, `/doc` dan. `/reporting` `/anotherpath/subpath/financials` 

**catatan**  
Kecuali Anda memilih untuk mengoptimalkan kinerja untuk direktori Amazon S3 Anda (saat Anda membuat atau memperbarui server), baik pengguna atau administrator perlu membuat direktori jika belum ada. Menghindari masalah ini adalah alasan untuk mempertimbangkan mengoptimalkan kinerja Amazon S3.  
Untuk Amazon EFS, Anda masih memerlukan administrator untuk membuat pemetaan logis atau direktori. `/`

```
[
{"Entry": "/pics", "Target": "/amzn-s3-demo-bucket1/pics"}, 
{"Entry": "/doc", "Target": "/amzn-s3-demo-bucket1/anotherpath/docs"},
{"Entry": "/reporting", "Target": "/amzn-s3-demo-bucket2/Q1"},
{"Entry": "/anotherpath/subpath/financials", "Target": "/amzn-s3-demo-bucket2/financials"}]
```



**catatan**  
 Anda hanya dapat mengunggah file ke folder tertentu yang Anda petakan. Ini berarti bahwa dalam contoh sebelumnya, Anda tidak dapat mengunggah ke `/anotherpath` atau `anotherpath/subpath` direktori; hanya`anotherpath/subpath/financials`. Anda juga tidak dapat memetakan ke jalur tersebut secara langsung, karena jalur yang tumpang tindih tidak diperbolehkan.  
 Misalnya, asumsikan Anda membuat pemetaan berikut:   

```
{
   "Entry": "/pics", 
   "Target": "/amzn-s3-demo-bucket/pics"
}, 
{
   "Entry": "/doc", 
   "Target": "/amzn-s3-demo-bucket/mydocs"
}, 
{
   "Entry": "/temp", 
   "Target": "/amzn-s3-demo-bucket2/temporary"
}
```
 Anda hanya dapat mengunggah file ke bucket tersebut. Ketika Anda pertama kali terhubung`sftp`, Anda dijatuhkan ke direktori root,`/`. Jika Anda mencoba mengunggah file ke direktori itu, unggahan gagal. Perintah berikut menunjukkan urutan contoh:   

```
sftp> pwd
Remote working directory: /
sftp> put file
Uploading file to /file
remote open("/file"): No such file or directory
```
Untuk mengunggah ke salah satu`directory/sub-directory`, Anda harus secara eksplisit memetakan jalur ke file. `sub-directory`

Untuk informasi selengkapnya tentang mengonfigurasi direktori logis dan **chroot** untuk pengguna Anda, termasuk AWS CloudFormation templat yang dapat Anda unduh dan gunakan, lihat [Menyederhanakan Struktur AWS SFTP Anda dengan direktori chroot dan logis](https://aws.amazon.com/blogs/storage/simplify-your-aws-sftp-structure-with-chroot-and-logical-directories/) di Blog Penyimpanan. AWS 

# Konfigurasikan contoh direktori logis
<a name="logical-dir-example"></a>

Dalam contoh ini, kami membuat pengguna dan menetapkan dua direktori logis. Perintah berikut membuat pengguna baru (untuk server Transfer Family yang sudah ada) dengan direktori logis `pics` dan`doc`. 

```
aws transfer create-user \
    --user-name marymajor \
    --server-id s-11112222333344445 \
    --role arn:aws:iam::1234abcd5678:role/marymajor-role \
    --home-directory-type LOGICAL \
    --home-directory-mappings "[{\"Entry\":\"/pics\", \"Target\":\"/amzn-s3-demo-bucket1/pics\"}, {\"Entry\":\"/doc\", \"Target\":\"/amzn-s3-demo-bucket2/test/mydocs\"}]" \
    --ssh-public-key-body file://~/.ssh/id_rsa.pub
```

Jika **marymajor** adalah pengguna yang sudah ada dan jenis direktori home nya`PATH`, Anda dapat mengubahnya `LOGICAL` dengan perintah yang sama seperti yang sebelumnya.

```
aws transfer update-user \
    --user-name marymajor \
    --server-id s-11112222333344445 \
    --role arn:aws:iam::1234abcd5678:role/marymajor-role \
    --home-directory-type LOGICAL \
    --home-directory-mappings "[{\"Entry\":\"/pics\", \"Target\":\"/amzn-s3-demo-bucket1/pics\"}, {\"Entry\":\"/doc\", \"Target\":\"/amzn-s3-demo-bucket2/test/mydocs\"}]"
```

Perhatikan hal-hal berikut:
+ Jika direktori `/amzn-s3-demo-bucket1/pics` dan `/amzn-s3-demo-bucket2/test/mydocs` belum ada, pengguna (atau administrator) perlu membuatnya.
**catatan**  
Direktori ini dibuat secara otomatis oleh server Transfer Family jika Anda telah mengonfigurasi direktori yang dioptimalkan.
+ Ketika **marymajor** terhubung ke server, dan menjalankan `ls -l` perintah, Mary melihat yang berikut:

  ```
  drwxr--r--   1        -        -        0 Mar 17 15:42 doc
  drwxr--r--   1        -        -        0 Mar 17 16:04 pics
  ```
+ **marymajor**tidak dapat membuat file atau direktori apa pun pada level ini. Namun, di dalam `pics` dan`doc`, dia dapat menambahkan sub-direktori.
+ File yang ditambahkan Mary `pics` dan `doc` ditambahkan ke jalur Amazon S3 `/amzn-s3-demo-bucket1/pics` dan `/amzn-s3-demo-bucket2/test/mydocs` masing-masing.
+ Dalam contoh ini, kami menentukan dua ember berbeda untuk mengilustrasikan kemungkinan itu. Namun, Anda dapat menggunakan bucket yang sama untuk beberapa atau semua direktori logis yang Anda tentukan untuk pengguna.

Contoh ini menyediakan konfigurasi alternatif untuk jalur rumah logis.

```
aws transfer create-user \
    --user-name marymajor \
    --server-id s-11112222333344445 \
    --role arn:aws:iam::1234abcd5678:role/marymajor-role \
    --home-directory-type LOGICAL \
    --home-directory /home/marymajor \
    --home-directory-mappings "[{\"Entry\":\"/home/marymajor/pics\", \"Target\":\"/amzn-s3-demo-bucket1/pics\"}, {\"Entry\":\"/home/marymajor/doc\", \"Target\":\"/amzn-s3-demo-bucket2/test/mydocs\"}]" \
    --ssh-public-key-body file://~/.ssh/id_rsa.pub
```

Perhatikan hal-hal berikut:
+ Pemetaan menyediakan jalur umum`/home/marymajor`, yang merupakan bagian pertama dari dua jalur logis. File kemudian dapat ditambahkan ke `doc` folder `pics` dan.
+ Seperti pada contoh sebelumnya, direktori home,`/home/marymajor`, adalah read-only.

## Konfigurasikan direktori logis untuk Amazon EFS
<a name="logical-dir-efs"></a>

Jika server Transfer Family Anda menggunakan Amazon EFS, direktori home untuk pengguna harus dibuat dengan akses baca dan tulis sebelum pengguna dapat bekerja di direktori home logisnya. Pengguna tidak dapat membuat direktori ini sendiri, karena mereka akan kekurangan izin untuk `mkdir` direktori home logis mereka.

Jika direktori home pengguna tidak ada, dan mereka menjalankan `ls` perintah, sistem merespons sebagai berikut:

```
sftp> ls
remote readdir ("/"): No such file or directory
```

Seorang pengguna dengan akses administratif ke direktori induk perlu membuat direktori home logis pengguna.

## AWS Lambda Tanggapan khusus
<a name="auth-lambda-response"></a>

Anda dapat menggunakan direktori logis dengan fungsi Lambda yang terhubung ke penyedia identitas kustom Anda. Untuk melakukannya, dalam fungsi Lambda Anda, Anda menentukan `HomeDirectoryType` sebagai**LOGICAL**, dan menambahkan `Entry` dan `Target` nilai untuk parameter. `HomeDirectoryDetails` Contoh:

```
HomeDirectoryType: "LOGICAL"
HomeDirectoryDetails: "[{\"Entry\": \"/\", \"Target\": \"/amzn-s3-demo-bucket/theRealFolder"}]"
```

Kode berikut adalah contoh respons yang berhasil dari panggilan otentikasi Lambda kustom. 

```
aws transfer test-identity-provider \
    --server-id s-1234567890abcdef0 \
    --user-name myuser
{
    "Url": "https://a1b2c3d4e5.execute-api.us-east-2.amazonaws.com/prod/servers/s-1234567890abcdef0/users/myuser/config", 
    "Message": "", 
    "Response": "{\"Role\": \"arn:aws:iam::123456789012:role/bob-usa-role\",
                  \"HomeDirectoryType\": \"LOGICAL\",
                  \"HomeDirectoryDetails\": \"[{\\\"Entry\\\":\\\"/myhome\\\",\\\"Target\\\":\\\"/amzn-s3-demo-bucket/theRealFolder\\\"}]\",
                  \"PublicKeys\": \"[ssh-rsa myrsapubkey]\"}", 
    "StatusCode": 200
}
```

**catatan**  
`"Url":`Baris dikembalikan hanya jika Anda menggunakan metode API Gateway sebagai penyedia identitas kustom Anda.

# Akses sistem file NetApp ONTAP Anda FSx dengan Transfer Family
<a name="fsx-s3-access-points"></a>



**Contents**
+ [Ikhtisar](#fsx-overview)
+ [Prasyarat](#fsx-prerequisites)
  + [FSx untuk persyaratan NetApp ONTAP](#fsx-ontap-requirements)
  + [Izin IAM yang diperlukan](#required-iam-permissions)
+ [Cara kerja FSx penyimpanan dengan Transfer Family](#how-fsx-storage-works)
  + [Identitas pengguna sistem file](#file-system-user-identity)
+ [Membuat titik akses S3 untuk FSx](#creating-s3-access-point)
  + [Penamaan titik akses](#access-point-naming)
  + [Membuat titik akses FSx untuk NetApp ONTAP](#creating-access-point-ontap)
  + [Mengkonfigurasi izin sistem file](#configuring-file-system-permissions)
+ [Menggunakan alias titik akses S3 dengan FSx](#using-s3-access-point-aliases)
  + [Tentang alias titik akses](#about-access-point-aliases)
  + [Menemukan alias titik akses Anda](#finding-access-point-alias)
+ [Mengkonfigurasi Transfer Family untuk penyimpanan FSx](#configuring-transfer-family-fsx)
  + [Membuat peran IAM](#creating-iam-role-fsx)
+ [Mengelola pengguna untuk FSx penyimpanan](#managing-users-fsx)
  + [Membuat pengguna](#creating-user-fsx)
  + [Mengkonfigurasi beberapa pemetaan direktori](#multiple-directory-mappings)
+ [Mengkonfigurasi klien transfer file](#configuring-file-transfer-clients)
  + [Konfigurasi WinSCP](#winscp-configuration)
  + [Klien SFTP lainnya](#other-sftp-clients)
+ [Memecahkan masalah penyimpanan FSx](#troubleshooting-fsx-storage)
  + [Masalah operasi file](#file-operation-issues)

## Ikhtisar
<a name="fsx-overview"></a>

Transfer Family mendukung Amazon FSx untuk NetApp ONTAP melalui jalur akses S3. Amazon FSx untuk NetApp ONTAP adalah layanan yang dikelola sepenuhnya yang menyediakan penyimpanan file yang sangat andal, terukur, berkinerja tinggi, dan kaya fitur yang dibangun di atas NetApp sistem file ONTAP yang populer. Saat Anda mengonfigurasi Transfer Family dengan sistem FSx file, pengguna Anda terhubung ke titik akhir Transfer Family menggunakan klien transfer file standar. Transfer Family merutekan operasi file melalui titik akses S3 yang dilampirkan ke FSx volume Anda, sementara data Anda tetap berada di sistem FSx file. Untuk mempelajari lebih lanjut tentang FSx NetApp ONTAP, lihat [Apa itu Amazon FSx untuk NetApp ONTAP](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/what-is-fsx-ontap.html)?

Integrasi ini memungkinkan Anda untuk:
+ Transfer file menggunakan protokol SFTP, FTPS, atau FTP ke penyimpanan file kelas perusahaan
+ Akses data yang sama melalui beberapa protokol (SFTP, NFS, SMB)
+ Gunakan FSx fitur seperti snapshot, backup, dan tiering data

**penting**  
Beberapa operasi file tidak didukung saat menggunakan sistem FSx file dengan Transfer Family, termasuk mengganti nama dan menambahkan operasi. Untuk operasi unggahan, ukuran file dibatasi hingga 5 GB. Untuk daftar lengkap batasan, lihat [Kompatibilitas titik akses](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/access-points-for-fsxn-object-api-support.html).

## Prasyarat
<a name="fsx-prerequisites"></a>

Sebelum Anda mengonfigurasi Transfer Family dengan Amazon FSx, Anda harus memenuhi persyaratan berikut.

### FSx untuk persyaratan NetApp ONTAP
<a name="fsx-ontap-requirements"></a>

 FSx Untuk menggunakan NetApp ONTAP dengan Transfer Family, Anda memerlukan:
+ Sistem file FSx untuk NetApp ONTAP yang menjalankan ONTAP versi 9.17.1 atau yang lebih baru
+ Sistem file dan titik akses S3 di Wilayah yang sama AWS 
+  AWS Akun yang sama yang memiliki sistem file dan titik akses

Untuk mempelajari lebih lanjut, lihat [Memulai Amazon FSx untuk NetApp ONTAP](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/getting-started.html).

### Izin IAM yang diperlukan
<a name="required-iam-permissions"></a>

Anda dapat mengonfigurasi setiap titik akses S3 dengan izin dan kontrol jaringan yang berbeda yang diterapkan S3 untuk setiap permintaan yang dibuat menggunakan jalur akses tersebut. Jalur akses S3 mendukung kebijakan sumber daya IAM yang dapat Anda gunakan untuk mengontrol penggunaan titik akses berdasarkan sumber daya, pengguna, atau kondisi lainnya. Untuk aplikasi atau pengguna untuk mengakses file melalui titik akses, baik titik akses dan volume yang mendasarinya harus mengizinkan permintaan. Untuk informasi selengkapnya, lihat [kebijakan jalur akses IAM](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/s3-ap-manage-access-fsxn.html).

Jalur akses Amazon S3 untuk FSx menggunakan model otorisasi lapisan ganda yang menggabungkan izin IAM dengan izin tingkat sistem file. Pendekatan ini memastikan bahwa permintaan akses data diotorisasi dengan benar pada tingkat AWS layanan dan tingkat sistem file yang mendasarinya.

Agar aplikasi atau pengguna berhasil mengakses data melalui titik akses, kebijakan titik akses S3 dan FSx volume yang mendasarinya harus mengizinkan permintaan tersebut.

Untuk membuat dan mengonfigurasi integrasi ini, Anda memerlukan izin berikut:
+ `fsx:CreateAndAttachS3AccessPoint`
+ `s3:CreateAccessPoint`
+ `s3:GetAccessPoint`
+ `s3:PutAccessPointPolicy`(jika membuat kebijakan jalur akses opsional)

## Cara kerja FSx penyimpanan dengan Transfer Family
<a name="how-fsx-storage-works"></a>

Saat Anda mengonfigurasi Transfer Family dengan sistem FSx file, komponen berikut bekerja sama untuk mengaktifkan transfer file:

1. Pengguna terhubung ke server Transfer Family menggunakan klien SFTP, FTPS, atau FTP.

1. Transfer Family mengautentikasi pengguna menggunakan identitas yang dikelola layanan, penyedia identitas kustom, atau. AWS Directory Service for Microsoft Active Directory Setelah diautentikasi, Transfer Family mengasumsikan peran IAM yang terkait dengan pengguna.

1. Untuk setiap operasi file, Transfer Family bertindak sebagai klien API S3 standar, membuat permintaan ke Titik Akses S3 menggunakan peran IAM pengguna yang diasumsikan dan memverifikasi izin terhadap kebijakan jalur akses S3.

1. Sistem FSx file memverifikasi bahwa pengguna sistem file yang terkait dengan titik akses memiliki izin untuk melakukan operasi yang diminta. Operasi file kemudian dilakukan pada FSx volume.

Agar operasi file berhasil, kedua lapisan otorisasi harus mengizinkan permintaan.

**catatan**  
Melampirkan titik akses S3 ke FSx volume tidak mengubah bagaimana volume berperilaku ketika diakses langsung melalui NFS atau SMB. Akses protokol file yang ada terus bekerja tidak berubah.

### Identitas pengguna sistem file
<a name="file-system-user-identity"></a>

Setiap titik akses menggunakan identitas pengguna sistem file yang Anda tentukan saat membuat titik akses. Identitas ini mengotorisasi semua permintaan akses file yang dibuat melalui titik akses itu. Pengguna sistem file adalah akun pengguna pada sistem FSx file Amazon yang mendasarinya. Jika pengguna sistem file memiliki akses hanya-baca, maka hanya permintaan baca yang dibuat menggunakan titik akses yang diotorisasi, dan permintaan tulis diblokir. Jika pengguna sistem file memiliki akses baca-tulis, maka permintaan baca dan tulis ke volume terlampir yang dibuat menggunakan titik akses diotorisasi.

## Membuat titik akses S3 untuk FSx
<a name="creating-s3-access-point"></a>

Sebelum Anda mengkonfigurasi Transfer Family, Anda harus membuat titik akses S3 yang terpasang pada FSx volume Anda. Titik akses S3 diberi nama titik akhir jaringan yang dilampirkan ke sumber data seperti bucket atau Amazon FSx untuk volume ONTAP. Anda dapat membuat dan melampirkan jalur akses ke FSx untuk NetApp ONTAP menggunakan FSx konsol Amazon, AWS CLI, atau API. Setelah terpasang, Anda dapat menggunakan objek S3 APIs untuk mengakses data file Anda. Data Anda terus berada di sistem FSx file Amazon dan terus dapat diakses secara langsung untuk beban kerja Anda yang ada. Anda terus mengelola penyimpanan Anda menggunakan semua kemampuan manajemen penyimpanan FSx untuk NetApp ONTAP, termasuk backup, snapshot, kuota pengguna dan grup, dan kompresi.

Untuk informasi selengkapnya, lihat [Membuat titik akses](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/create-access-points.html).

### Penamaan titik akses
<a name="access-point-naming"></a>

Saat Anda memberi nama jalur akses Anda, ikuti panduan ini:
+ Nama titik akses harus unik dalam AWS akun dan Wilayah Anda.
+ Nama tidak dapat diakhiri dengan `-ext-s3alias` (dicadangkan untuk alias).
+ Hindari memasukkan informasi sensitif dalam nama karena dipublikasikan di DNS.

Untuk daftar lengkap aturan penamaan, lihat Aturan, [batasan, dan batasan penamaan titik akses](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/access-point-for-fsxn-restrictions-limitations-naming-rules.html).

### Membuat titik akses FSx untuk NetApp ONTAP
<a name="creating-access-point-ontap"></a>

Gunakan prosedur berikut untuk membuat titik akses S3 untuk volume NetApp ONTAP. FSx 

**Untuk membuat titik akses (konsol)**

1. Buka FSx konsol Amazon di [https://console.aws.amazon.com/fsx/](https://console.aws.amazon.com/fsx/).

1. Di panel navigasi, pilih **Sistem file**.

1. Pilih FSx untuk sistem file NetApp ONTAP Anda.

1. Pilih tab **Volume**.

1. Pilih volume yang ingin Anda lampirkan.

1. Untuk **Tindakan**, pilih **Buat titik akses S3**.

1. Untuk **nama Access point**, masukkan nama deskriptif (misalnya,`transfer-family-ap`).

1. Untuk **tipe identitas pengguna sistem File**, pilih salah satu dari berikut ini:
   + **Identitas UNIX** - Untuk volume dengan gaya keamanan UNIX
   + **Identitas Windows** - Untuk volume dengan gaya keamanan NTFS

1. (Opsional) Untuk **kebijakan Access point**, masukkan kebijakan IAM yang menentukan prinsipal IAM mana yang dapat melakukan operasi pada objek yang diakses melalui jalur akses ini. Untuk informasi selengkapnya, lihat [Mengelola akses titik akses](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/s3-ap-manage-access-fsxn.html).

1. Pilih **Buat**.

1. Setelah pembuatan, perhatikan alias titik akses untuk digunakan dalam konfigurasi Transfer Family.

**catatan**  
Saat AWS Transfer Family mengakses sumber daya S3 atas nama SFTP/FTPS pengguna Anda yang terhubung, permintaan berasal dari AWS Transfer Family infrastruktur, bukan dari VPC Anda. Karena itu, Titik Akses S3 yang dikonfigurasi dengan asal jaringan VPC akan menolak permintaan ini. Namun, bahkan jika Anda menggunakan Access Point yang dikonfigurasi dengan asal jaringan Internet, semua lalu lintas antara Transfer Family dan Access Point tetap pribadi dan melakukan perjalanan melalui jaringan AWS backbone - itu tidak melintasi internet publik.

### Mengkonfigurasi izin sistem file
<a name="configuring-file-system-permissions"></a>

Pengguna sistem file yang Anda tentukan menentukan operasi apa yang dapat dilakukan pengguna Transfer Family. Anda harus mengonfigurasi izin yang sesuai pada FSx volume Anda.

**Contoh UNIX:**

```
# Create a directory for Transfer Family users
mkdir -p /vol1/transfer-users

# Set ownership to match the access point user
chown 1001:1001 /vol1/transfer-users

# Set permissions
chmod 755 /vol1/transfer-users
```

**Contoh Windows:**

```
# Create a directory for Transfer Family users
New-Item -Path "D:\vol1\transfer-users" -ItemType Directory

# Set permissions for the file system user associated with the access point
# Replace DOMAIN\TransferUser with your Windows user identity
icacls "D:\vol1\transfer-users" /grant "DOMAIN\TransferUser:(OI)(CI)M" /T

# Verify permissions
icacls "D:\vol1\transfer-users"
```

## Menggunakan alias titik akses S3 dengan FSx
<a name="using-s3-access-point-aliases"></a>

Saat Anda menggunakan sistem FSx file dengan Transfer Family, Anda harus menggunakan alias titik akses S3. Transfer Family tidak mendukung penggunaan titik akses ARNs atau metode referensi lain untuk FSx penyimpanan.

**penting**  
AWS Transfer Family hanya mendukung alias titik akses S3 saat menggunakan sistem FSx file. Anda tidak dapat menggunakan jalur akses ARNs atau virtual-hosted-style URIs.

**penting**  
Titik akses harus berada di Wilayah yang sama dengan volume.

### Tentang alias titik akses
<a name="about-access-point-aliases"></a>

Saat Anda membuat titik akses S3 yang dilampirkan ke FSx volume, Amazon S3 secara otomatis menghasilkan alias titik akses. Alias ini adalah pengenal unik yang dapat Anda gunakan di mana pun Anda menggunakan nama bucket S3.

Untuk titik akses yang dilampirkan ke FSx volume, alias menggunakan format berikut:

```
access-point-name-metadata-ext-s3alias
```

**Contoh alias:**

```
my-fsx-ap-aqfqprnstn7aefdfbarligizwgyfouse1a-ext-s3alias
```

**catatan**  
`-ext-s3alias`Akhiran dicadangkan untuk alias titik FSx akses. Anda tidak dapat menggunakan akhiran ini dalam nama titik akses.

### Menemukan alias titik akses Anda
<a name="finding-access-point-alias"></a>

Anda dapat menemukan alias titik akses setelah membuat titik akses.

**Untuk menemukan alias titik akses (konsol)**

1. Buka FSx konsol Amazon di [https://console.aws.amazon.com/fsx/](https://console.aws.amazon.com/fsx/).

1. Di panel navigasi, pilih **Sistem file**.

1. Pilih sistem file Anda.

1. Pilih tab **Volume** dan pilih volume yang Anda buat untuk titik akses.

1. Buka kolom **detail titik akses S3**.

1. Alias ditampilkan di kolom **Alias**.

**Untuk menemukan alias titik akses (CLI)**

Gunakan perintah `describe-s3-access-point-attachments`.

```
aws fsx describe-s3-access-point-attachments \
    --filters Name=file-system-id,Values=fs-0123456789abcdef0
```

Tanggapan termasuk alias:

```
{
    "S3AccessPointAttachments": [
        {
            "S3AccessPoint": {
                "ResourceARN": "arn:aws:s3:us-east-1:111122223333:accesspoint/my-fsx-ap",
                "Alias": "my-fsx-ap-aqfqprnstn7aefdfbarligizwgyfouse1a-ext-s3alias"
            }
        }
    ]
}
```

Saat Anda mengonfigurasi pengguna Transfer Family, gunakan alias access point di pemetaan direktori home.

**Format direktori rumah:**

```
/access-point-alias/path/to/directory
```

**Contoh:**

```
/my-fsx-ap-aqfqprnstn7aefdfbarligizwgyfouse1a-ext-s3alias/users/jsmith
```

## Mengkonfigurasi Transfer Family untuk penyimpanan FSx
<a name="configuring-transfer-family-fsx"></a>

Setelah Anda membuat titik akses S3, konfigurasikan server Transfer Family untuk menggunakannya.

### Membuat peran IAM
<a name="creating-iam-role-fsx"></a>

Anda harus membuat peran IAM yang memberikan akses Transfer Family ke jalur akses S3.

**penting**  
Kebijakan IAM memerlukan format ARN Access Point, bukan alias. Gunakan format `arn:aws:s3:region:account-id:accesspoint/access-point-name` dalam pernyataan Sumber daya kebijakan IAM Anda. Alias access point (diakhiri dengan`-ext-s3alias`) hanya digunakan untuk pemetaan direktori home.

**Untuk membuat peran IAM**

1. Buka konsol IAM di [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Di panel navigasi, pilih **Peran**, lalu pilih **Buat peran**.

1. Untuk **jenis entitas Tepercaya**, pilih **AWS layanan**.

1. Untuk **kasus penggunaan**, pilih **Transfer**.

1. Pilih **Berikutnya**.

1. Pilih **Buat kebijakan** dan masukkan kebijakan Anda (lihat contoh kebijakan di bawah).

1. Lampirkan kebijakan ke peran dan pilih **Buat peran**.

**Contoh kebijakan IAM:**

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowFileOperations",
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:PutObject",
                "s3:DeleteObject",
                "s3:GetObjectTagging",
                "s3:PutObjectTagging"
            ],
            "Resource": "arn:aws:s3:us-east-2:111122223333:accesspoint/my-fsx-ap/object/*"
        },
        {
            "Sid": "AllowDirectoryOperations",
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket",
                "s3:GetBucketLocation"
            ],
            "Resource": "arn:aws:s3:us-east-2:111122223333:accesspoint/my-fsx-ap"
        }
    ]
}
```

## Mengelola pengguna untuk FSx penyimpanan
<a name="managing-users-fsx"></a>

Buat pengguna Transfer Family dengan pemetaan direktori home yang menggunakan alias access point S3.

### Membuat pengguna
<a name="creating-user-fsx"></a>

Saat Anda membuat pengguna untuk FSx penyimpanan, gunakan alias titik akses di pemetaan direktori home.

**Untuk membuat pengguna yang Dikelola Layanan (konsol)**

1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/).

1. Di panel navigasi, pilih **Server**.

1. Pilih server Anda.

1. Di bagian Pengguna, pilih **Tambah pengguna**.

1. Untuk **Nama Pengguna**, masukkan nama pengguna.

1. Untuk **Peran**, pilih peran IAM yang Anda buat.

1. Untuk **direktori Home**, pilih **Restricted**.

1. Untuk **pemetaan direktori Home**, tambahkan pemetaan menggunakan alias access point:

   ```
   [{"Entry": "/", "Target": "/my-fsx-ap-aqfqprnstn7aefdfbarligizwgyfouse1a-ext-s3alias/users/jsmith"}]
   ```

**Untuk membuat pengguna (CLI)**

Gunakan perintah `create-user`. Ganti alias titik akses dengan alias Anda.

```
aws transfer create-user \
    --server-id s-0123456789abcdef0 \
    --user-name jsmith \
    --role arn:aws:iam::111122223333:role/TransferFamilyFSxRole \
    --home-directory-type LOGICAL \
    --home-directory-mappings '[
        {
            "Entry": "/",
            "Target": "/my-fsx-ap-aqfqprnstn7aefdfbarligizwgyfouse1a-ext-s3alias/users/jsmith"
        }
    ]'
```

### Mengkonfigurasi beberapa pemetaan direktori
<a name="multiple-directory-mappings"></a>

Anda dapat memetakan beberapa direktori virtual ke jalur yang berbeda pada FSx volume.

**Contoh: Direktori upload dan download terpisah**

```
aws transfer create-user \
    --server-id s-0123456789abcdef0 \
    --user-name jsmith \
    --role arn:aws:iam::111122223333:role/TransferFamilyFSxRole \
    --home-directory-type LOGICAL \
    --home-directory-mappings '[
        {
            "Entry": "/inbox",
            "Target": "/my-fsx-ap-aqfqprnstn7aefdfbarligizwgyfouse1a-ext-s3alias/users/jsmith/inbox"
        },
        {
            "Entry": "/outbox",
            "Target": "/my-fsx-ap-aqfqprnstn7aefdfbarligizwgyfouse1a-ext-s3alias/users/jsmith/outbox"
        }
    ]'
```

## Mengkonfigurasi klien transfer file
<a name="configuring-file-transfer-clients"></a>

Saat menggunakan sistem FSx file dengan Transfer Family, Anda harus mengonfigurasi klien transfer file Anda untuk menonaktifkan fitur yang tidak didukung.

### Konfigurasi WinSCP
<a name="winscp-configuration"></a>

WinSCP menggunakan fitur ganti nama sementara secara default yang tidak didukung dengan jalur akses S3 untuk. FSx

**Awas**  
Jika Anda tidak menonaktifkan fitur ganti nama sementara di WinSCP, unggahan file akan gagal.

**Untuk menonaktifkan penggantian nama sementara di WinSCP**

1. Buka WinSCP.

1. Pada dialog Login, pilih **Edit** untuk mengubah pengaturan sesi Anda.

1. Pilih **Lanjutan**.

1. Di navigasi kiri, di bawah **Transfer**, pilih **Endurance**.

1. **Untuk **Aktifkan transfer resume/transfer ke nama file sementara, pilih Nonaktifkan**.**

1. Pilih **OK** untuk menyimpan pengaturan.

Atau, Anda dapat menonaktifkan pengaturan ini untuk sesi yang ada:

1. Connect ke server Transfer Family Anda.

1. Pilih **Opsi**, lalu **Preferensi**.

1. Pilih **Transfer**, lalu **Daya Tahan**.

1. **Untuk **Aktifkan transfer resume/transfer ke nama file sementara, pilih Nonaktifkan**.**

1. Pilih **OK**.

### Klien SFTP lainnya
<a name="other-sftp-clients"></a>

Untuk klien SFTP lainnya, nonaktifkan fitur berikut jika tersedia:
+ Unggahan file sementara (unggah ke file temp, lalu ganti nama)
+ Lanjutkan transfer menggunakan file sementara
+ Unggahan atom menggunakan operasi ganti nama
+ Menambahkan mode untuk upload

Konsultasikan dokumentasi klien Anda untuk langkah-langkah konfigurasi tertentu.

## Memecahkan masalah penyimpanan FSx
<a name="troubleshooting-fsx-storage"></a>

Bagian ini menjelaskan cara mengidentifikasi dan menyelesaikan masalah umum saat menggunakan Transfer Family dengan sistem FSx file.

### Masalah operasi file
<a name="file-operation-issues"></a>

**Izin ditolak**

Jika Anda menerima kesalahan izin ditolak:

1. Verifikasi peran IAM memiliki izin yang benar untuk alias titik akses. Anda dapat melakukan ini dengan menguji langsung dengan S3 APIs.

1. Periksa apakah kebijakan titik akses memungkinkan peran IAM.

1. Verifikasi bahwa pengguna sistem file memiliki izin pada jalur target.

1. Konfirmasikan pemetaan direktori home menggunakan alias access point yang benar.

**Unggahan gagal dengan WinSCP**

Jika unggahan file gagal dengan WinSCP, nonaktifkan penggantian nama sementara:

1. **Di WinSCP, **pilih** Opsi, lalu Preferensi.**

1. Pilih **Transfer**, lalu **Daya Tahan**.

1. **Untuk **Aktifkan transfer resume/transfer ke nama file sementara, pilih Nonaktifkan**.**

Untuk informasi selengkapnya, lihat [Mengkonfigurasi klien transfer file](#configuring-file-transfer-clients).

**Unggahan file gagal**

Jika unggahan file gagal:

1. Verifikasi ukuran file di bawah 5 GB.

1. Periksa apakah FSx volume memiliki penyimpanan yang tersedia cukup.

1. Pantau CloudWatch metrik untuk pelambatan.