VPN melindungi sebuah jalur, dan setiap jalur punya ujung. Ketika terowongan berakhir di gateway perusahaan, transfer berkas berlanjut dari sana di bawah perlindungan yang diberikan protokolnya sendiri. Perbedaan itu menentukan apakah transfer terlindungi dari ujung ke ujung atau hanya sampai gateway. Indikator Connected tidak mengatakan apa pun tentang keduanya.

Dua Penempatan, Dua Jalur Tersisa

Ambil laptop yang bergabung ke VPN perusahaan lalu membuka sesi FTP ke server internal terpisah. Terowongan berhenti di gateway, dan segmen dari gateway ke server itu berada di luarnya.

FTP biasa tidak memperoleh enkripsi karena paketnya tiba melalui terowongan. Pada segmen tersisa itu, perintah, kredensial, dan isi berkas bergerak persis seperti yang didefinisikan protokol, yaitu terbuka. Apakah itu penting bergantung pada topologi dan pada apa lagi yang menjaga segmen itu, dan menyebut alamatnya privat tidak menjawab pertanyaan. Penalaran yang sama berlaku sebaliknya ketika server berada di jaringan awan yang dicapai gateway melalui satu lompatan lagi.

Tempatkan titik akhir VPN dan layanan FTP pada satu mesin, dan tidak ada segmen lanjutan yang perlu dikhawatirkan. Itu penempatan yang berbeda, bukan bukti bahwa proses, berkas, dan kredensial host aman.

FTP Biasa, FTPS, dan SFTP Adalah Tiga Keputusan

FTP biasa tidak mengenkripsi apa pun, termasuk kata sandi. FTPS menambahkan TLS ke FTP, sehingga kanal kendali dan, bila dinegosiasikan, kanal data terlindungi. SFTP adalah protokol berbeda yang diangkut di dalam SSH, dan itu bukan ejaan lain dari FTPS.

Server harus mendukung pilihan itu, karena klien tidak bisa menciptakan pendengar yang tidak ada. Memilih SFTP tidak mengubah layanan yang hanya FTP menjadi titik akhir SSH, dan mengganti nama bookmark atau mengubah port tidak membuktikan apa pun tentang apa yang dinegosiasikan. Konfirmasi protokol dari sisi server maupun dari sisi klien. Gembok di pengelola berkas adalah klaim tentang sesi, bukan tentang pendengar di baliknya.

ProtocolUsual portWhat it protectsIdentity check
FTP21Nothing on the wireNone beyond the login
FTPS21 or 990Control channel, data channel when requiredTLS server certificate
SFTP22The whole session inside SSHSSH host key

Baca kolom terakhir ketika transfer penting, karena di situlah perubahan identitas tak terduga muncul.

Koneksi Data Adalah Koneksi Kedua

FTP membuka koneksi kendali lalu koneksi data terpisah untuk daftar dan transfer. Login yang terlindungi tidak mengatakan apa pun tentang koneksi belakangan itu, kecuali penerapannya juga menuntut perlindungan untuknya.

Pada FTPS, klien meminta kanal data terlindungi melalui perintah tertentu, dan kebijakan server dapat menolak alternatif terbuka. Verifikasi bahwa kebijakan menuntutnya alih-alih menganggap nilai bawaan klien sudah cukup. Mode pasif menambah kerumitan kedua, karena server mengumumkan alamat dan port untuk koneksi data. Firewall atau perangkat NAT yang menulis ulang atau memblokir pengumuman itu menghasilkan sesi yang terautentikasi lalu menggantung pada daftar pertama.

curl -vk ftps://files.corp.example/ --user alice --ftp-ssl-control
openssl s_client -connect files.corp.example:21 -starttls ftp
ss -tnp | grep -E ':21|:990'

Perintah kedua menunjukkan apa yang disajikan server pada kanal kendali sebelum berkas apa pun disentuh. Yang ketiga menunjukkan apakah koneksi data pernah terbentuk, yaitu perbedaan antara kegagalan autentikasi dan kegagalan mode pasif.

Pemeriksaan Identitas Bertahan Melewati Terowongan

Klien FTPS memvalidasi identitas server TLS, dan klien SFTP memvalidasi kunci host SSH. Kedua pemeriksaan milik protokol transfer berkas, dan tidak satu pun dilakukan oleh VPN.

Pemisahan itu penting ketika sesuatu di tengah ingin memeriksa sesi. Menonaktifkan TLS agar perangkat jaringan dapat membaca perintah mengubah model perlindungan alih-alih melengkapinya, dan hal yang sama berlaku untuk menerima kunci host tanpa penjelasan karena terowongan sudah naik. Pertahankan konfigurasi kepercayaan yang dimaksudkan dan dapatkan materi yang benar dari operator. Terowongan yang terautentikasi tidak mengatakan apa pun tentang server di ujung jauhnya.

Materi kunci privat dan sertifikat untuk protokol ini adalah rahasia ketiga lagi, terpisah dari kredensial VPN.

Catat Apa yang Sebenarnya Anda Verifikasi

Pilih berkas tak berbahaya yang Anda berwenang memindahkannya, dan catat empat fakta tentang upaya itu: protokol mana yang berjalan, identitas pihak lawan mana yang diperiksa, jalur mana yang dimaksudkan, dan apakah transfernya selesai.

lftp -u alice -e "set ftp:ssl-protect-data true; ls; bye" ftps://files.corp.example
sftp -v [email protected]

Daftar direktori, login terowongan, dan transfer yang selesai adalah tiga pengamatan terpisah, dan hanya yang terakhir mengatakan jalur itu berfungsi untuk berkas. Jika desainnya mengandalkan VPN saja untuk kerahasiaan pada lompatan tersisa, tuliskan itu sebagai keputusan sebagaimana adanya. Catatan penerimaan yang menyebut lompatan dan asumsi kepercayaannya bernilai lebih daripada tangkapan layar klien yang terhubung.

Artikel terkait