검색 엔진의 방문이 늘어나고 있군...

Posted
Filed under 프로그램과 명령어/서버와 서비스
참조 원문 : Setting Up ProFTPd + TLS On Ubuntu 12.10

  제목에는 배포판의 특정 버전이 적혀 있지만 사실상 거의 영향이 없습니다. 앞으로도 설정 방법이 변하는 일은 좀처럼 없겠죠.

1. 참고사항
  호스트명은 server1.example.com이며, IP는 192.168.0.100으로 간주합니다. 모든 단계는 root 권한을 필요로 하므로 앞으로 나올 모든 명령어 앞에 sudo를 붙이던가 sudo su 명령어를 통해 root 권한을 획득하시기 바랍니다.

2. ProFTPd와 OpenSSL 설치
  TLS를 위해 OpenSSL이 필요하기 때문에 ProFTPd와 OpenSSL을 모두 설치해야 하며 이는 아래 명령어로 해결할 수 있습니다.
apt-get install proftpd openssl
  설치 중 proftpd를 standalone으로 돌릴 것인지 xinetd로 돌릴 것인지를 물어보는데 standalone으로 답합니다.
  보안을 이유로 /etc/proftpd/proftpd.conf 파일에 아래의 내용을 추가하는 것도 좋습니다.
[...]
DefaultRoot ~
ServerIdent on "FTP Server ready."
[...]

3. TLS를 위해 SSL 인증서 생성하기
  TLS를 사용하려면 SSL 인증서가 있어야 하는데 여기서는 /etc/proftpd/ssl 디렉토리 안에 만들어 넣는다고 가정하겠습니다. 먼저 디렉토리를 생성한 후 아래 명령어를 사용하여 인증서 생성을 위한 질문에 답합니다.
# openssl req -new -x509 -days 365 -nodes -out /etc/proftpd/ssl/proftpd.cert.pem -keyout /etc/proftpd/ssl/proftpd.key.pem
Country Name (2 letter code) [AU]: <-- 국가명(예: "KR").
State or Province Name (full name) [Some-State]: <-- 도
Locality Name (eg, city) []: <-- 도시
Organization Name (eg, company) [Internet Widgits Pty Ltd]: <-- 조직명
Name (e.g., the name of your company). 회사명
Organizational Unit Name (eg, section) []: <-- 부서명(예: "IT 부서").
Common Name (eg, YOUR name) []: <-- 시스템의 Fully Qualified Domain Name(예: "server1.example.com").
Email Address []: <-- 이메일 주소

4. ProFTPd에서 TLS 사용하기
  ProFTPd에서 TLS를 사용하려면 아래처럼 /etc/proftpd/proftpd.conf 파일에서 Include /etc/proftpd/tls.conf 라는 줄의 주석처리를 해제해야 합니다.
[...]
#
# This is used for FTPS connections
#
Include /etc/proftpd/tls.conf
[...]
  그 후 /etc/proftpd/tls.conf 파일을 열어 아래처럼 설정합니다.
<IfModule mod_tls.c>
TLSEngine                  on
TLSLog                     /var/log/proftpd/tls.log
TLSProtocol                SSLv23
TLSOptions                 NoCertRequest AllowClientRenegotiations
TLSRSACertificateFile      /etc/proftpd/ssl/proftpd.cert.pem
TLSRSACertificateKeyFile   /etc/proftpd/ssl/proftpd.key.pem
TLSVerifyClient            off
TLSRequired                on
</IfModule>
  TLSRequired on으로 설정하면 TLS 연결만 허용하므로 TLS를 지원하지 않는 FTP 클라이언트는 접속할 수 없습니다. TLS와 일반 접속을 모두 허용하려면 해당 줄을 주석처리 하거나 TLSRequired off로 설정합니다. 설정이 끝나면 ProFTPd를 리스타트합니다.
/etc/init.d/proftpd restart
  이제 모든 설정이 끝났으므로 FTP 클라이언트에서 알맞은 설정(TLS를 사용하여 접속하도록 설정)을 한 후 접속하면 됩니다. TLS와 관련된 문제가 발생 경우 /var/log/proftpd/tls.log 파일을 통해 내용을 확인할 수 있습니다.

2013/07/02 11:21 2013/07/02 11:21