ubuntu20.04部署ftp服务
一. 安装ftp服务并创建登录用户
1
| sudo apt-get install vsftpd
|
添加ftp用户
创建用户(用户名为myftp,与后面vsftpd配置文件对应):
1 2 3 4 5
| sudo useradd -m myftp -d /home/myftp
sudo useradd -m myftp -d /home/myftp -s /bin/bash/nologin
sudo passwd myftp
|
创建用户目录,并赋予权限(此步骤必须在创建用户之后
)
1 2
| sudo mkdir /home/myftp sudo chmod 755 /home/myftp -R
|
二. 修改服务配置
1
| sudo vi /etc/vsftpd.conf
|
配置如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| listen=YES
anonymous_enable=NO local_enable=YES write_enable=YES local_umask=022
dirmessage_enable=YES use_localtime=YES xferlog_enable=YES connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log xferlog_std_format=YES
ftpd_banner=Welcome to blah FTP service.
local_root=/home/myftp chroot_local_user=YES chroot_list_enable=YES chroot_list_file=/etc/vsftpd.chroot_list
secure_chroot_dir=/var/run/vsftpd/empty pam_service_name=myftp
|
如下为配置后的vsftpd.conf文件内容,#为注释内容,已删除。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| listen=YES anonymous_enable=NO local_enable=YES write_enable=YES dirmessage_enable=YES use_localtime=YES xferlog_enable=YES connect_from_port_20=YES xferlog_file=/var/log/vsftpd.log xferlog_std_format=YES ftpd_banner=Welcome to blah FTP service. local_root=/home/myftp chroot_local_user=YES chroot_list_enable=YES chroot_list_file=/etc/vsftpd.chroot_list secure_chroot_dir=/var/run/vsftpd/empty pam_service_name=myftp rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
|
其中:
- local_root=/home/myftp //该目录为之前创建的用户目录
- pam_service_name=myftp //默认为vsftpd,需要更改为创建的ftp用户名
- 创建文件vsftpd.chroot_list
- sudo vi /etc/vsftpd.chroot_list 并将之前创建的用户名(myftp)添加到该文件中。
重新启动服务
1
| systemctl restart vsftpd
|
效果
本文参考:
https://blog.csdn.net/fangye945a/article/details/85109404