站点图标 IDC铺

关于Ubuntu server如何搭建vsftpd小记,教程详解需知必看!

Ubuntu server中搭建vsftpd小记

<h1> 在Ubuntu server中安装vsftpd</h1>

sudo apt-get install vsftpd

<h2>添加用户</h2>

搭建FTP的为了登录用户,不能查看其它目录,只能在自己的目录中操作文件,并且不能登录ssh

1. 添加用户:pinkrose

命令格式是:sudo useradd 用户名 -d 用户的登录目录 -s 登录时候的shell

sudo useradd pinkrose -d /home/pinkrose -s /bin/false

可做可不做的一小步:我们可以进入/etc 目录中sudo vim passwd,查看我自己刚才创建的pinkrose的一点用户信息

pinkrose:x:1009:1009::/home/pinkrose:/bin/false

2. 给pinkrose用户添加密码

sudo passwd pinkrose

要输入两次密码,就可以成功设置用户的密码了,如:

<h3>配置vsftpd</h3>

进入/etc目录,然后编辑 vsftpd的配置文件 vsftpd.conf

我修改之后的配置文件是:

listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
dirmessage_enable=YES
use_localtime=YES
connect_from_port_20=YES
#I change
chroot_local_user=YES
chroot_list_enable=NO
chroot_list_file=/etc/vsftpd.chroot_list
secure_chroot_dir=/var/run/vsftpd/empty
#wakasann add config
local_root=/var/www

然后按ESC键,输入”:wq” 保存并退出vim

创建chroot_list_file的文件,

sudo vim /etc/vsftpd.chroot_list

打开之后,输入刚才添加的用户名:pinkrose,一行一个用户名

 

添加完之后,就可以重启vsftpd服务了

 

sudo service vsftpd restart

 

然后我们用FTP工具尝试登录ftp

登录可能会报:

 

1. 530 Login incorrect

[右] 正在连接到 192.168.1.147 -> IP=192.168.1.147 PORT=21
[右] 已连接到 192.168.1.147
[右] 220 (vsFTPd 2.3.5)
[右] USER pinkrose
[右] 331 Please specify the password.
[右] PASS (hidden)
[右] 530 Login incorrect.
[右] 连接失败

解决方法是:

sudo apt-get remove vsftpd
sudo rm /etc/pam.d/vsftpd
sudo apt-get install vsftpd

 

2. 登录提示: vsftpd Connection connect time out

我的解决方法是:打开21端口

退出移动版