회사 서버 잘 쓰다가 갑자기 방화벽 설치한다고 한다.
그래서 방화벽 내가 설치하고 NAT 설정 했는데 문제는 파일질라로 FTP 잘만 되던게 안되기 시작했다.
방화벽이 없었을때는 NAT 설정해서 사용했는데 지금은 해결이 안되기 때문에 FTP 설정을 다시 했다.
vsftpd 설치
# apt install vsftpd
vsftpd가 설치가 되고 실행된다. 실행이 잘 되고 있는지 상태를 확인해야한다.
service vsftpd status
ftp 포트가 LISTEN 중인지 확인해보자
# netstat -natp | grep ftp
이제 환경설정을 해야한다.
# vi /etc/vsftpd.conf
나의 경우엔 아무것도 안써있었다. 그래서 자신에 상황에 맞게 아래의 링크에서 참고하여 설정했다.
https://security.appspot.com/vsftpd/vsftpd_conf.html
Manpage of VSFTPD.CONF
VSFTPD.CONF Section: File Formats (5) Index Return to Main Contents NAME vsftpd.conf - config file for vsftpd DESCRIPTION vsftpd.conf may be used to control various aspects of vsftpd's behaviour. By default, vsftpd looks for this file at the location
security.appspot.com
이제부터 환경설정인데 두가지다.
1. 방화벽 없이 PC 통신일 경우
액티브 모드만으로도 충분할 겁니다. 근데 파일 리스트라던지 데이터 통신이 안된다면 아래 2번 방법을 해보자.
listen=YES
listen_ipv6=NO // 1, 2번은 주석이 아니니 설정 변경하세요
listen_port=21 // 주석해제
2. 만약 방화벽 같은 게 있다면 아래의 방법을 참조
패시브 모드가 필요하다. 액티브와 패시브 모드는 나도 잘 모른다. 대충 알아만봤다.
그리고 처음 두 줄은 주석이 해체되어있다. 그러니 아래처럼 변경해주고 listen_port 부터는 그냥 귀찮으니 맨 밑에 쓰자.
listen=YES
listen_ipv6=NO // 1, 2번은 주석이 아니니 설정 변경하세요
listen_port=21 // 주석해제
pasv_min_port=60020
pasv_max_port=60030
공통적으로 1번 방법은 포트포워딩에서 TCP 21, 2번 방법은 TCP 21. 60020~60030을 같이 열어줘야 한다.
* 로그인 및 파일전송 로그는 /var/log/vsftpd.log 파일에 기록
* /etc/ftpusers 파일에 쓰여진 사용자는 FTP 로그인이 거부
아직까지 잘 모르겠지만 서비스 재시작하면 완료다.
# service vsftpd restart
* 보통 접속시 active mode로 하며 접속은 되는데 파일리스트가 제대로 안보이거나 파일 전송이 안되는데 대부분 방화벽이 주 원인이다. 서버에서는 클라이언트가 알려준 포트로 접속을 했는데 방화벽에서 차단을 하기 때문이다. 그래서 passive mode 포트를 입력하고 방화벽에서 해당 포트를 열어주면된다.
'IT > Linux Server' 카테고리의 다른 글
[ubuntu server 20.04 LTS] MySQL 외부 접속 문제 (1) | 2021.02.02 |
---|---|
[ubuntu server 20.04 LTS] MySQL 설치 (0) | 2021.02.01 |
[Ubuntu Server] 파일질라 FTP 파일 이동 및 삭제 문제 (0) | 2021.01.12 |
[Ubuntu Server 20.04 LTS] MQTT Broker - Mosquitto (0) | 2020.12.22 |
[Ubuntu Server 20.04 LTS] IP 고정 할당 (0) | 2020.09.03 |