美文网首页
Linux系统下安装vsftpd

Linux系统下安装vsftpd

作者: 鲁克巴克诗 | 来源:发表于2017-07-04 23:14 被阅读69次

注意:

1. 删除已安装的vsftpd,在对应目录下输入:yum remove vsftpd;
2. 如果是普通用户登录linux,在命令前加上"sudo",可以提升权限;
  1. 安装vsftpd
yum -y install vsftpd

此为下载安装过程结尾部分截图:


image.png
  1. 根目录创建新文件夹
mkdir ftpfile
image.png
  1. 增加一个用户,权限限制为只能访问ftpfile目录并且没有登录权限。
useradd ftpuser -d /ftpfile/ -s /sbin/nologin
image.png
  1. 将ftpfile的拥有者改为ftpuser
chown -R ftpuser.ftpuser /ftpfile/
image.png
  1. 设置tfpuser的密码
 passwd ftpuser
image.png
  1. 切换到ftpfile目录下,创建文件index.html


    image.png
    image.png
  2. 配置ftp服务器


    image.png

    修改或新增以下属性:

  3. anonymous_enable=NO —— 是否允许匿名ftp,如否则选择NO
  4. local_enable=YES —— 是否允许本地用户登录
  5. write_enable=YES —— 是否允许登陆用户有写权限。属于全局设置,默认值为YES。
  6. local_umask=022 —— 默认的umask码
  7. dirmessage_enable=YES —— 如果启动这个选项,那么使用者第一次进入一个目录时,会检查该目录下是否有.message这个档案,如果有,则会出现此档案的内容,通常这个档案会放置欢迎话语,或是对该目录的说明。默认值为开启。
  8. xferlog_enable=YES —— 是否启用上传/下载日志记录。如果启用,则上传与下载的信息将被完整纪录在xferlog_file 所定义的档案中。预设为开启。
  9. connect_from_port_20=YES —— 指定FTP使用20端口进行数据传输,默认值为YES。
  10. xferlog_std_format=YES —— 如果启用,则日志文件将会写成xferlog的标准格式,如同wu-ftpd 一般。默认值为关闭。
  11. ftpd_banner=Welcome to ambermall FTP service. —— 这里用来定义欢迎话语的字符串,banner_file是档案的形式,而ftpd_banner 则是字符串的形式。预设为无。
  12. local_root=/ftpfile —— 当本地用户登入时,将被更换到定义的目录下。默认值为各用户的家目录。
  13. chroot_local_user=YES —— 用于指定用户列表文件中的用户是否允许切换到上级目录。默认值为NO。
    通过搭配能实现以下几种效果:
    ①当chroot_list_enable=YES,chroot_local_user=YES时,在/etc/vsftpd.chroot_list文件中列出的用户,可以切换到其他目录;未在文件中列出的用户,不能切换到其他目录。
    ②当chroot_list_enable=YES,chroot_local_user=NO时,在/etc/vsftpd.chroot_list文件中列出的用户,不能切换到其他目录;未在文件中列出的用户,可以切换到其他目录。
    ③当chroot_list_enable=NO,chroot_local_user=YES时,所有的用户均不能切换到其他目录。
    ④当chroot_list_enable=NO,chroot_local_user=NO时,所有的用户均可以切换到其他目录。
  14. use_localtime=yes —— 使用本机时间
  15. chroot_list_enable=YES —— 设置是否启用chroot_list_file配置项指定的用户列表文件。默认值为NO。
  16. chroot_list_file=/etc/vsftpd/chroot_list —— 用于指定用户列表文件,该文件用于控制哪些用户可以切换到用户家目录的上级目录。
  17. listen=YES —— 设置vsftpd服务器是否以standalone模式运行。以standalone模式运行是一种较好的方式,此时listen必须设置为YES,此为默认值。建议不要更改,有很多与服务器运行相关的配置命令,需要在此模式下才有效。若设置为NO,则vsftpd不是以独立的服务运行,要受到xinetd服务的管控,功能上会受到限制。
  18. pam_service_name=vsftpd —— 设置PAM使用的名称,默认值为/etc/pam.d/vsftpd。
  19. userlist_enable=YES —— 是否启用vsftpd.user_list文件。
  20. tcp_wrappers=YES —— 设置vsftpd是否与tcp wrapper相结合来进行主机的访问控制。默认值为YES。如果启用,则vsftpd服务器会检查/etc/hosts.allow 和/etc/hosts.deny 中的设置,来决定请求连接的主机,是否允许访问该FTP服务器。这两个文件可以起到简易的防火墙功能。
    比如:若要仅允许192.168.0.1—192.168.0.254的用户可以连接FTP服务器,则在/etc/hosts.allow文件中添加以下内容:
    vsftpd:192.168.0. :allow
    all:all :deny
  21. pasv_min_port=61001 —— 在PASV工作模式下,数据连接可以使用的端口范围的最小端口,0 表示任意端口。默认值为0。
  22. pasv_max_port=62000 —— 在PASV工作模式下,数据连接可以使用的端口范围的最大端口,0 表示任意端口。默认值为0。
    更加详细配置解释,请参考: vsftpd配置文件详解
  23. 配置完毕后,保存并关闭。创建chroot_list_file=/etc/vsftpd/chroot_list 指定的chroot_list 文件。
vim /etc/vsftpd/chroot_list

添加我们刚才创建的用户名称:


image.png
  1. 重启ftp服务器
service vsftpd restart
image.png
  1. 网络防火墙配置
vim /etc/sysconfig/iptables
#vsftpd
-A INPUT -p TCP --dport 61001:62000 -j ACCEPT
-A OUTPUT -p TCP --dport 61001:62000 -j ACCEPT
-A INPUT -p TCP --dport 20 -j ACCEPT
-A OUTPUT -p TCP --dport 20 -j ACCEPT
-A INPUT -p TCP --dport 21 -j ACCEPT
-A OUTPUT -p TCP --dport 21 -j ACCEPT

重启防火墙

service iptables restart
image.png
  1. 在linux里使用ftp客户端:

  2. 安装ftp
yum -y install ftp
  1. 连接ftp服务器
ftp ip地址  例如:ftp 192.168.1.5
  1. 输入用户mingcheng和密码,登录成功
  2. 输入dir查看文件


    image.png

    细心的小伙伴,可能发现了最后出现but failed to open directory。这该怎么解决呢?

* vim /etc/selinux/config
* 修改SELINUX为disable,保存并关闭
image.png

* 输入【setenforce 0】生效
* service vsftpd restart
这回再登录就没问题了:


image.png
  1. 浏览器里试试


    image.png
  2. vsftpd的vsftpd.conf文件我设置了chroot_local_user=YES和chroot_list_enable=YES。这代表:在/etc/vsftpd.chroot_list文件中列出的用户,可以切换到其他目录;未在文件中列出的用户,不能切换到其他目录。
image.png

下面切换到上一级试试:

image.png

不过这样做太危险了,所以还是把chroot_local_user改成No吧:
先退出客户端:


image.png
 vim /etc/vsftpd/vsftpd.conf
image.png

相关文章

  • Linux系统下安装vsftpd

    注意: 安装vsftpd 此为下载安装过程结尾部分截图: 根目录创建新文件夹 增加一个用户,权限限制为只能访问ft...

  • CentOS7 搭建FTP服务器

    系统版本 安装 vsftpd 卸载 vsftpd vsftpd.conf 说明 系统版本 安装 vsftpd 查看...

  • FTP组件安装

    Linux安装ftp组件 1安装vsftpd组件 安装完后,有/etc/vsftpd/vsftpd.conf 文件...

  • linux 下 FTP服务器的安装

    1.默认情况下linux是自带安装vsftpd的 安装 不同版本先搜索一下 vsftpd yum search f...

  • Centos7 vsftpd 安装与配置

    vsftpd 的安装 由于系统可能自带安装好了 vsftpd, 故在安装前要查看一下: vsftpd 的启动 防火...

  • 虚拟机linux FTP设置

    配置:本机使用ftp与VMWARE linux系统连接虚拟机linux FTP互传文件vsftpd安装503 权限...

  • vsftpd安装使用说明

    vsftpd安装使用说明 vsftpd是在linux环境下,使用最多的FTP服务端软件。 vsftpd默认只能使用...

  • Linux下安装vsftpd

    一、vsftpd简介 安全性是编写VSFTP的初衷,除了这与生俱来的安全特性以外,高速与高稳定性也是VSFTP的两...

  • linux之vsftpd搭建ftp服务器

    vsftpd是Linux下比较著名的FTP服务器,本文介绍了在CentOS 6.8下安装vsftpd、配置用户登录...

  • Linux(Centos7) 实例搭建 FTP 服务

    步骤一: 安装vsftpd 完成以下操作,安装vsftpd。 远程连接Linux实例。 运行以下命令安装vsftp...

网友评论

      本文标题:Linux系统下安装vsftpd

      本文链接:https://www.haomeiwen.com/subject/ujxzcxtx.html