プライベート ネットワーク内の仮想マシンに FTP サーバーをセットアップしました。外部 IP アドレスがあり、ポート転送にx.x.x.x
使用しています。私の FTP サーバーは で、OS は最新の です。pfSense
vsftpd
Ubuntu 16.04
FTP の内部アドレスは192.168.1.34
、サーバー自体の外部アドレスは ですx.x.x.x
。
ポート 21 と 20 の両方を転送する必要があることはわかっており、実際に転送しました。NAT ルールは次のとおりですpfSense
。
listen=NO
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
allow_writeable_chroot=YES
port_enable=YES
pasv_addr_resolve=NO
connect_from_port_20=YES
pasv_enable=YES
pasv_min_port=40000
pasv_max_port=40100
pasv_address=x.x.x.x
私にとってはすべて問題ないように見えますが、サーバーに接続しようとすると、Error: Connection timed out. Error: Failed to retrieve directory listing.
やったsudo ufw disable
。
答え1
pfsense NAT ルールのデータ ポートを変換しないでください。宛先ポート 400xx への受信は、現在の 20+xx ではなく、vsftpd サーバー上の 400xx に接続する必要があります。