< windows 서버에 filezilla sftp server 설치하는 법 >

요즘 일반유저도 컴퓨터 보안에 대한 관심이 높아지고 있습니다.
그래서 오늘은 보안에 취약한 서비스, 그 중에서 가장 원초적이면서 쉽게 해킹에 노출 될 수 있는
서비스중에 하나인 ftp 서비스에 대해 글을 올리겠습니다.

telnet 서비스는 오래전부터 ssh 서비스로 바꼈고, 요즘에는 거의 쓰지 않는 서비스가 되었습니다.
그러나 telnet 서비스와 마찬가지로 해킹 sniffer에 쉽게 노출된 ftp서비스는 아직도 많이 쓰고 있습니다.
그나마 다행히 최근부터 호스팅업체나 idc 등에서 sftp 서비스로 대체하고 있는 실정입니다.
아마도 ftp 서비스도 몇년이 지나면 telnet과 같이 거의 사장되는 서비스가 될지 모릅니다.

아래 그림은 알ftp, 파일질라 같은 프로그램으로 일반 ftp 접속을 했을때, tcpdump로 스니핑을 해본 결과
입니다.
그림에 나온것 처럼 ftp id = ftp_user , password = abc 인것을 쉽게 텍스트로 확인 할 수 있습니다.

 

사용자 삽입 이미지
tcpdump




리눅스 서버에서는 특별한 세팅없이 sftp 서비스를 제공할 수 있고, filezilla-client 같은 프로그램으로 접속해서
sftp를 사용하면 됩니다.

아래 링크는  filezilla client 사용법 입니다.
http://youngsam.kr/1145


오늘은 windows 서버에 filezilla sftp server를 설치하는 법에 대해 설명드리겠습니다.

1. 아래 링크에서 파일질라 서버를 다운 받고 설치를 합니다.
    http://filezilla-project.org/

2. 모두 디폴트로 설치하고 실행하면 아래와 같이 FileZilla Server 프로그램이 실행됩니다.
   그림 처럼 EDIT > Settings 를 클릭합니다.

 

사용자 삽입 이미지
FileZilla Server



3. General Settings에서 Connection Settings > Listen on these ports: 990 으로 Listen port를
    990 으로 설정합니다.(다른 포트로 변경해도 상관없음)

 

사용자 삽입 이미지
FileZilla Server - 2




4. 왼쪽에 admin interface settings 을 클릭 합니다.
   filezilla-server admin과 통신할 포트를 14147 로 디폴트값을 씁니다(변경해도 상관없음)
   다음으로 "Change Admin password" 를 체크하고 local에서 filezilla-server admin으로 접속할
   password를 새로 설정합니다.(admin 접속시 사용할 비밀번호를 넣습니다)

 

사용자 삽입 이미지
FileZilla Server - 3





























5.  왼쪽에 "SSL/TLS settings"를 클릭합니다.
   아래 그림과 같이 Enable FTP over SSL/TLS support(FTPS) 에 체크 합니다.
  sftp 포트가 디폴트로 990으로 되어 있습니다. General settings에서 설정한 Listen port 와
  같은 값인지 확인합니다.
   Allow explicit FTP over TLS 체크 합니다
   Disallow plain unencrypted FTP 체크 합니다.
   설정이 다됬으면 아래쪽에 "generate new certificate.."버튼을 클릭합니다.

 

사용자 삽입 이미지
FileZilla Server - 4


                                                                                      




6.  Key size: 4096 bit 를 선택하고 국가번호: 82  ...
    정보를 입력한후에 키생성 합니다.
    인증키 저장위치를 본인이 설정한 안전한 위치에 저장을 합니다.
    확인을 눌러 이전 항목으로 간후에
    Key password 에 인증키 암호를 넣습니다.
    settings 항목을 빠져 나갑니다.


 

사용자 삽입 이미지
FileZilla Server - 5




7.  이제 Edit > Users 항목을 설정합니다. 아래 그림 처럼 Users를 클릭하여 사용자를 등록합니다.

 

사용자 삽입 이미지
FileZilla Server - 6




8.  아래 그림처럼 General > Users 항목에서 Add 버튼을 클릭해서 사용자를 추가합니다.
     Account Settings 에서
    "Enable account" 와 "Password" 에 체크를 하고 password를 넣습니다.(이 패스워드는 ftp접속시 사용됨)
     SFTP로만 접속할 수 있도록 설정 하려면
    아래에 "Force SSL for user login" 값을 체크합니다
.

사용자 삽입 이미지



9.  Users > Shared folders 항목에서 오른쪽에 추가한 사용자(ftp_user)를 클릭한후에
   공유폴더를 지정합니다. (사용자를 여러개 추가 했으면 각 사용자를 클릭하여 공유폴더를 각각 추가합니다)
   아래는 D 드라이버 전체를 공유폴더로 지정한 그림입니다.
   설정이 완료 되었으면 확인후 Users 설정을 빠져나갑니다.

사용자 삽입 이미지



10. 이제 filezilla-server 설정이 완료 되었으므로 이제까지 설정한 세팅이 적용되도록 서비스를 재시작 합니다.
    아래 그리처럼 작업관리자에서
     "FileZilla Server.exe"
프로세스를 죽인후 프로그램을 다시 시작하거나

사용자 삽입 이미지


   또는 아래 그림 처럼
   모든프로그램 > FileZilla Server > Stop FileZilla Server 를 클릭하여 FileZilla server를 정지 시킨후
   다시 Start FileZilla Server 를 클릭하여 재시작 합니다.

사용자 삽입 이미지



11.  이제 앞에서 설정한 admin 비밀번호를 입력하고 FileZilla admin으로 접속합니다.

     아래 그림은 로컬에서 FileZilla server 에 접속한 경우 이므로
      Server Address : 127.0.0.1 (
외부에서 파일질라 admin 접속하려면 해당 서버의 ip값을 넣습니다 )
       port : 14147 (
앞에서 admin 설정시 포트값
)
      Administration Password : (
앞에서 파일질라 admin 패스워드 설정한 값
)
      Always connect to this server
에 체크 합니다

사용자 삽입 이미지



12. 시작 > run > cmd 엔터로 cmd창을 연후에
     "netstat -an"
명령어로 FileZilla Server990 포트가 열려 있는지 확인합니다.
     
아래 그림에 보면 TCP 990 번 포트가 Listening 하고 있음을 확인할 수 있습니다.

사용자 삽입 이미지



 13.  이제 FileZilla Server 설정은 완료 됬으므로
      클라이언트 세팅을 해 봅니다.
        Sftp
를 사용하려는 pc에 위에 링크로 들어가서 FileZilla Client 프로그램을 다운 받은후 설치 합니다.
      설치 후 아래 그림처럼 File > 사이트 관리자 를 클릭합니다.

사용자 삽입 이미지



 14. 사이트 관리자 창이 나오면
      
왼쪽 아래에 "새 사이트"를 클릭해서 파일질라 연결을 만듭니다.
     
오른쪽에 일반 탭에서 그림과 같이 설정합니다.

   
호스트: 111.111.111.111 (파일질라 serverip address를 입력합니다)
   
포트 : 990 (파일질라 server에서 설정했던 포트를 입력합니다
)
   
서버종류 : "명시적 TLS/SSL 상의 FPTES-FTP" 를 선택합니다
.
   
로그온 형식 : 비밀번호 요청

   
사용자 : ftp_user (파일질라 server에서 Users에서 등록했던 ID)

    
설정후에 확인을 누릅니다.

사용자 삽입 이미지



 15.  사이트관리자 열기 아이콘의 아래화살표 표시를 누르면 이제까지 등록한 연결명(vm)이 보입니다.
      해당 연결명을 클릭합니다. (여기서는 앞에서 vm으로 이름을 만들었으므로 vm을 클릭합니다)

사용자 삽입 이미지



 16.  미리 등록한 연결이름을 클릭하면 패스워드 입력창이 뜨는데
      인증키를 만들때 입력했던 "Key Password" 를 입력하면 서버에 접속이 됩니다.
      아래그림은 sftp990포트로 파일질라 server에 접속한 상태 입니다.

사용자 삽입 이미지


 
17. 아래 그림은 Sftp로 파일질라 서버에 접속할 때,
     tcpdump
로 스니핑을 해본 결과 화면 입니다.
   그림 처럼 ftps 접속이 이루어지면서 ftp idpassword는 암호화 되어
   해커가 ftp 접속 패킷을 도청해도 내용을 알 수 없음을 확인할 수 있습니다.

사용자 삽입 이미지


2010/04/14 09:57 2010/04/14 09:57

Trackback Address :: 이 글에는 트랙백을 보낼 수 없습니다