VSFTP服务

互联网最开始的三大服务:HTTP、mail、FTP

一、文件服务器简介
    FTP:在内网和公网使用。服务器:windows,Linux    客户端:windows,Linux
    samba:只能在内网使用    (文件共享服务)    服务器:windows,Linux    客户端:windows(Linux)
    NFS:Linux中的常用的文件服务器(运行级别3)

声明:Apache是web服务器,和文件服务器没半毛钱关系。

Linux打的完整防护:SELinux(没有selinux服务,是由内核直接调用的)(由美国国家安全局开发的)安全等级在B1-B2左右
[root@localhost ~]# vi /etc/selinux/config
SELINUX=enforcing
改为
SELINUX=disabled
重启Linux(修改的是内核)
目前学习难度较大,所以暂时关闭,容易报错。

1、FTP软件
        Linux:wu-ftp            早期,不太安全
                    proftp            增强ftp工具
                    vsftp              安全,强大
                    
RedHat是行业的风向标,它更改一个功能,各企业都向其靠拢。使用基数大,这就是为什么要学RedHat系列的Linux,而不学Unbunto的原因(虽然它很火)

        windows:IIS            windows下网页搭建服务,可以搭建ftp服务
                        serv-U      专用ftp服务器
2、原理
                开启    21    命令传输端口
                           20    数据传输端口
3、FTP的用户
        1、ftp允许登录用户    就是系统用户,使用的密码也是系统密码            上传位置:/home/家目录
        2、匿名用户(不要用户名,不要密码(权限太大))    anonymous    密码:空    或者    邮箱地址    11@aa     上传位置:/var/ftp/

二、安装
        rpm    -ivh    vsftpd...........(....包全名的意思,按tab键)
        yum    install    vsftpd    -y

三、相关文件
        /etc/vsftpd/vsftpd.conf            配置文件
        /etc/vsftpd/ftpusers                 用户访问控制文件        写入此文件的用户都不能访问ftp服务器(黑名单文件)
        /etc/vsftpd/chroot_list              需要手工建立(默认没有)               定义是否把用户限制在家目录

四、配置文件配置

        /etc/vsftpd/vsftpd.conf
        
        1    主机相关配置
              listen_port=21                            监听端口
              connect_from_port_20=YES      数据传输端口
              ftpd_banner=                             欢迎信息(默认是注释的)
        
        2    匿名用户登录        在Linux下识别为    ftp    用户
                anonymous_enable=YES        允许匿名用户登录    必须修改为NO

        3    本地用户
                local_enable=YES            允许系统用户登录
                write_enable=YES            允许上传
                local_umask=022             默认上传权限
                local_max_rate=300        上传限速
    
        4    限制用户访问目录(这三句话默认是注释的)
                chroot_local_user=YES        只有此句,所有用户限制在家目录下    (257 "/" 实际是我的家目录)

                chroot_local_user=YES        如有三句话,只有文件chroot_list中的用户可以访问任何目录,其他用户限制在家目录
                chroot_list_enable=YES
                chroot_list_file=/etc/vsftpd/chroot_list(白名单:随便访问)

        5    修改完配置文件,要想生效就必须将该服务重启
                service    vsftpd    restart
        6    !ser    命令行中的!是指:执行最后一个以ser开头的命令
               如:!ser    执行的效果和    service vsftpd restart    的效果是相同的

    ftp客户端使用

        1    使用命令登录
                ftp    ip

                        get    文件名        下载
                        put    文件名        上传        
                        注意:不能上传和下载目录,只能是文件

        2    使用windows窗口
                ftp://用户名@IP
                注意:不支持断点续传
 
 

 

        3    使用第三方工具登录
                flashFXP
                winscp

总结:两件事:关闭匿名用户、把所有用户限制到家目录。

实验时出现的错误:
  1. C:>ftp 192.168.20.128
  2. 连接到 192.168.20.128
  3. 220 (vsFTPd 2.2.2)
  4. 用户(192.168.20.128:(none)): zc
  5. 331 Please specify the password.
  6. 密码:
  7. 500 OOPS: could not read chroot() list file:/etc/vsftpd/chroot_list
  8. 500 OOPS: priv_sock_get_result
  9. 远程主机关闭连接。
解决:是因为没有这个文件。在/etc/下面新建一个chroot_list文件即可

    




php是世界上最好的编程语言,没有之一
原文地址:https://www.cnblogs.com/lookphp/p/4683149.html