设为首页 收藏本站
查看: 944|回复: 0

[经验分享] [实践证明整理系列]CentOS 6中vsFTPd安装及配置

[复制链接]

尚未签到

发表于 2016-5-13 09:16:56 | 显示全部楼层 |阅读模式
  参考
  1. vsFTPd配置:
      http://www.centos.bz/2011/03/centos-install-vsftpd-ftp-server/

2. centos用户&组权限&添加删除用户问题详解:

    http://zh888.blog.iyunv.com/1684752/385605

3. setsebool命令:

    http://hi.baidu.com/ma95221/blog/item/c779741137cc121bb8127b4f.html

4. 用户访问目录限制:

    http://www.cntxk.com/CataNews/42/info4735.html

5. 配置文件中文说明及限制访问用户:

    http://litvip.com/2011/03/01/187




开头序

网络上资源丰富,但不知为什么,当我按照网上一些技术文章一步一步操作后,得到的结果总是失败,问题重出。

而且天下文章一大抄,通过搜索找来的结果大多完全相同。

于是决定记录自己一步一步明确的操作,总结成文章,以方便自己日后查阅,也许也能对其他人有所帮助。




目的

在CentOS中安装和配置vsFTPd服务,并且可以通过其他机器访问。

CentOS和vsFTPd是什么这里不再熬术。




步骤

本次是在CentOS 6的版本上操作的。

说明:以下命令均在root用户下执行。




(1)安装vsftpd

没啥好说的一条命令搞定。

#yum install vsftpd

中间会提示确认,输入“y”回车


启动vsftpd服务

#service vsftpd start


 

管理vsftpd相关命令:

停止vsftpd:  


#service vsftpd stop
重启vsftpd: 

#service vsftpd restart




(2)添加ftp用户

下面是添加ftpuser用户,设置根目录为/home/ftpuser,禁止此用户登录SSH的权限,并限制其访问其它目录。


增加用户ftpuser,指向目录/home/ftpuser,禁止登录SSH权限。

#useradd -d /home/ftpuser -g ftp -s /sbin/nologin ftpuser


设置用户口令

#passwd ftpuser

 





(3)配置防火墙

打开/etc/sysconfig/iptables文件




#vi /etc/sysconfig/iptables

在REJECT行之前添加如下代码


-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT


保存和关闭文件,重启防火墙

#service iptables start




(4)重新启动vsftpd
每次配置完后都不要忘记重启vsftpd,以使设置生效

#service vsftpd restart





(5)修改SELinux设置

不过即使打开了防火墙,这时通过FTP客户端还是不能访问,会报错误:

500 OOPS: cannot change directory:/home/ftpuser

500 OOPS: priv_sock_get_cmd

这里还需要修改SELinux设置。

通过命令getsebool查看设置

#getsebool -a|grep ftp

通过命令setsebool进行设置

#setsebool ftp_home_dir 1

再重新启动vsftpd

service vsftpd restart


现在可以用FTP客户端访问了





(6)用户访问目录限制

一般在设置FTP服务时都喜欢指定用户的访问路径,不能让用户在服务器上乱逛。

需要配置一下vsftpd.conf文件。



修改配置文件 vsftpd.conf

#vi /etc/vsftpd/vsftpd.conf


打开vsftpd.conf文件后,修改或添加以下内容。

anonymous_enable=NO#禁止匿名用户anonymous登录
local_enable=YES#允许本地用户登录
write_enable=YES#让登录的用户有写权限(上传,删除)
#接下来的三条配置很重要
#chroot_local_user设置了YES,那么所有的用户默认将被chroot,
#也就用户目录被限制在了自己的home下,无法向上改变目录。
#chroot_list_enable设置了YES,即让chroot用户列表有效。
#★超重要:如果chroot_local_user设置了YES,那么chroot_list_file
#设置的文件里,是不被chroot的用户(可以向上改变目录)
#★超重要:如果chroot_local_user设置了NO,那么chroot_list_file
#设置的文件里,是被chroot的用户(无法向上改变目录)
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list#控制根目录的用户列表文件
user_config_dir=/etc/vsftpd/user_conf#每个用户的配置文件存放目录
 

修改chroot_list文件,添加控制根目录用户 ftpuser

#vi /etc/vsftpd/chroot_list






创建用户配置文件

#mkdir /etc/vsftpd/user_conf
#vi /etc/vsftpd/user_conf/ftpuser


在文件中设置ftpuser用户的访问路径,如下:

local_root=/data/www




(7)再次修改SELinux设置

以上步骤设置完成后,指定的ftp用户再连接到服务时根目录就指向/data/www下了。

但试试上传文件是不行的,这里还需要修改一处SELinux设置。

#setsebool allow_ftpd_full_access 1




重新启动vsftpd

service vsftpd restart





(8)限制访问用户
  
到此FTP服务可以正常使用了,但除了root等系统用户,其他的用户都可以通过FTP服务连接到服务器上;

可我们只希望开放ftpuser用户,其他用户都不允许访问FTP服务。



#vi /etc/vsftpd/vsftpd.conf
  打开vsftpd.conf文件后,修改或添加以下内容。


#userlist_enable=YES,用户访问控制列表有效,文件是/etc/vsftpd/user_list
#userlist_deny=YES,/etc/vsftpd/user_list里的用户不能登录
#userlist_deny=NO,只有/etc/vsftpd/user_list用户才可以登录
#★重要:无论这里如何设置,只是进一步限制用户,只是在上面/etc/vsftpd/ftpusers
#的效果上叠加。比如/etc/vsftpd/ftpusers里有root用户,即便是你设置了
#userlist_deny=NO并且/etc/vsftpd/user_list有root,那root也是不能登录的!
userlist_enable=YES
userlist_deny=NO
  
  

  设置user_list文件


#vi /etc/vsftpd/user_list
  

清空user_list文件内容,只写上允许访问FTP服务的用户名
  
  

重新启动vsftpd


#service vsftpd restart
   
  
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-216326-1-1.html 上篇帖子: 在CentOS 6.3中安装与配置Tomcat-7方法 下篇帖子: 从零开始配置MySQL MMM (续)——32bit CentOS 5上遇到的一些问题
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表