zoukankan      html  css  js  c++  java
  • Centos7搭建FTP站点

    Centos7搭建FTP站点

    vsftpd安装

    安装vsftpd

    yum install vsftpd -y
    

    设置开机自启

    systemctl enable vsftpd
    

    服务启动

    systemctl start vsftpd
    

    查看服务状态

    systemctl status vsftpd
    

    vsftpd服务状态图

    从服务状态可以看到,ftp服务已经处于running状态,同时可以看到ftp服务的配置文件。

    服务重启

    systemctl restart vsftpd
    

    在修改了配置文件之后,需要重启服务。

    vsftpd准备

    我们可以使用root,不过推荐创建专门的ftp用户,保证服务器数据安全。

    创建用户

    adduser ftpuser
    

    设置密码

    passwd ftpuser
    

    创建目录

    可以直接使用已经存在的目录,这里单独创建一个新的目录进行共享,同时创建两个测试文件。

    mkdir -p /var/vsftpd/ftp
    touch /var/vsftpd/ftp/001.txt
    touch /var/vsftpd/ftp/002.pdf
    

    权限配置

    将共享目录的拥有者设置为ftpuser。

    chown -R ftpuser:ftpuser /var/vsftpd/ftp
    

    vsftpd配置

    前面通过服务状态可以看到配置文件路径,通过路径查看配置文件。

    常用配置

    #是否容许匿名登录FTP服务器。
    anonymous_enable=NO
    #允许本地用户登录FTP服务器。
    local_enable=YES
    # 数据传输中断超时时间
    idle_session_timeout=600
    # 数据连接超时时间
    data_connection_timeout=120
    

    日志配置

    # 开启操作日志记录
    xferlog_enable=YES
    # 日志路径
    xferlog_file=/var/log/vsftpd.log
    # 日志格式使用标准xfer
    xferlog_std_format=YES
    

    黑名单配置

    # 开启email黑名单
    deny_email_enable=YES
    # email黑名单文件路径
    banned_email_file=/etc/vsftpd/banned_emails
    # userlist中用户能否登录
    userlist_enable=YES
    # userlist中用户是否拉黑,与上面配置有一即可
    userlist_deny=YES
    

    其它配置

    #允许进行写操作
    write_enable=YES
    #权限配置参数,具体看补充说明
    local_umask=022
    # 允许匿名用户上传文件
    anon_upload_enable=YES
    # 允许匿名用户创建新的目录
    anon_mkdir_write_enable=YES
    # 当用户进入某个目录时,会显示该目录需要注意的内容
    dirmessage_enable=YES
    # ftp服务监听端口
    listen_port=21
    # 主动模式端口使用20
    connect_from_port_20=YES
    # 设定是否允许 改变 上传文件的属主
    chown_uploads=YES
    # 设置想要改变的上传文件的属主,whoever表任何人
    chown_username=whoever
    # vsftpd运行的非特权用户
    nopriv_user=ftpsecure
    # 开启abor异步请求
    async_abor_enable=YES
    # 启用以ascii类型上传
    ascii_upload_enable=YES
    # 启用以ascii类型下载
    ascii_download_enable=YES
    # frp欢迎语
    ftpd_banner=Welcome to blah FTP service
    # 锁定用户只能在自己的目录下
    chroot_list_enable=YES
    # 用户锁定名单文件
    chroot_list_file=/etc/vsftpd/chroot_list
    # 容许目录递归查询
    ls_recurse_enable=YES
    # 以独立模式运行,由vsftpd自己监听和处理连接请求
    listen=YES
    # 支持ipv6
    listen_ipv6=YES
    # 设置 PAM 外挂模块提供的认证服务所使用的配置文件名 ,即/etc/pam.d/vsftpd文件,此文件中file=/etc/vsftpd/ftpusers字段,说明了PAM模块能抵挡的帐号内容来自文件/etc/vsftpd/ftpusers中
    #pam_service_name=vsftpd
    
    # 服务器使用 tcp_wrappers 作为主机访问控制方式
    tcp_wrappers=YES
    # 最大客户端连接数
    max_client=100
    # 通ip最大连接数,0表不限制
    max_per_ip=1
    # 本地用户最大传输速度单位b/s
    local_max_rate=1000
    # 匿名用户最大传输速度
    ano n_max_rate=100
    
    

    补充说明

    • umask是在linux中常见的一个东西,它其实是一个掩码。当然,也有umask这样一个命令,它是对用户建立的文件的默认属性的定义。该 定义为:
      假设umask为022,则对于一个文件夹的话,它的默认属性为 777-022=755,这也就是我们平时建立文件夹的权限。而对于一般的文件的话,则是用 666-022=644.

    ftp数字代码

    正常代码

    • 110 重新启动标记应答
    • 120 服务在多久时间内ready
    • 125 数据链路端口开启,准备传送
    • 150 文件状态正常,开启数据连接端口
    • 200 命令执行成功
    • 202 命令执行失败
    • 211 系统状态或是系统求助响应
    • 212 目录的状态
    • 213 文件的状态
    • 214 求助的讯息
    • 215 名称系统类型
    • 220 新的联机服务 ready
    • 221 服务的控制连接端口关闭,可以注销
    • 225 数据连结开启,但无传输动作
    • 226 关闭数据连接端口,请求的文件操作成功
    • 227 进入 passive mode
    • 230 使用者登入
    • 250 请求的文件操作完成
    • 257 显示目前的路径名称

    错误码

    • 331 用户名称正确,需要密码
    • 332 登入时需要账号信息
    • 350 请求的操作需要进一部的命令
    • 421 无法提供服务,关闭控制连结
    • 425 无法开启数据链路
    • 426 关闭联机,终止传输
    • 450 请求的操作未执行
    • 451 命令终止 : 有本地的错误
    • 452 未执行命令 : 磁盘空间不足
    • 500 格式错误,无法识别命令
    • 501 参数语法错误
    • 502 命令执行失败
    • 503 命令顺序错误
    • 504 命令所接的参数不正确
    • 530 未登入
    • 532 储存文件需要账户登入
    • 550 未执行请求的操作
    • 551 请求的命令终止,类型未知
    • 552 请求的文件终止,储存位溢出
    • 553 未执行请求的的命令,名称不正确。
    作者:红雨
    出处:https://www.cnblogs.com/52why
    微信公众号: 红雨python
  • 相关阅读:
    python 并发编程 多线程 event
    python 并发编程 多线程 定时器
    python 并发编程 多线程 信号量
    linux top 查看CPU命令
    python 并发编程 多线程 GIL与多线程
    python 并发编程 多线程 死锁现象与递归锁
    python 并发编程 多线程 GIL与Lock
    python GIL全局解释器锁与互斥锁 目录
    python 并发编程 多线程 GIL全局解释器锁基本概念
    执行python程序 出现三部曲
  • 原文地址:https://www.cnblogs.com/52why/p/15251040.html
Copyright © 2011-2022 走看看