| ssh를 이용한 vsftpd | 작성일 : 2003/10/14 01:52 |
| 조회수 : 12371 |
|
제 목 : ssh를 이용한 vsftpd 작성자 : 좋은진호(truefeel, http://coffeenix.net/ ) 작성일 : 2003.10.13(월) FTP는 암호화되지 않은 형태로 인증과정과 파일이 전송이 이뤄진다. 이는 전송되는 중간에 스니핑이 이뤄진다면 고스란히 해커(?)의 손에 ID/PW, 전송 파일이 유출될 수도 있음을 의미한다. 이글에서는 보다 안전하게 ssh 터널링을 통한 FTP 전송과 vsftpd 설정에 대해 소개한다. 1. ssh 터널링 만들기 * 필요한 조건 - FTP 서버에서는 ssh 서버가 동작중이어야 한다. (서버명을 free, ID는 truefeel 이라고 가정) - client에서는 ssh 클라이언트가 있어야 한다. 연결과정을 그러보면. 로컬의 FTP클라언트 -> ssh 클라이언트 -> 네트워크(암호화 전송) -> ssh 서버 -> FTP 서버 ![]() [ SSH 터널링. 이미지는 www-cs.stanford.edu/security/ 에서 ] 터널링을 만들어보자! # ssh -CNf -L10021:free:21 truefeel@free -C : 압축해서 전송한다. -N : 명령어 실행없이 시작한다. -f : 백그라운드로 실행한다. -L : 원격서버의 포트를 로컬로 포워딩한다. (즉, 터널링을 만들어줌) free서버의 FTP(21번 포트)를 로컬의 10021번 포트로 포워딩한다. 즉 로컬의 10021번 포트를 통해 free의 FTP서버에 접속할 수 있다. 이 때 원격끼리는 암호화되어 전송된다. 만약 원격의 ssh서버가 다른 포트를 사용한다면 -p [포트] 옵셥까지 뒤에 붙여주면 된다. ps aux 하면 ssh가 백그라운드로 떠있는 것을 확인할 수 있다. 2. ftp 접속 및 vsftpd 설정 ftp명령으로 로컬의 10021번으로 접속을 하면 원격의 free FTP서버로 접속하게 된다.
접속은 정상적으로 이뤄졌는데, 명령어를 입력했더니 'Security: Bad IP connecting.'에러가 발생을 했다. /etc/vsftpd.conf에 다음 한 줄을 추가하면 쉽게 해결할 수 있다. pasv_promiscuous=YES * 참고자료 - ssh 맨페이지 - Re: hello and a vsftpd configuration problem for FTP tunnelling http://shoe.bocks.com/nlug/2003-Jun/3022.html |
|||||||||
|
|