我在尝试在 Ubuntu Server 13.10 机器上设置 FTPS 服务器时遇到问题。我安装了 vsftpd。
当我尝试使用启动服务时,sudo service vsftpd start
我得到:
vsftpd start/pre-start, process 5922
然而,ps aux | grep vsftpd
没有任何结果。
我发现这个错误在/var/log/dmesg
:
[ 11.212518] init: vsftpd main process (1137) terminated with status 2
其结果sudo vsftpd
是:
500 OOPS: SSL: cannot load RSA certificate
的权限\etc\vsftpd\vsftpd.pem
当前设置为:
-rw-r--r-- 1 root root 1708 Jan 28 05:15 vsftpd.pem
我尝试将权限更改为 777 但仍然不起作用。
我使用以下命令来创建证书:
openssl req -x509 -nodes -days 720 -newkey rsa:2048 -keyout /etc/vsftpd/vsftpd.pem -out /etc/vsftpd/vsftpd.pem
我/etc/vsftpd.conf
的如下:
listen=YES
anonymous_enable=NO
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=NO
xferlog_file=/var/log/vsftpd.log
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/vsftpd/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
listen_port=2000
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
hide_ids=YES
max_per_ip=10
max_clients=10
port_enable=YES
pasv_enable=YES
pasv_min_port=11000
pasv_max_port=11030
require_ssl_reuse=NO
任何帮助都将不胜感激,因为我正式陷入了一片空白。
提前致谢。
更新:
我刚刚尝试过:
rsa_cert_file=/etc/ssl/private/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
成功了。所以我认为我搞砸了证书生成。我对 OpenSSL 了解不够多,无法进一步弄清楚。
答案1
我找到了答案。我将 openssl 生成命令从:
openssl req -x509 -nodes -days 720 -newkey rsa:2048 -keyout /etc/vsftpd/vsftpd.pem -out /etc/vsftpd/vsftpd.pem
到:
openssl req -x509 -nodes -days 720 -newkey rsa:2048 -keyout /etc/vsftpd/vsftpd.key -out /etc/vsftpd/vsftpd.pem
得到 a/etc/vsftpd/vsftpd.pem
和 a /etc/vsftpd/vsftpd.key
。
我进行了更新/etc/vsftpd.conf
并且服务立即启动。