다른 포럼을 탐색했지만 VSFTPD를 사용하여 연결 거부 문제를 해결할 수 없습니다. 자세한 내용은 다음과 같습니다.
VSFTPD.conf
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
connect_from_port_20=YES
chroot_local_user=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=NO
tcp_wrappers=NO
listen_port=18901
local_root=/ftp
log_ftp_protocol=YES
dual_log_enable=YES
pasv_enable=YES
pasv_promiscuous=YES
pasv_max_port=30100
pasv_min_port=30000
IP 테이블
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:21
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp spt:20
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:21 state NEW
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp spt:20
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp spt:21
내 서버는 AWS에 있습니다. 포트 21을 18901로 전달하는 전달자를 만들었습니다. 또한 AWS 보안 그룹에서는 21, 18901, 30000-30100을 허용합니다.
VSFTPD를 여러 번 다시 설치하고 서비스가 실행 중인지 확인했습니다. 18901이 듣고 있는 모습도 보입니다.
마지막으로 로컬로 연결할 수 있습니다.
[root@ip-10-0-0-1 /]# ftp
ftp> o 10.0.0.1 18901
Connected to 10.0.0.1(10.0.0.1).
220 (vsFTPd 2.2.2)
Name (10.0.0.1:root): ftp_user
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
227 Entering Passive Mode (10,0,0,1,117,109).
150 Here comes the directory listing.
drwxr-xr-x 1 501 501 0 Jul 21 15:22 file
-rw-r--r-- 1 501 501 0 Jul 21 15:21 file.txt
d--------- 1 0 0 0 Aug 01 14:59 pws
226 Directory send OK.
로컬 시스템의 Filezilla 또는 FTPTest.net에서 연결할 수 없습니다.
AWS 보안 정책(인바운드). 아웃바운드는 모든 IP와 모든 포트에 열려 있습니다.
SSH TCP 22 10.100.0.0/18
SSH TCP 22 10.0.0.0/16
Custom TCP Rule TCP 21 0.0.0.0/0
Custom TCP Rule TCP 18901 0.0.0.0/0
Custom TCP Rule TCP 30000 - 31000 0.0.0.0/0
답변1
나는 이것을 이해합니다.
추가해야 해요
pasv_address=<Public IP>
내 회의에.