Bạn đang sử dụng chế độ hoạt động của FTP để kết nối với máy chủ chạy Pure-FTPd. Ở chế độ hoạt động, máy chủ phải kết nối lại với máy khách để mở kết nối truyền dữ liệu (để truyền tệp hoặc danh sách thư mục). Để làm điều đó, máy khách gửi địa chỉ IP của nó đến máy chủ FTP trong lệnh PORT
.
Nếu máy chủ FTP nằm ngoài mạng riêng GCE, rõ ràng là không thể kết nối lại với máy khách, vì máy nằm sau tường lửa và NAT.
Và thực tế Pure-FTPd kiểm tra rõ ràng địa chỉ IP trong lệnh PORT
khớp với địa chỉ IP của khách hàng của kết nối điều khiển FTP. Nó sẽ không khớp, nếu khách hàng gửi địa chỉ IP nội bộ của nó trong mạng GCE. Nếu trường hợp này, máy chủ-ftpd tinh khiết từ chối việc chuyển giao hoàn toàn (không có thậm chí cố gắng để kết nối) với thông báo lỗi, bạn đang nhận được:
I won't open a connection to ... (only to ...)
(nơi ...
đầu tiên là địa chỉ IP được cung cấp bởi khách hàng trong lệnh PORT
[địa chỉ cục bộ trong mạng riêng GCE) và ...
thứ hai là địa chỉ IP [NATed] bên ngoài của máy khách, như máy chủ đã biết).
Thậm chí nếu khách hàng báo cáo địa chỉ [NAT] bên ngoài trong lệnh PORT
, nó vẫn sẽ không làm việc như những nỗ lực kết nối sẽ không nhận được quá khứ NAT và tường lửa.
Vì lý do này, chế độ FTP thụ động tồn tại, trong đó máy khách kết nối với máy chủ để mở kết nối truyền dữ liệu. Trên thực tế, không ai sử dụng chế độ hoạt động hiện nay.
Xem (bài viết của tôi) FTP connection modes để biết chi tiết về các chế độ.
Vì vậy, hãy chuyển sang chế độ thụ động. Làm thế nào điều này được thực hiện là khách hàng cụ thể.
Trong phổ biến nhất * nix ftp
dòng lệnh khách hàng, sử dụng công tắc -p
dòng lệnh, mặc dù chế độ thụ động được sử dụng bởi mặc định anyway:
-p
Use passive mode for data transfers. Allows use of ftp in environments where a firewall prevents connections from the outside world back to the client machine. Requires that the ftp server sup- port the PASV command. This is the default now for all clients (ftp and pftp) due to security concerns using the PORT transfer mode. The flag is kept for compatibility only and has no effect anymore.
Một số khách hàng còn hỗ trợ passive
lệnh .
Nguồn
2015-02-18 10:17:39
Đây là vấn đề của tôi quá; rõ ràng, không phải tất cả các máy khách FTP Linux đều sử dụng chế độ thụ động theo mặc định. –
chỉ để thêm, lệnh là 'ftp -p SERVER' – arun
True. loại bỏ .. – Row1e