anonymous_enable=yes/no 是否允许匿名用户访问
anon_upload_enable=yes/no 是否允许匿名用户上传文件
anon_mkdir_write_enable=yes/no 是否允许匿名用户创建目录
anon_other_write_enable=yes/no 匿名用户和虚拟用户是否拥有删除权限
local_enable=yes/no 是否允许本地用户登陆
write_enable=yes/no 设置全局是否可写
anon_root=/var 指定匿名用户目录
chroot_local_user=yes 锁定所有用户到用户主目录
chroot_list_enable=yes/no 锁定列表中的用户到主目录,需要配合下一参数使用
chroot_list_file=/etc/vsftpd/chroot_list 指定存储被锁定用户的列表文件位置
chown_uploads=yes/no 匿名用户上传所有者指定功能,需要与下一参数配合使用
chown_username=用户名 指定匿名用户上传文件的所有者
max_clients=300 最大客户端连接数为300
anon_max_rate=30000 匿名用户和虚拟用户限速为30K/S
local_max_rate=30000 本地用户限速为30K/S
max_per_ip=10 每个IP最大连接数
listen_port=22 更改监听端口
实现如下要求:允许匿名用户登陆,匿名用户限速为60K/S,只允许下载。监听端口为22,最大连接数为10。新建用户ftp1,限速为200K/S,允许上传下载删除新建文件夹。进入目录/etc/vsftpd,用vi编辑器打开vsftpdconf主配置文件:
直接添加以下选项: [root@LidadeFedora vsftpd]# service vsftpd restart
添加用户ftp1,设置登录脚本为 /sbin/nologin:
vsftp默认目录为:/var/ftp,为方便测试,在/var/ftp下新建一个文件"testLocal",在"/var/ftp/pub"新建一个文件"testAnon"。
由于使用root用户新建文件,文件的所有者为root,所以需要把文件的权限设置为644其他用户才能读取该文件Liux系统下有好几款很不错的ftp服务,各有特点,适应于不同的应用场合。一般在各种Linux的发行版中,默认带有的ftp软件是vsftp,本文是针对CentOs7系统下搭建vsftpd服务为例。
1 首先确定系统中已经安装了vsftpd软件,查看命令:
rpm -q vsftpd
rpm -qa |grep vsftpd
2 安装vsftpd(以yum安装为例)
yum install -y vsftpd
3关闭selinux和iptables(也可配置防火墙相关访问策略,反之系统阻断),设置vsftpd开机自启
永久关闭selinux
vi /etc/sysconfig/selinux
将配置SELinux=enforcing改为SELinux=disabled
保存退出并重启服务器
验证是否关闭命令:getenforce
关闭防火墙
centos 7 *** 作命令:systemctl stop firewalldservice
centos 6 *** 作命令:service stop iptables
设置vsftpd开机自启
centos 7 *** 作命令:systemctl enable vsftpdservice
centos 6 *** 作命令:chkconfig vsftpd on
4vsftpd的配置
ftpusers 该文件用来指定哪些用户不能访问ftp服务器。
user_list 该文件用来指定的默认账户在默认情况下也不能访问ftp服务器。
vsftpdconf vsftpd的主要配置文件,路径:
/etc/vsftpd/vsftpdconf
# vsftpdconf的配置
# 是否允许匿名登录
anonymous_enable=NO
# 是否允许本地用户登录
local_enable=YES
# 是否允许本地用户对FTP服务器文件具有写权限
write_enable=YES
# 本地用户主目录
local_root=/var/ftp
# 匿名用户主目录
anon_root=/var/ftp/pub
# 是否允许匿名用户上传文件,如允许,须将全局的
write_enable=YES
anon_upload_enable=YES
# 是否允许匿名用户创建新文件夹
anon_mkdir_write_enable=YES
# 容许匿名用户除了新建和上传外的其他权限
anon_other_write_enable=YES
# 本地用户掩码
local_umask=022
# 设置匿名登入者新增或上传档案时的umask值
anon_umask=022
# 是否激活目录欢迎信息功能
dirmessage_enable=YES
xferlog_enable=YES
# 主动模式数据传输20端口
connect_from_port_20=NO
xferlog_std_format=YES
# 是否监听ipv4
listen=YES
# listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
# 是否设置被动模式
pasv_enable=YES
# 被动模式传输使用端口
pasv_min_port=20020
pasv_max_port=20020
# 被动模式返回给客户端的ip地址(服务器内网穿透时使用)
pasv_address=0000( 服务器外网ip )
# 设置用户访问目录,默认只允许用户自己的ftp目录
# 需要同时设置allow_writeable_chroot,允许受限用户的写权限,不然会报错
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
allow_writeable_chroot=YES
5创建例外用户文件
#哪怕没有例外用户也必须创建
vim /etc/vsftpd/chroot_list
只想让指定账户不限制在其主目录,其它账户都限制在主目录。
对于chroot_local_user与chroot_list_enable的组合效果,可以参考下表:
6 创建ftp新用户
#新增一个test(用户名),并指定上传目录在/home/ftp/test下
useradd -g root -d /home/ftp/test -s /sbin/nologin test
# 如果后期想变更此用户的上传到(/XXX/ftp/test),请使用下面的命令:
usermod -d /XXX/ftp/test test
# 设置用户密码
passwd test
因为安全问题,vaftpd不允许匿名用户在ftp主目录上传,可以新建一个子目录,设置权限为777
7 关于local_umask和anon_umask掩码
掩码决定了上传文件的权限,掩码为022代表上传后的文件权限为
666-022=644 -> rw-r--r--
掩码即为要去除的权限为,默认设为033即可。
8 启动vsftp服务
#centos7 *** 作命令
启动: systemctl start vsftpdservice
停止: systemctl stop vsftpdservice
重启: systemctl restart vsftpdservice
查看状态: systemctl status vsftpdservice
#centos6 *** 作命令
启动: service vsftpd start
停止: service vsftpd stop
重启: service vsftpd restart
查看状态: service vsftpd status1
首先服务器要安装ftp软件,查看是否已经安装ftp软件下:
#which
vsftpd
如果看到有vsftpd的目录说明服务器已经安装了ftp软件
2
查看ftp
服务器状态
#service
vsftpd
status
3
启动ftp服务器
#service
vsftpd
start
4
重启ftp服务器
#servic在创建FTP服务器之有先命令: ps -ef |grep vsftpd
查一下系统有没有安装vsftpd这个服务器,如果出现如下图所示的界面说明没有安装。
然后再执行:yum install vsftpd -y
进行在线安装vsftpd这个服务。
安装成功以后需要把匿名登陆的这个功能关闭了。
使用命令: vim /etc/vsftpd/vsftpdconf
然后在里成找到:
anonymous_enable=NO
然后再查看一下vsftpd这个服务有没有启动。
使用命令: chkconfig --list
如果你如下图所示一样没有启动。
没有启动使用启动:chkconfig --level 35 vsftpd on
再接下来就是创建用户名。
创建用户名:useradd jingyan
再然后就是创建密码。
命令:passwd jingyan
再输入两次密码就可以了。
最后重启一下服务:service vsftpd start
如果出现启动失败则可以使用:/etc/rcd/initd/vsftpd restart
成功链接FTP服务器上。安装vsFTP软件 启动服务之后 useradd -d /houme/FTPTEST -m FTPTEST passwd FTPTEST 输入密码 这样就有一个FTP用户可以用FTP来连接你的FTP服务器 当然记得设置分配的目录的权限和组权限vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序。特点是小巧轻快,安全易用。并且是一个完全免费开放源码的ftp软件 方法/步骤 一、用在线安装 yum install vsftpd pam db四-y 使用命令将vsftp配置为系统服务 chkconfig --level 三5 vsftpd on 二、配置vsftpd服务的宿主 useradd vsftpdadmin -s /sbin/nologin -M 这个vsftpdadmin只是用来替换root的,并不需要登录 三、建立ftp虚拟宿主帐户 useradd vsftpuser -s /sbin/nologin -M 这ftpuser只个虚拟帐户的宿主,本身是不用登录的 四、配置vsftpdconf 配置之前要先备份一下原来的 vi /etc/vsftpd/vsftpdconf anonymous_enable=YES --> anonymous_enable=NO //不允许匿名用户访问,默认是允许。 chroot_list_enable=YES --> chroot_list_enable=YES //不允许FTP用户离开自己主目录 增加 #设定虚拟用户个人Vsftp的配置文件存放路径。也就是说,这个被指定的目录里,将存放每个Vsftp虚拟用户个性的配置文件,一个需要注意的地方就是这些配置文件名必须和虚拟用户名相同。 user_config_dir=/etc/vsftpd/vconf/userlocal #这一步非常重要,要记住这一步。一会要根据这个配置新建文件夹 #修改端口号 ftp_data_port=四0四0 reverse_lookup_enable=NO pasv_enable=yes pasv_min_port=四吧漆90 pasv_max_port=四吧吧00 listen_port=四吧漆9陆 #端口可以根据你自己实际情况配置,也可以用默认端口。但是为了安全考虑根据自己实际情况配置 5、建立虚拟用户文件 mkdir /etc/vsftpd/vconf touch /etc/vsftpd/vonf/vir_user 陆、建立虚拟用户 vi /etc/vsftpd/vonf/vir_user virtualuser //用户名 一二三四5陆漆吧 //密码 漆、生成数据库 db_load -T -t hash -f /etc/vsftpd/vconf/vir_user /etc/vsftpd/vconf/vir_userdb 吧、设置数据库文件访问权限 chmod 陆00 /etc/vsftpd/vconf/vir_user chmod 陆00 /etc/vsftpd/vconf/vir_userdb 9、修改/etc/pamd/vsftpd auth sufficient pam_userdbso db=/etc/vsftpd/vconf/vir_user account sufficient pam_userdbso db=/etc/vsftpd/vconf/vir_user (要想同时使用系统用户和虚拟用户,就需要把required改成sufficient) 一0 根据第四步配置的user_config_dir=/etc/vsftpd/vconf/userlocal 新建userlocal文件夹 mkdir /etc/vsftpd/vconf/userlocal 一一、根据第六步建立的用户名建立一个文件 例如第六步建立的帐号是virtualuser,则新建一个virtualuser文件 touch /etc/vsftpd/conf/userlocal/virtualuser 一二、编辑该用户访问的文件路径 vi /etc/vsftpd/conf/userlocal/virtualuser 输入如下 local_root= //需要指定的中国站根目录,例如至美baidu中国所在文件夹为/至美/baidu anonymous_enable=NO #禁止匿名用户访问 write_enable=YES #开启写权限 local_umask=0二二 #上传后文件的权限掩码 anon_upload_enable=NO #关闭匿名下载 anon_mkdir_write_enable=NO #关闭匿名创建文件夹 idle_session_timeout=陆0 #会话自动关闭时间 陆0是因分钟 data_connection_timeout=一二0 #数据延迟时间 max_clients=一0 #最大连接数 max_per_ip=5 #同一个ip同时允许5个IP联机 local_max_rate=一0四吧5漆陆 #实体用户传输速度限制,单位B/s。0代表不限制 一三、配置就此完成,重启vsftpd服务:service vsftpd restart。 查看系统端口状态:netstas -tulnp。如果能看到四吧漆9陆端口正在被vsftpd调用说明启动成功。 如有不清楚的可以再继续看看百度经验
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)