zoukankan      html  css  js  c++  java
  • linux系统快速搭建ftp服务器——实现匿名用户和创建用户访问服务器

    一、准备工作:

    linux系统为CentOS Linux release 7.5.1804 (Core)  可以使用 lsb_release -a  命令查看

    window系统中安装 SecureCRT 和 Secure File Transfer Client 软件

    使用SecureCRT 客户端远程登录服务器,进行一系列的安装操作,使用Secure File Transfer Client  客户端可以手动操作服务器端文件

    二、开始搭建FTP服务器:

    1.检查linux服务器上是否安装了vsftpd软件

    # rpm -qa | grep vsftpd


    2.如果没有安装,使用yum命令进行安装

    # yum -y install vsftpd

    到此vsftpd软件就安装成功了。

    三、查看vsftpd服务的运行情况

    systemctl status vsftpd.service
    如果运行状态是stoped的,则启动vsftpd服务

    systemctl start vsftpd.service
    如果运行状态是started的话,则可以重启服务

    systemctl restart vsftpd.service
    关闭服务使用stop命令

    systemctl stop vsftpd.service
     

    四、配置不同方式登录

    4.1、匿名用户:

    vsftpd安装好后,进行匿名用户访问的话,需要修改/etc/vsftpd/vsftpd.conf配置文件。

    1.执行 cd 命令,切换到vsftpd.conf配置文件所在目录

    # cd /etc/vsftpd/


    2.执行 vi 命令,打开 vsftpd.conf 配置文件,进入阅读模式

    # vim vsftpd.conf


    3.点击 i ,进入编辑模式,我的配置文件如下

    #设置是否允许匿名用户登录FTP服务器。默认为YES
    anonymous_enable=YES
    
    #是否允许本地用户登录FTP服务器。默认为NO
    local_enable=YES
    
    #是否对登录用户开启写权限。属全局性设置。默认NO
    write_enable=YES
    
    #是否允许匿名用户上传文件。只有在write_enable设置为YES时,该配置项才有效。而且匿名用户对相应的目#录必须有写权限。默认为NO。
    anon_upload_enable=YES
    
    #是否允许匿名用户创建目录。只有在write_enable设置为YES时有效。且匿名用户对上层目录有写入的权限。#默认为NO。
    anon_mkdir_write_enable=YES
    
    #若设置为YES,则匿名用户会被允许拥有多于上传和建立目录的权限,还会拥有删除和更名权限。默认值为#NO。
    anon_other_write_enable=NO
    
    #设置本地用户新增文档的umask,默认为022,对应的权限为755。umask为022,对应的二进制数为000 010 #010,将其取反为111 101 101,转换成十进制数,即为权限值755,代表文档的所有者(属主)有读写执行 
    #权,所属组有读和执行权,其他用户有读和执行权。022适合于大多数情 况,一般不需要更改。若设置为#077,则对应的权限为700。
    local_umask=022
    
    #设置是否显示目录消息。若设置为YES,则当用户进入特定目录(比如/var/ftp/linux)时,将显示该目录中#的由message_file配置项指定的文件(.message)中的内容。
    dirmessage_enable=YES
    
    #是否启用上传/下载日志记录。默认为NO
    xferlog_enable=YES
    
    #日志文件是否使用标准的xferlog日志文件格式(与wu-ftpd使用的格式相同) 。默认为NO
    xferlog_std_format=YES
    
    #默认值为YES,指定FTP数据传输连接使用20端口。若设置为NO,则进行数据连接时,所使用的端口由#ftp_data_port指定。
    connect_from_port_20=YES
    
    #设置vsftpd服务器是否以standalone模式运行。以standalone模式运行是一种较好的方式,此时listen必
    #须设置为YES, 此为默认值,建议不要更改。很多与服务器运行相关的配置命令,需要此运行模式才有效。若#设置为NO,则vsftpd不是以独立的服务运行,要受 xinetd服务的管理控制,功能上会受限制。
    listen=NO
    
    #"listen=YES""listen_ipv6=YES"是不能同时开启,需要一个开启一个关闭
    #让vsftpd同时支持IPv4和IPv6
    listen_ipv6=YES
    
    #设置在PAM所使用的名称,默认值为vsftpd。
    pam_service_name=vsftpd
    
    #决定/etc/vsftpd/user_list文件是否启用生效。YES则生效,NO不生效。
    userlist_enable=YES
    
    #用来设置vsftpd服务器是否与tcp wrapper相结合,进行主机的访问控制。默认设置为YES,vsftpd服务器会#检查/etc/hosts.allow和/etc /hosts.deny中的设置,以决定请求连接的主机是否允许访问该FTP服务器。#这两个文件可以起到简易的防火墙功能。
    #比如,若要仅允许192.168.168.1192.168.168.254的用户,可以访问连接vsftpd服务器,则可 
    #在/etc/hosts.allow文件中添加以下内容:
    #vsftpd:192.168.168.0/255.255.255.0 :allow
    #all:all:deny
    tcp_wrappers=YES

    4.按ESC键,输入 :wq 保存修改的配置文件

    # :wq

    5.重启vsftpd服务,即可使用匿名用户访问。

    匿名用户实现文件的上传、下载、删除:

    注意 :匿名用户的根目录/var/ftp/是不可以直接设置777权限的,否则会无法访问ftp服务,要想实现匿名用户的上传、下载和删除,需要使用“other”用户,也就是在/var/ftp/根目录下新建upload目录,然后给upload文件夹设置777权限即可。

    1.创建upload文件夹

    # mkdir /var/ftp/upload

    2.给upload文件夹设置权限

    # chmod -R 777 /var/ftp/upload/

    3.重启ftp服务,即可实现匿名用户的上传、下载、删除操作。

    客户端连接ftp服务端:

    # ftp 192.168.42.105
    
    用户名:anonymous
    密码:无,直接回车

    4.2、创建用户:

    使用useradd命令:

    useradd admin ,默认在/home文件夹下创建一个和 admin一样名称的文件作为该用户所拥有的文件

    # useradd admin   #回车
    # passwd admin   #回车,设置密码

    密码设置后,千万不要忘记修改 vsftpd.conf 配置文件

    1.执行 cd 命令,切换到vsftpd.conf配置文件所在目录

    # cd /etc/vsftpd/

    2.执行 vi 命令,打开 vsftpd.conf 配置文件,进入阅读模式

    # vi vsftpd.conf

    3.点击 i ,进入编辑模式,我的配置文件如下

    #设置是否允许匿名用户登录FTP服务器。默认为YES
    anonymous_enable=NO
    
    #是否允许本地用户登录FTP服务器。默认为NO
    local_enable=YES
    
    #是否对登录用户开启写权限。属全局性设置。默认NO
    write_enable=YES
    
    #设置本地用户新增文档的umask,默认为022,对应的权限为755。umask为022,对应的二进制数为000 010 #010,将其取反为111 101 101,转换成十进制数,即为权限值755,代表文档的所有者(属主)有读写执行 
    #权,所属组有读和执行权,其他用户有读和执行权。022适合于大多数情 况,一般不需要更改。若设置为#077,则对应的权限为700。
    local_umask=022
    
    #设置是否显示目录消息。若设置为YES,则当用户进入特定目录(比如/var/ftp/linux)时,将显示该目录中#的由message_file配置项指定的文件(.message)中的内容。
    dirmessage_enable=YES
    
    #是否启用上传/下载日志记录。默认为NO
    xferlog_enable=YES
    
    #默认值为YES,指定FTP数据传输连接使用20端口。若设置为NO,则进行数据连接时,所使用的端口由#ftp_data_port指定。
    connect_from_port_20=YES
    
    #日志文件是否使用标准的xferlog日志文件格式(与wu-ftpd使用的格式相同) 。默认为NO
    xferlog_std_format=YES
    
    #设置vsftpd服务器是否以standalone模式运行。以standalone模式运行是一种较好的方式,此时listen必
    #须设置为YES, 此为默认值,建议不要更改。很多与服务器运行相关的配置命令,需要此运行模式才有效。若#设置为NO,则vsftpd不是以独立的服务运行,要受 xinetd服务的管理控制,功能上会受限制。
    listen=YES
    
    #设置vsftpd允许的最大连接数,默认为0,表示不受限制。若设置为150时,则同时允许有150个连接,超出的将拒绝建立连接。只有在以standalone模式运行时才有效。
    max_clients=0
    
    #设置每个IP地址允许与FTP服务器同时建立连接的数目。默认为0,不受限制。通常可对此配置进行设置,防止同一个用户建立太多的连接。只有在以standalone模式运行时才有效。
    max_per_ip=0
    
    #"listen=YES""listen_ipv6=YES"是不能同时开启,需要一个开启一个关闭
    #让vsftpd同时支持IPv4和IPv6
    listen_ipv6=NO
    
    pam_service_name=vsftpd
    userlist_enable=YES
    tcp_wrappers=YES

    4.按ESC键,输入 :wq 保存修改的配置文件

    # :wq

    5.重启vsftpd服务,即可使用用户密码访问。

    用户登录实现文件的上传、下载、删除:

    用户登录后,需要给该用户设置权限,该用户才可以对文件进行操作。

    1.这里创建的admin用户,访问路径在 /home/admin,所以需要给 /home/admin/ 文件下设置777权限

    # chmod -R 777 /home/admin/

    2.重启ftp服务,即可实现匿名用户的上传、下载、删除操作。

  • 相关阅读:
    Java8之Consumer接口
    Java8之Cloneable接口
    Java基础之Iterator接口
    Java基础之Iterable接口
    WPF中窗体在同一个位置实现不同页面切换
    WPF中单选框RadioButton
    WPF中的TextBlock处理长字符串
    WPF中Canvas使用
    WPF中窗体调用窗体
    WPF中HyperLink超链接的使用
  • 原文地址:https://www.cnblogs.com/lizhewei/p/11840641.html
Copyright © 2011-2022 走看看