Ubuntu 16.04.6 build FTP server

Install vsftpd3.0.3 (FTP server)

sudo apt install vsftpd

configure vsftpd

  1. open configuration file
vim /etc/vsftpd.conf
  1. Modify the following configuration items
listen=YES
listen_ipv6=NO
use_localtime=YES # 默认是GMT时间,改成使用本机系统时间
anonymous_enable=NO # 不允许匿名用户登录
local_enable=YES # 允许本地用户登录
write_enable=YES # 本地用户可以在自己家目录中进行读写操作
xferlog_enable=YES # 开启日志记录
xferlog_file=/var/log/vsftpd.log # 设置日志文件路径
xferlog_std_format=YES # 设置日志格式为标准输出
connect_from_port_20=YES # 指定FTP使用20端口进行数据传输,默认值为YES
chroot_local_user=NO # 用于指定用户列表文件中的用户是否允许切换到上级目录
chroot_list_enable=YES # 设置是否启用chroot_list_file配置项指定的用户列表文件
chroot_list_file=/etc/vsftpd.chroot_list # 用户名单来源于/etc/vsftpd.chroot_list
pam_service_name=ftp # 原配置中为vsftpd,ubuntu用户需要更改成ftp

user_sub_token=$USER # 新增
local_root=/home/$USER/ftp # 新增 当本地用户登入时,将被更换到定义的目录下,默认值为各用户的家目录
anon_root=/home/$USER/ftp # 新增 使用匿名登入时,所登入的目录
allow_writeable_chroot=YES # 新增
pasv_enable=YES # 新增 开启被动模式
pasv_min_port=61001 # 新增 被动模式使用端口范围最小值
pasv_min_port=62000 # 新增 被动模式使用端口范围最大值
  1. Add the newly added virtual user (ftpuser) to the vsftpd.chroot_list file, which will be referenced later
vim /etc/vsftpd.chroot_list
  1. start service
service vsftpd start # 启动服务
service vsftpd restart # 重启服务
service vsftpd stop # 停止服务
service vsftpd status # 查看服务

Create virtual users

  1. Choose to create an ftp folder in the root directory or user directory
mkdir -p /home/ftpuser
  1. add anonymous user
useradd ftpuser -d /home/ftpuser -s /sbin/nologin
  1. reset ftpuser password
passwd ftpuser (123456)
  1. Create a new user FTP folder and modify permissions
mkdir /home/ftpuser/ftp
chmod 777 -R /home/ftpuser/ftp

Create a new user example

  1. Create user ftp folder
mkdir -p /home/tju
  1. add anonymous user
useradd tju -d /home/tju -s /sbin/nologin
  1. reset tju password
passwd tju (qwer1234)
  1. Create a new user FTP folder and modify permissions
mkdir /home/tju/ftp
chmod 777 -R /home/tju/ftp
  1. Add the newly added virtual user (tju) to the /etc/vsftpd.chroot_list file
  2. restart service
service vsftpd restart # 重启服务

Guess you like

Origin blog.csdn.net/qq_28413435/article/details/103548308