Ubuntu 14.04 LTS vsftpd安装+配置

本文转自setoy博主的CSDN https://blog.csdn.net/setoy/article/details/51447389
vsftp真实蛋疼,教程满天飞,90%是没用的,折腾了n久,这里实现了禁用匿名用户和虚拟用户,只启用本地用户登录。

安装vsftpd(默认端口21):

apt-get install vsftpd

然后添加ftp用户,由于只拿来登录ftp,所以为了安全把shell设置为nologin,同时把对应的家目录设置为你要让该用户访问的目录,命令如下:

添加一个linux用户作为FTP登录,该账号没有访问linux其他目录的权限

useradd -d /var/ftp -s /usr/sbin/nologin username

这样就添加了一个名为username的用户,该用户不能用作系统登陆。然后修改该用户密码:

修改该用户密码

passwd username

根据提示,连续输入两次密码后就更改了username这个用户的密码。

vsftpd.conf

现在开始最关键的vsftp的配置,主要配置文件是vi /etc/vsftpd.conf,内容如下:

#禁用匿名用户登陆
anonymous_enable=NO

#允许本地用户登陆
local_enable=YES

#允许本地用户写入
write_enable=YES

#注意:这个地方如果不配置,就会出现只有root用户可以登陆,普通用户不可以
check_shell=NO

#掩码,决定了上传上来的文件的权限。设置为000使之有最大权限
local_umask=000

#允许记录日志
xferlog_enable=YES

#允许数据流从20端口传输
connect_from_port_20=YES

#日志路径
xferlog_file=/var/log/vsftpd.log

#ftp欢迎语,可以随便设置
ftpd_banner=hi,guys!

#注意:这个选项可以保证用户锁定在指定的家目录里,防止系统文件被修改。
chroot_local_user=YES

#注意:这个不配置有可能出现只能下载不能上传
allow_writeable_chroot=YES

#配置了可以以stand alone模式运行
listen=YES

#注意:该选项不配置可能导致莫名其妙的530问题
seccomp_sandbox=NO

#说明我们要指定一个userlist,里边放的是允许ftp登陆的本地用户。如果设置为YES,则文件里设置的是不允许登陆的本地用户
userlist_deny=NO
userlist_enable=YES

#记录允许本地登陆用户名的文件
userlist_file=/etc/vsftpd/allowed_users
  •  

指定用户

最后一步就是在我们userlist_file选项指定的文件里添加允许ftp登陆的本地账户,一行写一个即可,如我的就是/etc/vsftpd/allowde_users,内容如下:

vi etc/vsftpd/allowed_users

添加你新增的用户并保存


username
root

重启vsftpd

service vsftpd restart

331,530错误?

这是因为ubuntu启用了PAM,所在用到vsftp时需要用到 /etc/pam.d/vsftpd 这个文件(默认源码安装的不会有这个文件),因此除了匿名用户外本地用户无法登录。所以只要删除了就可以了。

rm /etc/pam.d/vsftpd

访问

windows通过 ftp://IP 即可访问该FTP服务器,输入账号密码即可

linux中 通过  ftp  IP 即可访问

猜你喜欢

转载自blog.csdn.net/wayne_primes/article/details/80841972
今日推荐