Saya sedang menyiapkan server FTP pada server Windows 2008 (R2) saya.
Semuanya tampak terinstal dengan benar, tetapi saya mengalami masalah dalam menggunakan FTP Client untuk masuk ke server FTP saya.
Saya dapat melakukan remote desktop ke server dan melalui perintah DOS saya dapat login dengan mudah.
Tetapi jika saya mengeluarkan perintah seperti "DIR", perintah tersebut hang dengan: 150 Membuka koneksi data mode ASCII.
Semua yang telah saya teliti dan baca mengarah ke port Firewall dan/atau pengaturan mode Pasif/Aktif.
Inilah yang mengganggu saya...jika saya menggunakan perintah DOS FTP, saya dapat login dan menggunakan perintah "DIR" hanya jika saya menggunakan "localhost" sebagai alamat saya.
Jika saya menentukan URL FTP lengkap saya, saya mendapatkan kesalahan yang menggantung.
jika saya menentukan "localhost" URL, saya tidak mendapatkan error.
Hal ini membuat saya percaya bahwa ini adalah masalah Firewall, (atau bahkan masalah IIS7?) tetapi saya tidak yakin port apa yang perlu saya buka?
Saya telah membuka port 20, 21 pada firewall Windows saya. Saya juga telah membuka port-port tersebut pada firewall AWS (Amazon) saya.
Saya yakin klien FTP saya menggunakan beberapa nomor port jarak jauh yang berpotensi diblokir oleh salah satu dari dua firewall saya. Saya telah menggunakan alat Pemantauan Jaringan untuk mencoba dan melihat port apa yang dipanggilnya tetapi saya tidak dapat mengetahuinya.
Ada ide, tips, trik, bantuan?
Server FTP dan klien FTP menegosiasikan port mana yang akan digunakan untuk transfer data (termasuk daftar direktori ketika Anda melakukan "dir" atau "ls") menggunakan "control channel" dari FTP. Jadi, jika "AWS firewall" Anda tidak melakukan inspeksi protokol pada saluran ini, tidak mungkin dia akan tahu port mana yang harus dibuka secara dinamis untuk mengizinkan aliran lalu lintas (dan menutupnya setelah port-port tersebut tidak lagi digunakan).
IMHO menggunakan pemantauan jaringan untuk menemukan port mana yang sedang digunakan tidak sepadan dengan usaha karena port-port ini akan berubah untuk setiap sesi FTP baru.
Kecuali jika Anda telah melakukannya, upaya terbaik saya dalam memecahkan masalah ini adalah mencari tweak apa pun pada firewall yang melindungi server FTP Anda (jika saya memahami pertanyaan Anda dengan benar, ini adalah "AWS firewall &") dan lihat apakah ada "knob &" untuk mengaktifkan inspeksi untuk protokol FTP.
Untuk mendapatkan informasi nyata tentang mengapa koneksi macet, Anda harus menggunakan klien yang mencatat semua perintah protokol untuk melihat apa yang sebenarnya terjadi. Ada situs yang bagus di FTP dengan contoh log di sini.
Namun, kemungkinan besar, baik
Jika Anda menggunakan SSL, satu-satunya jawaban adalah membuka rentang port (katakanlah, 10000-11000) pada firewall dan mengkonfigurasi server FTP Anda untuk memaksa mode Pasif dan menggunakan rentang port tersebut. Jika server Anda menggunakan NAT, Anda juga perlu mengatur alamat IP yang tepat untuk server untuk diiklankan ke klien, paling mematuhi apa pun yang disediakan server sebagai string koneksi mode pasif dan jika server mengira itu 10.1.1.1, itulah yang akan diberitahukan kepada klien.
Jika Anda tidak menggunakan SSL, jawaban terbaik adalah melihat apakah Anda bisa membuat firewall Anda melakukan inspeksi protokol untuk FTP. Firewall akan membaca lalu lintas pada port 21 dan membuka port apa pun yang diinginkan server Anda. Hal ini sering kali dapat memperbaiki alamat NAT juga (ketika firewall juga menangani NAT). Anda mungkin masih ingin memaksakan mode pasif karena beberapa orang tidak tahu bagaimana mengkonfigurasi klien FTP mereka dengan benar dan hampir semua orang berada di belakang router/firewall broadband akhir-akhir ini.
Jika anda tidak bisa mendapatkan firewall yang lebih pintar, maka anda harus tetap menggunakan opsi "open a bunch of ports" (atau beralih ke protokol yang tidak perlu membuka banyak port acak seperti ssh'sftp).
Saya memiliki masalah yang sama dengan Anda dan sudah diperbaiki sekarang.
Apa yang saya lakukan adalah membuka Windows Firewall (Win7), klik 'Izinkan program atau fitur melalui Windows Firewall', dan kemudian di 'Program dan fitur yang diizinkan' daftar, cari tahu 'Program Transfer File' dan centang kotak centang.
Setelah selesai, buka Command Prompt dan masukan ftp X.X.X.X.X, login dan kemudian ls/dir/get/put, semua bekerja sekarang.
Tapi saya masih gagal terhubung dari File Zilla dan Web Browser, semoga bermanfaat bagi Anda.