
vsftpd 서버 설정을 시작할 때 많은 문제가 있었지만 이번에는 정확히 무엇이 잘못되었는지 알 수 없습니다.
직장에 vsftpd를 실행하는 우분투 14.04 서버가 있습니다. 서버는 DMZ의 방화벽 뒤에 있으며 특정 내부 및 전역 IP 주소가 할당되어 있습니다. 로컬 호스트 및 내부 네트워크에서 연결이 작동합니다.
지금까지는 괜찮았지만, 내부 네트워크든 다른 곳이든 전역 IP 주소를 통해 FTP 서버에 액세스하려고 하면 FileZilla가 다음을 제공합니다.
Status: Connecting to <global.ip>:21...
Status: Connection attempt failed with "ECONNREFUSED - Connection refused by server".
Error: Could not connect to server
존재하지 않는 IP를 입력하면 시간 초과 오류가 발생하고 글로벌 IP에 대해 whois 검사를 실행하면 우리 회사 인터넷 서비스 제공업체가 제공되기 때문에 잘못된 IP 주소가 원인인 것을 배제할 수 있습니다.
vsftpd.conf 내부에 50.000 범위의 수동 포트를 설정했으며 방화벽은 포트 20, 21 및 50.000-50.050에서 오는 요청을 전달합니다. 그런 다음 원하는 트래픽을 통과시키기 위해 iptables 구성에 몇 가지 규칙을 다시 추가했습니다.
참고로 내 iptables 설정은 다음과 같습니다.
~$ sudo iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere
tcp dpts:50000:50050
ACCEPT tcp -- anywhere anywhere
tcp dpt:ssh
ACCEPT tcp -- anywhere anywhere
tcp dpt:ftp
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere
tcp spt:ftp-data
그리고 내 vsftpd.conf:
listen=YES
local_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
idle_session_timeout=600
ftpd_banner=Welcome
chroot_local_user=YES
ls_recurse_enable=YES
secure_chroot_dir=/var/run/vsftpd/empty
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_ciphers=HIGH
rsa_cert_file=/home/awacs/vsftp.crt
rsa_private_key_file=/home/awacs/vsftp_clear.key
#pasv_address=<global.ip>
pasv_min_port=50000
pasv_max_port=50050
listen_port=21
pasv_enable=YES
#listen_address=<global.ip>
보시다시피 구성에서 pasv_address
및 매개변수를 시도했습니다. listen_address
Listen_address는 서버가 전역 IP의 요청만 받아들이게 하므로 서버가 전혀 응답하지 않게 만듭니다. pasv_address 설정도 외부 요청이 여전히 작동하지 않고 디렉토리 LIST 명령에서 내부 네트워크 연결이 중단되었기 때문에 만족스럽지 못했습니다.
누군가 내가 무엇을 잘못했거나 간과했는지 말해 줄 수 있다면 나는 매우 기쁠 것입니다. 내부 네트워크에서는 서버가 완벽하게 작동하지만 글로벌 IP를 통해 연결할 수는 없다는 점을 다시 한 번 강조합니다. 미리 감사드립니다.