● ftp 서버 (File Transfer Protocol)
파일 전송 프로토콜로서 서버와 클라이언트 사이에서 파일을 전송하기 위한 서버이다.
※ Vmware Workstation 12와 putty 사용하고 있습니다.
※ 탭키 설정을 해놓은 상태입니다.
※ Cent Os cd 삽입상태 입니다.
※ 빨간색이 서버 흰색이 클라이언트입니다.
1. 패키지 설치 유무 확인
rpm -qa | grep vsftpd
2. 패키지 설치 서버 : rpm -ivh vsftpd ~
클라 : rpm -ivh ftp~
3. 데몬 실행 (설치 후에 실행 )
/etc/rc.d/init.d/vsftpd restart ( restart 나 start 나 거기서 거기 )
4. 방화벽 설정
A.selinux
B.firewall 포트번호 21,20번 : tcp
A. selinux
vi /etc/sysconfig/selinux
SELINUX=disabled 로바꿈
리부팅하고 getenforce 하면은
됫다.
B.firewall
system-config-firewall
ftp 체크 해주고 종료 ->ok ->예예 누르면 된다.
5. 설정파일 수정
vi /etc/vsftpd/vsftpd.conf
: 12 anonymous_enable=YES →→ 익명계정 활성화 여부
: 15 local_enable=YES →→ 로컬계정 활성화 여부
: 18 write_enable=YES →→ 쓰기 권한 여부
: 22 local_umask=022 →→ 기본 umask(기본 파일이나 디렉토리 권한) 값
777 - 022 =755 의 권한이 기본 (클라가 서버 접속해서 만들어지는 파일이나 디렉토리의 권한의 값)
: 27 #anon_upload_enable=YES →→ 익명 계정 업로드 허용
: 31 #anon_mkdir_write_enable=YES →→ 익명 계정 디렉토리 생성
: 35 dirmessage_enable=YES →→ 디렉토리 접근 시 메세지 출력 여부.
: 39 xferlog_enable=YES →→ 로그 기록 여부 ( /var/log/xferlog )
: 42 connect_from_port_20=YES →→ 데이터 전송 포트 지정
: 47 #chown_uploads=YES →→ 업로드시 소유권자 변경 활성화. (누구의소유권?)
: 48 #chown_username=whoever →→ 업로드시 소유권자 지정 여부 (root나 heath?)
: 56 xferlog_std_format=YES
: 59 #idle_session_timeout=600 →→ 접속후 600초 동안 대기시 로그아웃
: 62 #data_connection_timeout=120 →→ 데이터 전송후 120초 대기시 로그아웃
: 96 #chroot_local_user=YES →→ 접속디렉토리를 최상위로 보이도록
( 상위디렉토리 접근제한 )
: 97 #chroot_list_enable=YES →→ 디렉토리 제한 예외 계정 활성화
: 99 #chroot_list_file=/etc/vsftpd/chroot_list →→ 디렉토리 제한 예외 계정 리스트파일 지정.
: 105 #ls_recurse_enable=YES →→ ls -R 활성화 여부
: 110 listen=YES →→ Standalone 활성화 여부 옵션
: 118 userlist_enable=YES →→ 유저리스트 활성화 여부 옵션 ( /etc/vsftpd/user_list )
허용목록이든 거부목록이든 쓸 건지에 대한 것
: 119 tcp_wrappers=YES →→ tcp wrapper 활성화
( /etc/hosts.allow , /etc/hosts.deny 둘중하나. )
특정 ip 막는 옵션 ( no_access )
ex> vsftpd : 192.168.1.20:deny
※ 그 외 옵션
userlist_deny=YES 유저리스트를 허용리스트 로 만들건지 거부리스트로 만들건지에 대한 여부
YES=거부목록, NO=허용목록
user_list →→ 계정단위 거부 계정 칠떄 부터 거부하는 옵션
ftpusers →→ pw단위 거부 패스워드 칠때 부터 거부하는 옵션
vi /etc/vsftpd/ftpusers
userlist_files=/etc/vsftpd/user_list 유저리스트 파일 위치
anon_root=/var/ftp 익명 계정의 접속위치 지정
max_client 최대 접속자 수
max_per_ip ip 당 최대 접속 개수
6. 데몬 재실행
/etc/rc.d/init.d/vsftpd restart
7. ftp 클라이언트 접속
ftp [ ip주소 ]
※다운로드 명령어 : get
업로드 명령어 : put
===============================================================
- 실습
/export/sdb/home /heath (홈디렉토리 이동)
/ftpuser/pub/1.gz
2.bzip2
3.tar.gz
(1,2,3 파일을 각 압축방법으로 압축하
고 계정생성과 동시에 자동생성 되도록)
/anonymous(계정X)/anontest(file)
③ /export/sdb/home/ftpuser/pub => itbank 계정 접속위치
※※※아래부터 FTP 서버 설정※※※
④ 홈디렉토리가 최상위 디렉토리로 보이도록 할 것(ftpuser 계정은 제외)
vi /etc/vsftpd/vsftpd.conf
96 97 99 앞에있었던 주석처리를 없애준다.
vi /etc/vsftpd/chroot_list 를 만들어서 ftpuser를 적고 저장 후 나가준다.
그리고 데몬재시작.
heath 계정으로 접속하여 현재 위치를 확인해보니 계속 최상위에 있는것을 알 수 있다.
반면 예외 계정에 추가해둔 ftpuser로 접속시 현재위치를 확인할수있다.
⑤ 익명계정의 FTP 접속위치가 /export/sdb/home/anonymous 가 되도록
vi /etc/vsftpd/vsftpd.conf
맨아래줄에 anon_root=/export/sdb/home/anonymous 추가해준다
⑥ heath 계정은 pw에서 차단되도록 하고 ftpuser itbank anonymous를
제외한 계정은 id에서 차단되도록 설정할 것
vi /etc/vsftpd/vsftpd.conf
userlist_deny=NO 추가 시킨다.
vi /etc/vsftpd/user_list 로 들어간후
위와 같이 편집해 준다.
vi /etc/vsftpd/ftpuser 로 들어간다 그리고 heath 계정을 추가.
그리고 id test1 test2 를 만들어주고
데몬 재시작을 해준다.
heath 계정으로 접속하려하니 비밀번호를 치니까 막힌다.
ftpuser는 잘 들어가 진다.
test1 으로 들어가려니 아이디부터 막혀버린다.
⑦ 윈도우 호스트OS 에서 vsftpd 서비스 접속 차단할 것
⑧ vnc 해상도 설정
세션 1 : root (1280x720)
세션 2 : heath (800x600)
'전기기사 > 리눅스' 카테고리의 다른 글
21.리눅스 SSH (Secure SHell) (0) | 2019.01.03 |
---|---|
20. 리눅스 NFS(Network File System),AutoFS 서버 (0) | 2019.01.03 |
[리눅스1] 리눅스 ftp서버, vnc서버 (0) | 2019.01.03 |
[리눅스1] 리눅스 LVM (Logical Volume Manager ) (0) | 2019.01.03 |
[리눅스1] 리눅스 telnet구축 (0) | 2019.01.03 |
댓글