CentOS 7 安装vsftpd 服务器的具体操作步骤
在CentOS7上安装ftp服务器用于保存服务端上传的图片。
1、CentOS卸载vsftpd的方法
如果服务器上已经安装了vsftpd服务,配置出错需要卸载vsftpd服务。
1.1查找vsftpd服务
[root@localhost/]#rpm-aqvsftpd
返回结果显示:
vsftpd-3.0.2-21.el7.x86_64#此处是查找vsftpd的返回结果
表示此服务期之前已经安装过vsftpd服务。
1.2删除查找到的vsftpd服务
注:在卸载vsftpd之前,先停止vsftpd
[root@localhost/]#/sbin/servicevsftpdstop
卸载vsftpd:
[root@localhost/]#rpm-evsftpd-3.0.2-21.el7.x86_64
返回结果显示:
warning:/etc/vsftpd/vsftpd.confsavedas/etc/vsftpd/vsftpd.conf.rpmsave#删除时将备份vsftp的用户列表文件
1.3输入验证命令,验证vsftpd服务是否已经删除
[root@localhost/]#/sbin/servicevsftpdstop Redirectingto/bin/systemctlstopvsftpd.service Failedtostopvsftpd.service:Unitvsftpd.servicenotloaded.#找不到vsftpd [root@localhost/]#/sbin/servicevsftpdstart Redirectingto/bin/systemctlstartvsftpd.service Failedtostartvsftpd.service:Unitnotfound.#找不到vsftpd
如果输入以上两个命令都显示找不到vsftpd服务的话,那就证明已经卸载成功。
2、安装vsftpd组件
[root@localhost/]#yum-yinstallvsftpd
2.1启动ftp
[root@localhosthome]#systemctlstartvsftpd.service
2.2放开21端口
[root@localhost/]#firewall-cmd--zone=public--add-port=21/tcp--permanent [root@localhost/]#firewall-cmd--reload
3、vsftpd服务的详细配置
3.1关闭匿名用户
[root@localhostvsftpd]#vim/etc/vsftpd/vsftpd.conf
在vsftpd.conf配置文件中修改以下三项:
anonymous_enable=NO #anon_upload_enable=YES #anon_mkdir_write_enable=YES
然后重启ftp服务:
[root@localhostvsftpd]#systemctlrestartvsftpd.service
通过配置重启之后,匿名用户不可以登录了。
3.2建立ftp虚拟宿主账户
新建一个不能登录系统用户.只用来登录ftp服务,这里如果没设置用户目录。默认是在home下:
[root@localhostvsftpd]#useraddftpuser-s/sbin/nologin
为ftpuser用户设置密码:
[root@localhost/]#passwdftpuser
3.3查看ftp的状态
[root@localhost/]#getsebool-a|grepftp
显示结果:
ftpd_anon_write-->off ftpd_connect_all_unreserved-->off ftpd_connect_db-->off ftpd_full_access-->off ftpd_use_cifs-->off ftpd_use_fusefs-->off ftpd_use_nfs-->off ftpd_use_passive_mode-->off httpd_can_connect_ftp-->off httpd_enable_ftp_server-->off tftp_anon_write-->off tftp_home_dir-->off
将上面红色两项状态设置为on:
[root@localhostvsftpd]#setsebool-Pallow_ftpd_full_accesson [root@localhostvsftpd]#setsebool-Ptftp_home_diron
3.4配置vsftpd.conf
限制系统用户锁定在/home/ftpuser目录
如果设置为
chroot_local_user=YES chroot_list_enable=YES(这行可以没有,也可以有) chroot_list_file=/etc/vsftpd.chroot_list
那么,凡是加在文件vsftpd.chroot_list中的用户都是不受限止的用户
即,可以浏览其主目录的上级目录.
所以,如果不希望某用户能够浏览其主目录上级目录中的内容,可以如上设置,然后在
文件vsftpd.chroot_list中不添加该用户即可(此时,在该文件中的用户都是可以浏览其主目录之外的目录的).
或者,设置如下
chroot_local_user=NO chroot_list_enable=YES(这行必须要有,否则文件vsftpd.chroot_list不会起作用) chroot_list_file=/etc/vsftpd.chroot_list
然后把所有不希望有这种浏览其主目录之上的各目录权限的用户添加到文件vsftpd.chroot_list(此时,在该文件中的用户都是不可以浏览其主目录之外的目录的)
中即可(一行一个用户名).
[root@localhostvsftpd]#vim/etc/vsftpd/vsftpd.conf
这里有两种方案,我采用第二种,配置如下:
chroot_local_user=NO chroot_list_enable=YES#(这行必须要有,否则文件vsftpd.chroot_list不会起作用) chroot_list_file=/etc/vsftpd/chroot_list
默认chroot_list是不存在的
[root@localhostvsftpd]#vim/etc/vsftpd/chroot_list
然后加入ftpuser,表示只有ftpuser不能访问上级目录,重启vsftpd。
3.5修改权限
修改/home/ftpuser的权限为不可写
[root@localhostvsftpd]#chmoda-w/home/ftpuser/taotao
这是因为我们在上面将/home/ftpuser/taotao文件的权限改为不可写了,那么我们在这个目录下创建一个images文件夹,用来上传文件。并将权限赋值给ftpuser用户
[root@localhosttaotao]#mkdirimages [root@localhostimages]#chownftpuserimages
4、开启PASV(被动模式)
在/etc/vsftpd/vsftpd.conf的最下面加入
pasv_enable=YES pasv_min_port=30000 pasv_max_port=30999
并且在userlist_enable=YES文件后面添加
userlist_deny=NO userlist_file=/etc/vsftpd/user_list
开启防火墙:
[root@localhosttaotao]#firewall-cmd--zone=public--add-port=30000-30999/tcp--permanent [root@localhosttaotao]#firewall-cmd--reload
这样就可以使用ftp服务器上传文件了。
以上这篇CentOS7安装vsftpd服务器的具体操作步骤就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。