SFTP를 설정했지만 iptables에 문제가 있습니다. 내 규칙은 다음과 같습니다.
A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 20 -j ACCEPT
A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
그런데 저는 vsftpd
FTP 서비스를 사용하고 있습니다. 따라서 iptables 서비스가 중지될 때까지 FTP에 연결되지 않습니다. FTP에 연결하려고 하면 "원격 폴더를 나열하지 못했습니다" 오류가 발생합니다.
어떻게 해야 합니까?
답변1
SFTP와 FTP는 같은 것이 아닙니다.
실제로 SFTP를 의미하는 경우 이는 포트 22를 통해서만 이동하는 SSH 기반 전송입니다(SSH 데몬이 다른 포트에서 수신하도록 구성하지 않은 경우).
FTP는 포트 21과 21(및 기타 포트)에서 실행되는 오래된 파일 전송 프로토콜입니다. 방화벽을 제대로 지원하려면 연결 상태 추적이 필요합니다. nf_conntrack_ftp
netfilter ftp 연결 추적 모듈( )을 로드했는지 확인하세요 .
pasv_min_port
pasv_max_port
및 옵션을 통해 vsftp의 "수동 모드" FTP에 대한 최소/최대 포트를 구성 할 수 있습니다 vsftpd.conf
. 소수의 포트(아마도 하나)로 범위를 좁혀 방화벽에서 열 수 있습니까?
방화벽에 문제가 있는 것이 확실합니까? 일시적으로 비활성화해도 계속 작동합니까?