zoukankan      html  css  js  c++  java
  • Linux学习笔记11—VSFTP的搭建


    1.查看是否安装vsftp
    rpm -qa | grep vsftpd
    如果出现vsftpd-2.0.5-21.el5,说明已经安装 vsftp

    安装vsftp
    yum -y install vsftpd
    2、查看服务是否启动
    Service vsftpd status // 查看VSFTPD的状态
    Service vsftpd start //启动VSFTP服务
    Service vsftpd restart //重新启动服务
    Service vsftpd stop // 停止服务
    3、配置vsftpd
    # whereis vsftpd
    vsftpd: /usr/sbin/vsftpd /etc/vsftpd /usr/share/man/man8/vsftpd.8.gz
    yum安装的主要目录为上述的3个目录,其中配置文件vsftpd.conf在/etc/vsftpd中,下面看下怎么配置vsftpd.conf
    # 默认配置文件: /etc/vsftpd.conf
    # 下面是配置的选项及说明
    ######### 核心设置 ###########

    # 允许本地用户登录
    local_enable=YES
    # 本地用户的写权限
    write_enable=YES
    # 使用FTP的本地文件权限,默认为077
    # 一般设置为022
    local_umask=022
    # 切换目录时
    # 是否显示目录下.message的内容
    dirmessage_enable=YES
    dirlist_enable = NO
    #验证方式
    #pam_service_name=vsftpd
    # 启用FTP数据端口的数据连接
    connect_from_port_20=YES
    # 以独立的FTP服务运行
    listen=yes
    # 修改连接端口
    #listen_port=2121
    ######### 匿名登录设置 ###########
    # 允许匿名登录
    anonymous_enable=NO
    # 如果允许匿名登录
    # 是否开启匿名上传权限
    #anon_upload_enable=YES
    # 如果允许匿名登录
    # 是否允许匿名建立文件夹并在文件夹内上传文件
    #anon_mkdir_write_enable=YES
    # 如果允许匿名登录
    # 匿名帐号可以有删除的权限
    #anon_other_write_enable=yes
    # 如果允许匿名登录
    # 匿名的下载权限
    # 匿名为Other,可设置目录/文件属性控制
    #anon_world_readable_only=no
    # 如果允许匿名登录
    # 限制匿名用户传输速率,单位bite
    #anon_max_rate=30000

    ######### 用户限制设置 ###########

    #### 限制登录
    # 用userlist来限制用户访问
    #userlist_enable=yes
    # 名单中的人不允许访问
    #userlist_deny=no
    # 限制名单文件放置的路径
    #userlist_file=/etc/vsftpd/userlist_deny.chroot
    #### 限制目录
    # 限制所有用户都在家目录
    #chroot_local_user=yes
    # 调用限制在家目录的用户名单
    chroot_list_enable=YES
    # 限制在家目录的用户名单所在路径
    chroot_list_file=/etc/vsftpd/chroot_list

    ######### 日志设置 ###########

    # 日志文件路径设置
    xferlog_file=/var/log/vsftpd.log
    # 激活上传/下载的日志
    xferlog_enable=YES
    # 使用标准的日志格式
    #xferlog_std_format=YES


    ######### 安全设置 ###########

    # 用户空闲超时,单位秒
    #idle_session_timeout=600
    # 数据连接空闲超时,单位秒
    #data_connection_timeout=120
    # 将客户端空闲1分钟后断开
    #accept_timeout=60
    # 中断1分钟后重新连接
    #connect_timeout=60
    # 本地用户传输速率,单位bite
    #local_max_rate=50000
    # FTP的最大连接数
    #max_clients=200
    # 每IP的最大连接数
    #max_per_ip=5

    ######### 被动模式设置 ###########

    # 是否开户被动模式
    pasv_enable=yes
    # 被动模式最小端口
    pasv_min_port=5000
    # 被动模式最大端口
    pasv_max_port=6000
    ######### 其他设置 ###########
    # 欢迎信息
    ftpd_banner=Welcome to Ftp Server!

    4 添加ftp防火墙规则:(关闭防火墙之后不用添加)
    /sbin/iptables -I INPUT -p tcp --dport 21 -j ACCEPT
    /etc/rc.d/init.d/iptables save
    /etc/init.d/iptables restart
    关闭IPtables防火墙:
    Chkconfig –level 2345 iptables off
    Chkconfig –list 列出运行这的服务信息

    5 添加用户(注意,该处添加nologin类型用户ftpuser):
    useradd -d /home/ftp -s /sbin/nologin ftpuser
    如果已启动vsftpd,重新启动
    pkill vsftpd /usr/sbin/vsftpd &

    http://www.cnblogs.com/thinksasa/archive/2013/02/28/2937066.html 详细链接


    出现的问题:
    1、 安装好vsftp软件后,链接ftp登陆后提示这样的错误
    500 OOPS: cannot change directory:/home/
    //查看SELinux设置
    # getsebool -a|grep ftp
    ftpd_disable_trans –> off
    或者
    ftp_home_dir–>off
    //使用setsebool命令开启
    # setsebool ftpd_disable_trans 1
    或者
    # setsebool ftp_home_dir 1
    //查看当前状态是否是on的状态
    # getsebool -a|grep ftp
    ftpd_disable_trans –> on
    或者
    ftp_home_dir–>on
    //setsebool使用-P参数,无需每次开机都输入这个命令
    # setsebool -P ftpd_disable_trans 1
    或者
    # setsebool -P ftp_home_dir 1
    2、 解决vsftpd 530 Permission denied
    使用在vsftpd.conf中添加userlist_*阻止特定的本地用户
    userlist_enable=YES
    userlist_deny=YES
    userlist_file=/etc/vsftpd/user_list

    编辑/etc/vsftpd/user_list ,添加上需要阻止的本地用户,一个用户名一行 用被阻止的用户登录FTP显示的消息为:530 Permission denied
    我本机的etc/vsftpd/vsftpd.conf文件里,只有userlist_enable=YES 于是用root用户登录报错530 Permission denied 把YES改成NO就OK了

    还有一种情况,就是没有指定 userlist_file文件位置。解决:加上userlist_file=/etc/vsftpd/user_list

    或者本地登录用户被添加到/user_list 列表中 ,只要把该用户删除就可以了。

  • 相关阅读:
    iOS越狱系列(一):使用Reveal分析APP
    ios-异步消息同步问题-典型使用场景: 微信私信界面
    ios 消息跳转处理
    iOS开发UI篇—IOS CoreText.framework --- 基本用法
    IOS开发之实现App消息推送(最新)
    Thread 1: signal SIGABRT-内存管理的陋习
    别用symbolicatecrash来解析crash Log了by 风之枫
    通过崩溃trace来查找问题原因 .
    Xcode 6视图调试小贴士
    调试message send to deallocated instance问题
  • 原文地址:https://www.cnblogs.com/beginner-boy/p/8866345.html
Copyright © 2011-2022 走看看