• 安装vsFTP到CentOS(YUM)


    运行环境

    系统版本:CentOS Linux release 7.3.1611 (Core)
    软件版本:vsftpd-3.0.2
    硬件要求:无

    安装过程

    1、安装YUM-EPEL存储库

    YUM-EPEL存储库由EPEL官网提供。

    [root@localhost ~]# yum -y install epel-release.noarch
    

    2、安装vsFTP和FTP

    vsFTP是FTP服务端,FTP是FTP客户端。

    [root@localhost ~]# yum -y install vsftpd ftp
    

    3、创建要共享的目录

    [root@localhost ~]# mkdir -p /var/ftp/share
    

    4、配置vsFTP

    配置一个使用本地用户进行身份验证的文件服务。

    [root@localhost ~]# vim /etc/vsftpd/vsftpd.conf
    ### 全局配置 ###
    listen=YES
    #设置监听进程的方式,YES为独立进程运行,NO则以Xined进程的方式运行,服务则由Xined管理工具控制。Xined是一种服务管理工具,类似于Redhat中的service命令。一般设置为YES。
    listen_port=21
    #设置监听端口号。默认为21。
    listen_address=0.0.0.0
    #设置监听地址。如果不配置,默认监听所有IP。
    connect_from_port_20=NO
    #设置服务器数据传输是否为主动模式。如果为YES,则服务器主动从客户端的20端口建立数据连接,传输数据。
    pasv_enable=YES
    #设置服务器数据传输是否为被动模式。默认开启,当服务端被动传输数据。
    pasv_max_port=0
    #设置被动模式下客户端开启的最大端口号。
    pasv_min_port=0
    #设置被动模式下客户端开启的最小端口号。
    tcp_wrappers=NO
    #设置是否开启TCP_wrappers主机访问控制功能。如果为YES,则由TCP_wrappers网络防火墙控制,允许或拒绝那些主机才能访问FTP服务。
    pam_service_name=vsftpd
    #设置用于用户认证的PAM文件位置。此项必须存在。对应/etc/pam.d/vsftpd文件。
    max_clients=2000
    #设置客户端最大连接数。
    max_per_ip=50
    #设置相同IP同时连接的数量。0表示无限制。
    ascii_download_enable=NO
    #是否启用下载时采用ASCII方式传输文件。加密传输。
    ascii_upload_enable=NO
    #是否启用上传时采用ASCII方式传输文件。加密传输。
    xferlog_enable=NO
    #控制开启xferlog日志功能。
    xferlog_file=/var/log/xferlog
    #指定日志记录位置。
    xferlog_std_format=NO
    #是否将日志记录的格式转换成xferlog格式。
    write_enable=YES
    #控制所有用户登录是否可写。
    download_enable=YES
    #控制所有用户是否允许下载操作。
    userlist_enable=NO
    #是否开启用户列表控制功能。创建一个用户列表文件,每个用户名为一行。
    userlist_file=/etc/vsftpd/user_list
    ##指定用户列表文件位置。
    userlist_deny=YES
    #设置是否拒绝这个用户列表文件中的用户访问登录。如果为YES则为拒绝,如果为NO则为允许。
    
    ### 匿名用户配置 ###
    anonymous_enable=NO
    #控制匿名登录是否启用。如果启用则默认使用ftp和anonymous为匿名用户。
    ftp_username=ftp
    #设置匿名用户名。默认为ftp。
    anon_root=/var/ftp
    #设置匿名用户的主目录位置。默认是/var/ftp目录。
    anon_mkdir_write_enable=NO
    #如果为YES,则匿名用户允许创建、删除目录的权限,前提是开启write_enable=YES。
    anon_other_write_enable=NO
    #如果为YES,则匿名用户允许执行写入操作,除了上传和创建目录,如删除和重命名。
    anon_upload_enable=NO
    #如果为YES,则允许匿名用户上传文件,前提是开启write_enable=YES。
    anon_world_readable_only=YES
    #如果为YES,则匿名用户只拥有只读权限,只可以下载文件,不可修改和写入。
    anon_max_rate=0
    #设置匿名传输最大速率(以字节为单位)。
    anon_umask=077
    #设置匿名用户创建文件时的文件权限。为反掩码,转换成正掩码:777-077=700。
    no_anon_password=YES
    #如果为YES,则匿名登录时不用要求输入密码直接登录。
    
    ### 本地用户配置 ###
    local_enable=YES
    #本地用户启用开关,如果启用的话则访问文件服务需要输入用户名和密码,默认读取系统中/etc/passwd文件中的用户账户。说白了就是使用系统用户登录。
    local_root=/var/ftp/share
    #设置要共享的目录路径。
    local_umask=077
    #设置本地用户创建文件时的文件权限。为反掩码,转换成正掩码:777-077=700。
    chroot_local_user=NO
    #设置是否将用户限制在自己的用户家目录(/home/{users})中,不允许切换到其他目录。
    allow_writeable_chroot=YES
    #设置允许用户在家目录下可写权限。在vsFTP新版以后,为了增加安全性,默认情况下如果限制用户在自己的家目录,家目录不允许有可写的权限。我们可以通过此配置控制用户家目录可写。
    chroot_list_enable=NO
    #如果为YES,则你需要提供一个本地用户列表的文件。在该列表中的用户都不允许切换到上级目录,将其限制在家目录(共享目录)中。你需要指定一个本地用户列表的文件。
    chroot_list_file=/etc/vsftpd/chroot_list
    #设置一个本地用户列表文件。
    local_max_rate=0
    #设置本地用户传输最大速率(以字节为单位)。
    userlist_enable=NO
    #设置使用一个本地用户列表控制用户访问登录,只允许此列表中的用户访问文件服务。
    userlist_deny=NO
    #设置使用一个本地用户列表控制用户访问登录,在此列表中的用户禁止访问文件服务。
    userlist_file=/etc/vsftpd/user_list
    #本地用户列表文件位置。
    
    ### 虚拟用户配置 ###
    guest_enable=NO
    #如果开启此项则所有非匿名登录用户都将被视为“访客”登录。开启虚拟用户映射功能。
    guest_username=ftp
    #设置虚拟用户对应的真实系统用户名。
    

    5、创建一个系统用户

    我们创建一个系统用户,用于访问到FTP服务器。

    [root@localhost ~]# useradd test
    [root@localhost ~]# passwd test
    

    6、目录授权

    用户必须拥有对目录的操作权限。

    [root@localhost ~]# chown -R test.test /var/ftp/share/
    

    7、启动vsFTP服务

    [root@localhost ~]# systemctl restart vsftpd
    [root@localhost ~]# systemctl status vsftpd
    ● vsftpd.service - Vsftpd ftp daemon
       Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; disabled; vendor preset: disabled)
       Active: active (running) since Thu 2019-06-20 01:52:50 EDT; 4s ago
    

    8、使用FTP客户端访问到FTP服务器

    我们输入账号密码即可登陆到FTP服务器上。

    [root@localhost ~]# ftp 172.16.254.129
    Connected to 172.16.254.129 (172.16.254.129).
    220 (vsFTPd 3.0.2)
    Name (172.16.254.129:root): test
    331 Please specify the password.
    Password:
    230 Login successful.
    

    9、也可以使用CurlFTPFS工具将远端目录挂载到本地

    但是前提是我们需要安装它。

    9.1、安装CurlFTPfs

    [root@localhost mnt]# yum -y install curlftpfs
    

    9.2、将FTP服务器上的共享目录挂载到本地

    语法:curlftpfs  ftp://用户名:密码@FTP服务器地址 本地目录
    [root@localhost ~]# curlftpfs  ftp://test:123456@172.16.254.129/ /var/ftp/mnt
    
  • 相关阅读:
    nginx基础命令
    unity3d 事件说明
    unity3d xml序列化
    网上关于碰撞的资料
    武器系统逻辑代码分析
    quaternion*Vector3的新理解
    poolmanager1.path-o-logical 很好的prefab preload工具
    MobileMovieTexture播放视频
    spring中MessageSource的配置使用方法3--ResourceBundleMessageSource
    spring中MessageSource的配置使用方法2--ReloadableResourceBundleMessageSource
  • 原文地址:https://www.cnblogs.com/network-ren/p/12400832.html
Copyright © 2020-2023  润新知