树莓派4b 安装配置vsftpd服务
虽然onedrive很方便,但是容量太小了。两个移动硬盘带身上也很不方便。个人云的那些系统有点麻烦。所以…
1、启用ssl。
据说ftp登录时明文不安全,所以:
sudo sh -c 'openssl req -new -x509 -nodes -out vsftpd.pem -keyout vsftpd.pem'
sudo cp vsftpd.pem /etc/ssl/certs/vsftpd.pem
sudo chmod 400 /etc/ssl/certs/vsftpd.pem
/etc/vsftpd.conf 配置文件增改如下:
ssl_enable=YES
allow_anon_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
require_ssl_reuse=NO
ssl_ciphers=HIGH
rsa_cert_file=/etc/ssl/certs/vsftpd.pem
rsa_private_key_file=/etc/ssl/certs/vsftpd.pem
2、开启虚拟用户
我也不知道为什么,既然有这个功能就这么干吧。
添加用户
sudo useradd -d /home/vftpuser -g ftp -s /sbin/nologin vftpuser
sudo nano /etc/vsftpd/vusers.txt
输入虚拟用户的账号密码
yourname
yourpasswd
yourname1
yourpasswd1
加密
sudo apt install db4.7
sudo sh -c 'db4.7_load -T -t hash -f /etc/vsftpd/vusers.txt /etc/vsftpd/vusers.db'
使用在pam.d增加
sudo nano /etc/pam.d/vusers
输入以下内容
auth required pam_userdb.so db=/etc/vsftpd/vusers
account required pam_userdb.so db=/etc/vsftpd/vusers
系统默认虚拟用户为匿名用户的配置,对我个人使用不是很方便,所以设置了
virtual_use_local_privs=YES,不知道有没有什么别的影响
pam_service_name=vusers #因为没有用默认文件所以需要修改
local_enable=YES
write_enable=YES
local_umask=022
guest_enable=YES
guest_username=vftpuser
virtual_use_local_privs=YES
local_root=/mnt/hhd
3、配置外网访问
pasv_enable=YES
pasv_min_port=60000
pasv_max_port=60100
外网转发21,60000-60100,端口至树莓派
以上
参考资料: