歡迎您光臨本站 註冊首頁

【翻譯】在Debian Etch系統中設置支持TLS的ProFTPd伺服器

←手機掃碼閱讀     火星人 @ 2014-03-04 , reply:0

【翻譯】在Debian Etch系統中設置支持TLS的ProFTPd伺服器

小弟的翻譯作品,原教程是http://www.howtoforge.com/proftpd-tls-debian-etch
版本 1.0
原作者: Falko Timme <ft falkotimme com>
翻譯者:Topkey <tinybiz163.com>
最後一次編輯時間 12/03/2007
FTP是一個非常不安全的協議因為所有的密碼和數據都是以明文的形式傳輸的。通過使用TLS,整個的傳輸過程都會被加密,因此可以是FTP變得更加的安全。這篇文章將會說明如何在你的Debian Etch系統中設置支持TLS的ProFTPd伺服器。
我做這篇教程不能保證完全適合你!
1.        前言
在這篇教程中我使用的主機名是server1.example.com,IP地址是192.168.0.100.這些設置可能與你的系統有所不同,所以你可以做適當的修改。
2.        安裝ProFTPd和OpenSSL
TLS需要使用OpenSSL,要安裝ProFTPd和OpenSSL,我們運行下列命令:
apt-get install proftpd openssl
你將會回答下列的提問。
Run proftpd from inetd or standalone? <-- standalone
接下來打開/etc/proftpd/proftpd.conf文件並且修改UseIPv6從on狀態到off狀態;否則你將會在啟動ProFTPd時出現下列警告:
Starting ftp server: proftpd - IPv6 getaddrinfo 'server1.example.com' error: Name or service not known
vi /etc/proftpd/proftpd.conf
[...]
UseIPv6                         off
[...]
由於安全的原因,你也可以在你的/etc/proftpd/proftpd.conf文件中添加以下幾行(感謝Reinaldo Carvalho的文章;我在這裡找到了更多的安全設置說明http://proftpd.org/localsite/Userguide/linked/userguide.html)
vi /etc/proftpd/proftpd.conf
[...]
DefaultRoot ~
IdentLookups off
ServerIdent on "FTP Server ready."
[...]
3.為TLS創建SSL的證書
要使用TLS,我們必須創建一個SSl證書,我把它創建在/etc/proftpd/ssl文件夾下,所以我們要先創建這個文件夾。
mkdir /etc/proftpd/ssl
然後,我們使用下列命令創建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) : <-- 輸入你的國家的名字 (例如, "DE").
State or Province Name (full name) : <-- 輸入你的省或者縣市的名字.
Locality Name (eg, city) []: <-- 輸入你的城市名.
Organization Name (eg, company) : <-- 輸入你的組織名(例如., 你公司的名字).
Organizational Unit Name (eg, section) []: <--輸入你組織的部門名(例如"IT 部門").
Common Name (eg, YOUR name) []: <-- 輸入你的伺服器的域名(例如 "server1.example.com").
Email Address []: <-- 輸入你的EMAIL地址.
4 使ProFTPd支持TLS
要使ProFTPd支持TLS,打開/etc/proftpd/proftpd.conf文件並且找到這以<IfModule mod_tls.c>開頭的部分
vi /etc/proftpd/proftpd.conf
在類似這裡的地方
[...]
<IfModule mod_tls.c>
TLSEngine                  off
</IfModule>
[...]
修改上面的參數為
[...]
<IfModule mod_tls.c>
TLSEngine                  on
TLSLog                     /var/log/proftpd/tls.log
TLSProtocol                SSLv23
TLSOptions                 NoCertRequest
TLSRSACertificateFile      /etc/proftpd/ssl/proftpd.cert.pem
TLSRSACertificateKeyFile   /etc/proftpd/ssl/proftpd.key.pem
TLSVerifyClient            off
TLSRequired                on
</IfModule>
[...]
如果你的配置中TLSRequired 是on的,你的FTP伺服器只支持TLS的鏈接(這樣的話將會阻止任何所有的老的不支持TLS的FTP客戶端);註銷掉這一行或者把 TLSRequired設置為off的話,TLS和不支持TLS的鏈接都將會被允許,依賴你的FTP客戶端的支持。
然後重啟ProFTPd
/etc/init.d/proftpd restart
做到這一步,你就可以用FTP客戶端試著連接伺服器,你應該配置你的FTP客戶端使用TLS模式(如果你設置TLSRequired on的話這一步是必不可少的)看下一章節我們如何用FileZilla來做到這一點的。
如果你在使用TLS的過程中遇到問題,你可以查看TLS的日誌文件/var/log/proftpd/tls.log.
5 配置FileZilla支持TLS
要使用FTP的TLS功能,你需要你的客戶端支持TLS,例如FileZilla.
在FileZilla中,打開伺服器管理器:



選擇伺服器使用ProFTPd支持TLS;在伺服器類型的下拉菜單中,選擇文件而非默認的FTP:






現在你可以連接你的伺服器.如果你第一次這樣做,你必須接受伺服器的新的SSL證書。


如果一切正常的話,你將會登錄到伺服器
《解決方案》

非常不錯啊,呵呵,值得支持啊!

[火星人 ] 【翻譯】在Debian Etch系統中設置支持TLS的ProFTPd伺服器已經有725次圍觀

http://coctec.com/docs/service/show-post-23686.html