[FTP Server]
01. 프로그램
-proFTP ,wuftp,vsftpd*
02. 환경 설정 파일
- /etc/vsftpd/vsftpd.conf <- 주 환경 설정 파일
- /etc/vsftpd/user_list <- 사용자 제한(FTP)
- /etc/vsftpd/ftpusers < - PAM
03. FTP 서비스 종류
1) FTP : 인증(ID/PASS)
2) AnonymousFTP : 인증(ID:anonymous,PASS:E-mail)
3) TFTP : 무인증(69)
/etc/vsftpd/vsftpd.conf
anoymous_enable = no //어나니머스 차단
local_enable = yes //일반 ftp 허용
write_enable = yes //생성 수정 삭제 가능
anon_upload_enable = //어나니머스는 위험하므로 업로드 설정
xferlog_enable =yes //로그 기록 허용
connect_from_port_20 = YES //데이터 포트 사용 허용
xferlog_std_format //스탠다드 포맷사용 허용
idle_session_timout =600 //600초 동안 입력안할 시 세션차단
ascii_upload_enable =yes //ascii 업로드 허용
chroot_list_enable=yes //보안디렉터리 허용
chroot_list_file=/etc/vsftpd/chroot_list //설정한 경로에 보안
[포트 변경]
/etc/vsftpd/vsftpd.conf
listen_port =2121 //제어포트 변경
service iptables stop
windows7 알드라이브 설치 //포트 2121로 접속
putty파일을 업로드 하면,
test폴더 안에 업로드가 된 것을 확인할 수 있다.
ftp 192.168.232.210 2121 //쉘로도 접속 가능
운영모드
Active 모드 //server가 먼저 요청
passive 모드 //client가 먼저 요청
모드 결정은 클라이언트가한다.
처음 시작은 active모드로 실행 된다.
passive 모드는 데이터 포트가 1024이상 포트로 사용됨.
FTP
Server
데이터 포트: 20
제어 포트: 21 //액티브 패시브 둘다 사용
방화벽에서 제어포트만 허용했을 경우
//연결은 되지만 데이터를 주고 받을 수 없다.
해결방안 : 방화벽 중단하거나 해당포트를 열어준다.
미친방법 : 모든포트를 개방해준다.
데이터 포트도 고정하는법
pasv_min_port =2020
pasv_max_port =2020
방화벽 설정 //제어포트 2121과 데이터포트2020을 허용해준다.
방화벽에 해당포트까지 열어주니 정상적으로 통신되어 열린다.
[사용자 제한]
/etc/vsftpd/user_list //적혀있는 것들은 전부 로그인차단됩니다.
/etc/vsftpd/ftpusers //적혀있는 것들은 전부 로그인차단됩니다.
user_list와 ftpusers 파일에 둘다 적혀 있어야 차단된다.
두 개의 파일에 root를 전부 주석처리하면 root로 로그인이 된다.
Anonymous ftp
cd /var/ftp
pub디렉터리의 소유권을 777로 변경
위의 사진과 같이 업로드는 되지만, 삭제는 되지않는다.
아래 사진과 같은 문장을 입력해주고
vi banned_emails 을 생성해주고 생성된 파일안에 넣은 값으로는 익명로그인을 할 때 비밀번호로 사용할 수 없다.
위의 값으로 비밀번호를 입력하면, 로그인이 되지 않는다.
쉘에서 접속은
ftp 192.168.232.210 2121
아이디에 anonymous 입력 비번 아무거나 치면 익명계정으로 로그인된다.
[chroot]
changeroot를 통해 자기자신외에 폴더는 보지못하게 설정할 수 있다.
vi/etc/vsftpd/vsftpd.conf //아래와 같이 설정하고
service vsftpd restart
vi /etc/vsftpd/vsftpd.conf/chroot_list //안에 아이디 입력
아래 사진과 같이 자기 폴더 외에는 접근이 불가능하게 된다.
반대로 list에 적힌 애들만 허용하게 하고 싶으면,
vi /etc/vsftpd/vsftpd.conf
chroot_local_user=YES을 입력해주면
list에적힌 test만 허용되고 나머지는 차단된다.
[ftp 속도제한]
각 사용자에게 속도 제한을 건다.
이 설정을 해주지 않으면 한사람이 대역폭을 다 쓰게 됨으로 제한을 걸어줘야 한다.
vi /etc/vsftpd/vsftpd.conf
local_max_rate = 50 //50bps로 제한
anon_max_rate =50 //익명계정 속도 50bps로 제한
[ftp 동시 접속자 수 제한]
max_clients= 10 //11번째 부터 차단.
max_per_ip =2 //같은 ip접속 2개만 허용
3개째 부터 아래 빨간박스와 같이 연결이 되지 않는다.
'System Security' 카테고리의 다른 글
apmtools(apache) (0) | 2019.03.04 |
---|---|
DNS서버 (0) | 2019.02.27 |
NFS(Network File System) (0) | 2019.02.25 |
정리 (0) | 2019.02.25 |
방화벽 (0) | 2019.02.22 |