博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CentOS 7 vsftpd的安装和配置
阅读量:6431 次
发布时间:2019-06-23

本文共 3856 字,大约阅读时间需要 12 分钟。

hot3.png

一. vsftpd服务器相关软件的安装

 1. 查看是否安装vsftp服务器和客户端

[root@hadoop ~]# rpm -qa|grep ftpvsftpd-2.2.2-24.el6.x86_64ftp-0.17-54.el6.x86_64

如果找到已安装的vsftp应用(本机之前已安装过),先进行卸载,如下:

[root@hadoop ~]# yum -y remove ftp vsftpdLoaded plugins: fastestmirrorSetting up Remove ProcessResolving Dependencies--> Running transaction check---> Package ftp.x86_64 0:0.17-54.el6 will be erased---> Package vsftpd.x86_64 0:2.2.2-24.el6 will be erased--> Finished Dependency ResolutionDependencies Resolved...Removed:  ftp.x86_64 0:0.17-54.el6                vsftpd.x86_64 0:2.2.2-24.el6

 2. 安装vsftpd服务器和客户端

[root@hadoop ~]# yum install ftp vsftpd -yLoaded plugins: fastestmirrorSetting up Install ProcessDetermining fastest mirrorsepel/metalink                                                                          | 6.7 kB     00:00      * base: mirrors.cn99.com * epel: mirrors.ustc.edu.cn * extras: mirrors.cn99.com * remi-safe: mirrors.tuna.tsinghua.edu.cn * rpmfusion-free-updates: mirrors.ustc.edu.cn * rpmfusion-nonfree-updates: mirrors.ustc.edu.cn * updates: mirrors.cn99.com...Installed:  ftp.x86_64 0:0.17-54.el6                            vsftpd.x86_64 0:2.2.2-24.el6                           Complete!

二. 配置vsftpd服务器

1. 创建vsftpd的登录用户和主目录

[root@hadoop ~]# useradd -d /home/hadoopftp -s /sbin/nologin hadoopftp

  其中hadoopftp是ftp的登录用户名,可以根据需要实际替换即可

2. 修改相应的密码

[root@hadoop ~]# passwd hadoopftp

3. 创建vsftpd虚拟用户

[root@hadoop vsftpd]# vim /etc/vsftpd/vsftpuser.txt

输入文本格式如下:

用户1    用户1密码    用户2    用户2密码    ......

然后生成认证db:

[root@hadoop ~]# db_load -T -t hash -f /etc/vsftpd/vsftpuser.txt /etc/vsftpd/vsftpuser.db

4. 添加vsftpd的虚拟用户的PAM认证

[root@hadoop ~]# vim /etc/pam.d/vsftpd

修改内容为替换 pam文件中的account和auth:

#%PAM-1.0session    optional     pam_keyinit.so    force revoke#auth       required    pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed#auth       required    pam_shells.so#auth       include     password-auth#account    include     password-auth#64位系统auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpuseraccount required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpuser#32位系统#auth required pam_userdb.so db=/etc/vsftpd/vsftpuser#account required pam_userdb.so db=/etc/vsftpd/vsftpusersession    required     pam_loginuid.sosession    include      password-auth

5. 修改vsftpd的配置文件vsftpd.conf

[root@hadoop ~]# vim /etc/vsftpd/vsftpd.conf

修改点如下:

# 是否运行匿名登录(NO)anonymous_enable=NO# 监听端口(默认21)listen_port=8021# 限制ftp用户只能在其主目录下(root dir)下活动,不允许他们跳出主目录之外浏览服务器上的其他目录chroot_local_user=NOchroot_list_enable=YESchroot_list_file=/etc/vsftpd/chroot_listpam_service_name=vsftpduserlist_enable=YEStcp_wrappers=YESlocal_root=/home/hadoop/ftp/public/ftprootanon_root=/home/hadoop/ftp/public/ftprootvirtual_use_local_privs=YESguest_enable=YESguest_username=anyoftpallow_writeable_chroot=YESpasv_enable=YES# 被动模式端口区间, 这个10021端口,可以修改为你喜欢的connect_from_port_10021=YESpasv_min_port=40000pasv_max_port=41000pasv_address=172.16.1.2

添加以下防火规则,个人用的是iptables,也可以参考 firewall 设置

[root@hadoop ~]# vim /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 10021 -j ACCEPT-A INPUT -m state --state NEW -m tcp -p tcp --dport 40000:41000 -j ACCEPT

创建文件chroot_list,声明 限制在主目录下的用户名单:

[root@hadoop ~]# vim /etc/vsftpd/chroot_list

内容如下:

hadoopftp

至于是限制名单还是排除名单,这取决于chroot_local_user的值 ,可以参考进行理解。

6. 新建FTP访问根目录,并设置访问权限

[root@hadoop ~]# mkdir /home/hadoop/ftp/public/ftproot[root@hadoop ~]# chown -R hadoopftp /home/hadoop/ftp/public/ftproot[root@hadoop ~]# chmod -R 755 /home/hadoop/ftp/public/ftproot

7. 开启vsftpd服务

[root@hadoop ~]# systemctl start vsftpd.service# 查看vsftpd服务的状态systemctl status vsftpd.service

8. 设置开机启动

[root@hadoop ~]# systemctl enable vsftpd.service

三. vsftpd服务验证

打开浏览器,输入ftp访问地址,弹出一下界面:

202753_DewC_1784946.png

输入设置的ftp用户名和密码,进行访问,验证通过,跳到ftp文件目录界面:

202713_b1ON_1784946.png

到此,vsftpd在Centos 7系统的安装与简单配置基本完成,本人在虚拟机环境下测试通过,不当之处,欢迎指正!!!

 

转载于:https://my.oschina.net/MIKEWOO/blog/1556858

你可能感兴趣的文章
POJ 3461 Oulipo
查看>>
转: Visual Studio 调试小技巧(1)-根据字符串内容添加断点
查看>>
使用javascript实现多个图片漂浮的效果(完善火狐滤镜功能)
查看>>
关于图像特征提取【转】
查看>>
asp.net<C#> web service Object moved to here.
查看>>
瑞典皇家理工学院工程类表
查看>>
HP大中华区总裁孙振耀退休感言(转)
查看>>
查看OS位数
查看>>
移动设备数据访问技术三
查看>>
4.6.2 万能转换器boost::lexical_cast
查看>>
让linux开机自动执行一条需要管理员的密码的命令
查看>>
一个帮助你在触摸设备上使用jQuery UI的JS类库 - jQuery UI Touch Punch
查看>>
java 正则 块转义,忽略大小写,匹配换行模式,匹配先前匹配的文本(解释正则运行机制)...
查看>>
我最喜欢的打字键盘_雷柏1800套装
查看>>
ORACLE 表空间扩展方法
查看>>
KMP算法模板
查看>>
override 和 重载的区别?
查看>>
怎样通过iPhone Safari 来安装测试版ipa
查看>>
[python] <type 'exceptions.UnicodeDecodeError'>: 'ascii' codec can't decode byte 0xe5 in position 9
查看>>
java中的io
查看>>