【发布时间】:2026-01-04 11:35:02
【问题描述】:
我的目标是在 Ubuntu 20.04 上创建一个外部 ftp 服务器。
我的问题: 当我配置 SSL 证书时,出现 (code=exited, Staus=2/INVALID ARGUMENT) 错误。错误日志并不准确,我至少想知道如何获得关于产生错误的代码的非常详细的报告。
当我运行命令时,我的终端显示以下内容:
sudo systemctl restart vsftpd.service
sudo systemctl tatus vsftpd. status
结果:
vsftpd.service - vsftpd FTP server
Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Sat 2020-10-10 20:12:07 AST; 12s ago
Process: 36977 ExecStartPre=/bin/mkdir -p /var/run/vsftpd/empty (code=exited, status=0/SUCCESS)
Process: 36987 ExecStart=/usr/sbin/vsftpd /etc/vsftpd.conf (code=exited, status=2)
当我使用以下方法浏览日志时:
journal ctl -xn
启动作业已成功执行。但是它会在显示消息后立即关闭:
The job identifier is 13036.
Oct 10 20:15:13 username-Aspire-A315-51 sudo[37104]: pam_unix(sudo:session): session closed
Oct 10 20:15:13 username-Aspire-A315-51 systemd[1]: vsftpd.service:
Main process exited, code=exited, status=2/INVALIDARGUMENT
Subject: Unit process exited
我的 vsfptd.conf 是如何设置的?
pam_service_name=vsftpd
pasv_enable=Yes
pasv_min_port=10000
pasv_max_port=11000
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1_1=YES
ssl_tlsv1_2=NO
ssl_sslv3=NO
require_ssl_reuse=YES
ssl_ciphers=HIGH
rsa_cert_file=/etc/ssl/certs/vsftpd.crt
rsa_private_key_file=/etc/ssl/private/vsftpd.key
服务器在配置 SSL_enable = NO 且默认 rsa_cert 和 rsa_key_files 如下:
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
如果对 SSL 证书和密钥的生成方式有任何疑问。这演示了使用的教程中的代码:
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.key -out /etc/ssl/certs/vsftpd.crt
我已经多次创建和重新创建 SSL 证书。我还注释掉了 IPv6_enable=YES。
我看到了一些关于注释掉以下代码的建议:
/etc/pam.d/vsftpd
这没有成效。
我愿意接受一些进一步的建议,也许会有所帮助。已经过去了几个小时,而且由于缺乏日志详细信息,因此很难对解决方案做出准确的猜测。
【问题讨论】:
标签: ssl-certificate pam vsftpd