Redhat5.4 下vsftp的安装及简单配置

本文涉及的产品
运维安全中心(堡垒机),免费版 6个月
简介:

           Redhat5.4 下vsftp的安装及简单配置
     1.FTP(文件传输协议):它的主要功能是在服务器与客户端之间进行文件的传输.它是以TCP数据包的模式进行服务器与客户端的连接.
    2.FTP支持的工作模式有两种:主动连接与被动连接
      1>主动连接:
           FTP客户端随机开启一个大于1024的端口n,并且和服务器的21端口进行三次握手,建立连接,但这个连接只是控制连接,它可以通过这个连接对FTP服务器下达指令,但是不能进行数据的传输,如果要进行数据传输的话,FTP客户端会随机用一个端口通知FTP服务器,FTP服务器会启用自己的20端口与客户端进行连接,连接完成后才能进行数据的传输.
     2> 被动连接
          被动连接的控制连接是和主要连接一致的,只是在商户端要求传输数据时,商户端会传送一个PASV命令,通知服务器他们之间要建立被动连接,服务器收到命令后会开放一个大于1024的端口进行监听,并且会通知客户端,自己的端口号,客户端收到命令后,通过自身的随机端口与服务器开放的端口相连接,然后两者开始传输数据.

   3.vsftp的简介与配置
        1>  vsftpd(Very Secure FTP ,非常安全的FTP)是一个基于GPL发布的类UNIX系上的FTP软件,它具有高安全性,高速与高稳定性的特性.
        2> vsftp的安装
          
        3> vsftp的认证用户
            1>>匿名用户:vsftpd默认允许匿名用户以只读方式登录
            2>>授权用户,授权用户是进行访问vsftpd时,必须输入密码的用户.它又包含两种:本地用户与虚拟用户
                 本地用户:即linux主机中/etc/passwd中的用户.
                 虚拟用户:vsftpd支持将用户及密码保存在本地数据文件,数据库,或LDAP中,虚拟用户只是FTP服务器的专有用户,它只能访问FTP服务器所提供的资源,增强了系统本身的安全性.
        4>vsftpd下各文件的介绍
             1>> /etc/vsftpd/vsftpd.conf
                  这个是主配置文件,各用户的权限的设置也是在这个文件中设置.
              2>> /etc/pam.d/vsftpd
                    这个是vsftpd使用PAM模块时的相关配置文件,用来加强服务器用户认证.
              3>> /etc/vsftpd.ftpusers
                    位于这个文件内的用户都不能访问vsftpd服务.
              4>> /etc/vsftpd.user_list
                    这个文件中的用户为是否能够访问vsftpd,它取决于配置文件中的参数userlist_deny,如果为no,则只有此文件的用户才能访问vsftp,如果为yes,则此文件中的用户不能访问vsftp
              5>> /var/ftp
                   vsftpd提供服务的文件的位置,也就是用户登录的后所处的目录.
        5>vsftd配置文件的参数分为三个方面:
             1>>与服务器环境相关的设定
             2>>与实体用户相关的设定
             3>>与匿名用户相关的设定
            由于他们的参数比较多,所以就不在这一一介绍,可以参数另外一些书籍来查看,在下面的测试中会把经常使用的一些参数做一个简短的介绍.

示例1     要求:   

                    1...允许匿名用户登录和本地用户登录
                    2...禁止匿名用户上传
                    3...允许本地用户上传和下载
                    4...能让本地用户code来登录ftp服务器,可以上传与下载,但是限制code用户只能在自己目录内操作
       配置参数如下
           
 参数释意
  anonymous_enable=yes   // 允许匿名账号登录
  local_enable=yes          //允许本地用户登录
  write_enable=yes          //允许非匿名用户上传文件到FTP服务器
  local_umask=022          //授权用户上传文件的umask
  anon_uoload_enable=no    //不允许匿名用户上传文件
  anon_mkdir_write_enable=no //不允许匿名用户在FTP上建立目录
  dirmessage_enable=yes     //用户在FTP服务器切换目录时显示欢迎信息,,可以在每个目录下建立一个.message的文件,里面放入欢迎信息
  xferlog_enable=yes          //指定用户使用的日志文件
  connect_from_port_20=yes   //使用20端口传输数据
  xferlog_std_format=yes       //使用标准日志文件来记录日志
  chroot_local_user=yes        //不允许所有用户离开自己的家目录
  listen=yes                    //表示vsftp是以stand alone方式启动
  pam_service_name=vsftpd     //指定vsftpd使用的PAM模式的配置文件
  userlist_enable=yes          //指定vsftp将读取user_list参数指定的用户列表
 userlist_deny=no          //指定只有user_list中的用户才能登录vsftp服务器
 tcp_wrappers=yes         是否允许tcp_wrappers管理

配置之后,将code写入到user_list中
测试:
    以匿名用户登录
        
测试成功,不能上传文件
   以code登录
        
  允许上传,测试成功
      

       错误分析    

        lftp 192.168.1.104:/> put install.log.syslog 

       put: Access failed: 553 Could not create file. (install.log.syslog)

    这个说明要上传的目录没有可写的权限,为其加上写入权限即可

    如chmod 757 /var/ftp/upload

       lftp 192.168.1.104:~> put install.log

       put: 登录失败: 500 OOPS: vsftpd: refusing to run with writable anonymous root

     /var/ftp系统自动限制匿名用户不能有写权限的,如果要上传文件,可以在/var/ftp下创建一个目录,如/var/ftp/upload   再把这个目录的other权限加上可写的权限











本文转自 guodong810 51CTO博客,原文链接:http://blog.51cto.com/guodong810/1032766,如需转载请自行联系原作者
目录
相关文章
|
6月前
|
安全 Linux 网络安全
如何在 VM 虚拟机中安装 Red Hat Enterprise Linux 9.3 操作系统保姆级教程(附链接)
如何在 VM 虚拟机中安装 Red Hat Enterprise Linux 9.3 操作系统保姆级教程(附链接)
|
存储 关系型数据库 MySQL
Red Hat 安装MySQL 8.0与 Navicat
Red Hat 安装 MySQL 8.0 1、更新软件包列表 在添加 MySQL 存储库后,运行以下命令以更新软件包列表: sudo yum update 2、安装MySQL服务器和客户端 执行以下命令安装MySQL 8.0服务器和客户端软件包: sudo yum install -y mysql-server 3、启动MySQL服务 安装完成后,MySQL 服务器应该已经自动启动。如果没有启动,您可以运行以下命令手动启动服务: sudo systemctl start mysqld 启用 MySQL 服务的开机启动,可以运行以下命令: sudo systemctl enable mysqld
254 1
|
Ubuntu Java Linux
|
缓存 开发工具
RedHat8.4配置本地yum软件仓库(RHEL8.4)
RedHat8.4配置本地yum软件仓库(RHEL8.4)
1643 0
RedHat8.4配置本地yum软件仓库(RHEL8.4)
|
3天前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
13 2
|
4天前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
12 3
|
4月前
|
存储 安全 Linux
问题记录:Redhat6.5 网卡配置变更后,Eth0变为Eth1
Red Hat Enterprise Linux 6.5(Redhat 6.5)尽管是一个较旧的操作系统版本,仍然在许多企业环境中发挥着重要作用。然而,老旧的系统并不免于技术挑战。例如,本文将探讨一个在修改网卡配置后遇到的一个奇怪问题:在网卡配置变更后,原本是eth0的网卡名称变更为了eth1。
问题记录:Redhat6.5 网卡配置变更后,Eth0变为Eth1
|
6月前
|
Linux Docker 容器
Red Hat系列Docker安装与移除
Docker 安装 添加 Docker 官方 YUM 源 sudo yum-config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo 安装 Docker Engine sudo yum install -y docker-ce docker-ce-cli containerd.io 启动 Docker 服务并设置开机自启 sudo systemctl start docker sudo systemctl enable docker 验证 Docker 安装 docker --versio
188 0
|
存储 Java Linux
Red Hat 安装JDK与IntelliJ IDEA
YUM是基于Red Hat的Linux发行版的一个强大而用户友好的包管理工具。轻松地管理软件包,无需手动配置环境变量,也不必担心解决依赖关系。它从远程存储库获取软件包,并处理安装过程,使其非常方便。YUM在维护系统稳定性和正常运行方面扮演着关键角色,通过有效地管理软件包更新和依赖关系。
136 5
|
关系型数据库 Linux 数据库
百度搜索:蓝易云【Redhat Linux9上安装DB2【详解】】
注意事项: - 安装过程中需要注意所选的软件包版本和系统依赖。 - 在创建 DB2 用户和组时,可以使用自己的用户名和组名,但需要与后续操作一致。 - 在配置环境变量时,需要注意所填写的路径是否正确,否则会导致启动 DB2 失败。 - 在启动 DB2 时,需要以 DB2 用户身份进行操作,否则会提示权限不足。
104 0