在Ubuntu 12.10上设置ProFTPd + TLS
FTP是非常不安全的协议,因为所有密码和所有数据都以明文形式传输。 通过使用TLS,可以对整个通信进行加密,从而使FTP更加安全。 本文介绍如何在Ubuntu 12.10服务器上使用TLS设置ProFTPd。
我不会保证这将为您工作!
1初步说明
在本教程中,我使用IP地址为192.168.0.100
的hostname server1.example.com
。 这些设置可能会有所不同,因此您必须在适当的情况下更换它们。
因为我们必须使用root权限运行本教程的所有步骤,所以我们可以使用字符串sudo
在本教程中添加所有命令,也可以通过键入来成为root
sudo su
2安装ProFTPd和OpenSSL
TLS需要OpenSSL; 安装ProFTPd和OpenSSL,我们只需运行:
apt-get install proftpd openssl
你会被问到一个问题:
运行proftpd:
< - standalone
出于安全考虑,您可以将以下行添加到/etc/proftpd/proftpd.conf
(感谢Reinaldo Carvalho;更多信息可以在这里找到: http : //proftpd.org/localsite/Userguide/linked/userguide.html ):
vi /etc/proftpd/proftpd.conf
[...] |
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
国家名称(2个字母代码)[AU]:
< - 输入您的国家名称(例如,“DE”)。 州或省名称(全名)[某些州]:
< - 输入您的州或省名称。 地点名称(例如,城市)[]:
< - 输入您的城市。 组织名称(例如,公司)[互联网Widgits有限公司]:
< - 输入您的组织名称(例如,您公司的名称)。 组织单位名称(如部分)[]:
< - 输入您的组织单位名称(例如“IT部门”)。 通用名称(例如,您的姓名)[]:
< - 输入系统的完全限定域名(例如“server1.example.com”)。 电子邮件地址[]:
< - 输入您的电子邮件地址。
4在ProFTPd中启用TLS
为了在ProFTPd中启用TLS,请打开/etc/proftpd/proftpd.conf ...
vi /etc/proftpd/proftpd.conf
...并取消注释Include /etc/proftpd/tls.conf
行:
[...] |
然后打开/etc/proftpd/tls.conf
,看看如下:
vi /etc/proftpd/tls.conf
<IfModule mod_tls.c> |
如果您使用TLSRequired
,则只允许TLS连接(这将锁定任何没有TLS支持的旧FTP客户端的用户); 通过注释该行或使用TLSRequired,
可以使用TLS和非TLS连接,具体取决于FTP客户端支持的内容。
之后重新启动ProFTPd:
/etc/init.d/proftpd restart
而已。 您现在可以尝试使用FTP客户端连接; 但是,您应该将FTP客户端配置为使用TLS(如果您使用TLSRequired
则必须使用TLS) - 请参阅下一章如何使用FileZilla执行此操作。
如果您遇到TLS问题,可以查看TLS日志文件/var/log/proftpd/tls.log
。
5配置FileZilla for TLS
为了使用FTP与TLS,您需要一个支持TLS的FTP客户端,如FileZilla 。
在FileZilla中,打开站点管理器:
选择使用ProFTPd与TLS的服务器; 在“ 服务器类型”
下拉菜单中,选择FTPES
而不是普通FTP
:
现在可以连接到服务器。 如果您是第一次这样做,则必须接受服务器的新SSL证书:
如果一切顺利,您现在应该在服务器上登录:
6链接
- ProFTPd: http : //www.proftpd.org/
- FileZilla: http : //filezilla-project.org/
- Ubuntu: http : //www.ubuntu.com/