ubuntu建立ftp服务器


ubuntu建立ftp服务器

#step A. 添加新用户

Step1:添加新用户
useradd -r -m -s /bin/bash 用户名

Step2:配置新用户密码
passwd 用户名

假设用户名 ftpuser1

命令:
$ useradd -r -m -s /bin/bash ftpuser1
$ passwd ftpuser1

mkdir -p /home/ftpuser1
useradd ftpuser1 -g ftp -d /home/ftpuser1 -s /sbin/nologin
passwd ftpuser1


#step B. 安装vsftpd

sudo apt-get update
sudo apt-get install vsftpd


#step C. 配置vsftpd

# 编辑/etc/vsftpd.conf

local_enable=YES
local_root=/mnt/www/ftp-docs
local_umask=022
write_enable=YES
chroot_local_user=YES
user_config_dir=/etc/vsftpd/userconfig
userlist_deny=NO
userlist_enable=YES
userlist_file=/etc/allowed_users
seccomp_sandbox=NO
anon_root=/mnt/www/ftp-docs
anon_upload_enable=NO
anon_other_write_enable=NO

anonymous_enable=NO

这里解释下:

userlist_deny=NO
userlist_enable=YES (指定一个userlist,里面放允许ftp登陆的用户名)
userlist_file=/etc/allowed_users (记录允许本地登陆用户名的文件)
seccomp_sandbox=NO (该选项不配置可能导致莫名其妙的530问题)

user_config_dir=/etc/vsftpd/userconfig (对应每个用户不同配置)

anonymous_enable=NO(是否允许匿名ftp,若不允许选NO)
local_enable=YES(是否允许本地用户登录)
write_enable=YES(是否允许本地用户写的权限)
chroot_local_user=YES(是否将所有用户限制在主目录)
chroot_list_enable=YES(是否启动限制用户的名单)
chroot_list_file=/etc/vsftpd.chroot_list(可在文件中设置多个账号)


启用在chroot_list_file的用户只能访问根目录
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
在/etc/vsftpd.chroot_list添加受访问目录限制的用户:

echo "ftpuser1" >> /etc/vsftpd.chroot_list


# 编辑/etc/allowed_users

加入一行填写ftpuser1

ftpuser1
root

# 编辑/etc/ftpusers
这个文件中记录的是不能访问FTP服务器的用户清单
如果有写用户ftpuser1,记得删掉这行

$ cd /etc
$ mkdir vsftpd
$ mkdir userconfig
$ touch ftpuser1
$ vi ftpuser1

在文件/etc/vsftpd/userconfig/ftpuser1
里加入一行
local_root=/mnt/www/ftp-docs/ftpuser1


#step D. 重启vsftpd服务

sudo service vsftpd restart


开启、停止、重启vsftpd服务也很简单:

service vsftpd start | stop | restart

posted @ 2016-12-15 15:06  php学习笔记  阅读(212)  评论(0编辑  收藏  举报