博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
vsftp
阅读量:7240 次
发布时间:2019-06-29

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

CentOS卸载vsftpd的方法

如果服务器上已经安装了vsftpd服务,配置出错需要卸载vsftpd服务。

1.查找vsftpd服务

[root@localhost /]# rpm -aq vsftpd

2.删除查找到的vsftpd服务

[root@localhost /]# /sbin/service vsftpd stop

[root@localhost /]# rpm -e vsftpd-3.0.2-21.el7.x86_64

安装vsftpd组件

[root@localhost /]# yum -y install vsftpd

root@localhost home]# systemctl start vsftpd.service

3.放开21端口

[root@localhost /]# firewall-cmd --zone=public --add-port=21/tcp --permanent

[root@localhost /]# firewall-cmd --reload

4.关闭匿名用户

[root@localhost vsftpd]# vim /etc/vsftpd/vsftpd.conf

anonymous_enable=NO  #仅仅允许/etc/vsftpd.user_list中指定的用户访问FTP服务器  #anon_upload_enable=YES#anon_mkdir_write_enable=YES

[root@localhost vsftpd]# systemctl restart vsftpd.service

通过配置重启之后,匿名用户不可以登录了。

5.建立ftp虚拟宿主账户

新建一个不能登录系统用户. 只用来登录ftp服务 ,这里如果没设置用户目录。默认是在home下:

[root@localhost vsftpd]# useradd ftpuser -s /sbin/nologin

为ftpuser用户设置密码:

[root@localhost /]# passwd ftpuser

6.查看ftp的状态

[root@localhost /]# getsebool -a|grep ftp

显示结果:

ftpd_anon_write --> off ftpd_connect_all_unreserved --> off ftpd_connect_db --> offftpd_full_access --> off ftpd_use_cifs --> off ftpd_use_fusefs --> off ftpd_use_nfs --> offftpd_use_passive_mode --> off httpd_can_connect_ftp --> off httpd_enable_ftp_server --> offtftp_anon_write --> off tftp_home_dir --> off

将上面红色两项状态设置为on:

[root@localhost vsftpd]# setsebool -P allow_ftpd_full_access on [root@localhost vsftpd]# setsebool -P tftp_home_dir on

7.配置vsftpd.conf

[root@localhost vsftpd]# vim /etc/vsftpd/vsftpd.conf

本地用户

local_enable=YES #允许系统用户登录(默认开启 ) write_enable=YES #允许上传(默认开启 ) local_umask=022 #默认上传权限(默认开启 ) local_max_rate=300 #上传限速(需手工建立,按需开启)chroot_local_user=YES #此句设为YES,所有用户限制在家目录下,设为NO登陆不上chroot_list_enable=YES #(这行必须要有, 否则文件vsftpd.chroot_list不会起作用) chroot_list_file=/etc/vsftpd/chroot_list#chroot_list需要手工建立,定义是否把用户限制在家目录[root@localhost vsftpd]# vim /etc/vsftpd/chroot_list #该文件里面的用户可以访问任何目录

然后加入 ftpuser ,表示只有ftpuser不能访问上级目录,重启vsftpd。

8.修改权限

修改/home/ftpuser 的权限为不可写

[root@localhost vsftpd]# chmod a-w /home/ftpuser/taotao

这是因为我们在上面将/home/ftpuser/taotao文件的权限改为不可写了,那么我们在这个目录下创建一个images文件夹,用来上传文件。并将权限赋值给 ftpuser 用户

[root@localhost taotao]# mkdir images

[root@localhost images]# chown ftpuser images

9.开启PASV(被动模式)

vim /etc/vsftpd/vsftpd.conf #add blow line

pasv_enable=YES pasv_min_port=30000 pasv_max_port=30999

并且在userlist_enable=YES文件后面添加

userlist_deny=NO #加上这句就会出现“windows无法访问文件夹。。。”

userlist_file=/etc/vsftpd/user_list

开启防火墙:

[root@localhost taotao]# firewall-cmd --zone=public --add-port=30000-30999/tcp --permanent

[root@localhost taotao]# firewall-cmd --reload

这样就可以使用ftp服务器上传文件了。

ftp客户端使用

  1. 使用命令登录
    ftp ip
    get 文件名 下载
    put 文件名 上传 不能上传和下载目录
  2. 使用windows窗口(浏览器或资源管理器,建议用资源管理器)

ftpusers 和user_list 这两文件常用来阻止"root"、"apache"和"www"等系统用户登录FTP服务器以保护系统安全。

至于“两个文件中用户不同会怎样,该用户到底能否登陆”的问题答案是:只要名列这两文件之一的都不能登录。两个不同文件只是拒绝的时候出现的情况不同,“拒绝”是相同的。

主动和被动模式

一、PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。

当需要传送数据时,客户端在命令链路上用 PORT命令告诉服务器:“我打开了端口,你过来连接我”。于是服务器从20端口向客户端的端口发送连接请求,建立一条数据链路来传送数据。
二、PASV(被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。
当需要传送数据时,服务器在命令链路上用 PASV命令告诉客户端:“我打开了端口,你过来连接我”。于是客户端向服务器的端口发送连接请求,建立一条数据链路来传送数据。

转载于:https://blog.51cto.com/11732619/2044629

你可能感兴趣的文章
svn最厉害入门教程
查看>>
类似心跳的动画缩放
查看>>
Oracle DBA课程系列笔记(7_1)
查看>>
RedHat EL5 安装Oracle 10g RAC之--系统环境配置(1)
查看>>
用组策略如何去掉Windows 2003开机组合键
查看>>
Ext.MessageBox.show()方法的使用
查看>>
HTML 标签收集整理
查看>>
我的友情链接
查看>>
ThinkPHP-空操作
查看>>
Mysql锁机制分析
查看>>
C# 通过委托实现两个程序集间的双向调用
查看>>
android源代码提示文本框还能输入多少个字符
查看>>
我奋斗了18年才和你坐在壹起喝咖啡
查看>>
浦发银行网上银行系统不再支持 Firefox / Chrome 浏览器了
查看>>
silverlight数据绑定 故事板
查看>>
我的友情链接
查看>>
mysql常用数据类型的使用方式--日期时间型
查看>>
Astar 求两点之间最短路径算法(转载+自己注释)
查看>>
我的友情链接
查看>>
换行和回车的区别 有趣
查看>>