zoukankan      html  css  js  c++  java
  • Vsftpd服务的搭建

    安装vsftpd服务程序
    yum install vsftpd -y

    Vsftpd的程序与配置文件:

    主程序 /usr/sbin/vsftpd
    用户禁止登陆列表 /etc/vsftpd/ftpusers
    /etc/vsftpd/user_list
    主配置文件 /etc/vsftpd/vsftpd.conf

    vsftpd程序配置文件参数的作用:

    参数 作用
    listen=[YES|NO] 是否以独立运行的方式监听服务。
    listen_address=IP地址 设置要监听的IP地址。
    listen_port=21 设置FTP服务的监听端口。
    download_enable=[YES|NO] 是否允许下载文件。
    userlist_enable=[YES|NO]
    userlist_deny=[YES|NO]
    是否启用“禁止登陆用户名单”。
    max_clients=0 最大客户端连接数,0为不限制。
    max_per_ip=0 同一IP地址最大连接数,0位不限制。
    anonymous_enable=[YES|NO] 是否允许匿名用户访问。
    anon_upload_enable=[YES|NO] 是否允许匿名用户上传文件。
    anon_umask=022 匿名用户上传文件的umask值。
    anon_root=/var/ftp 匿名用户的FTP根目录。
    anon_mkdir_write_enable=[YES|NO] 是否允许匿名用户创建目录。
    anon_other_write_enable=[YES|NO] 是否开放匿名用户其他写入权限。
    anon_max_rate=0 匿名用户最大传输速率(字节),0为不限制。
    local_enable=[YES|NO] 是否允许本地用户登陆FTP。
    local_umask=022 本地用户上传文件的umask值。
    local_root=/var/ftp 本地用户的FTP根目录。
    chroot_local_user=[YES|NO] 是否将用户权限禁锢在FTP目录,更加的安全。
    local_max_rate=0 本地用户最大传输速率(字节),0为不限制。

    Vsftpd的验证方式

    1 匿名访问模式

    vim /etc/vsftpd/vsftpd.conf

    anonymous_enable=YES
    local_enable=YES
    write_enable=YES
    local_umask=022
    dirmessage_enable=YES
    xferlog_enable=YES
    connect_from_port_20=YES
    xferlog_std_format=YES
    listen=YES
    pam_service_name=vsftpd
    userlist_enable=YES
    tcp_wrappers=YES
    anon_umask=022
    anon_upload_enable=YES
    anon_mkdir_write_enable=YES
    anon_other_write_enable=YES

    更改FTP根目录/var/ftp所属主为ftp

    chown  ftp /var/ftp/pub

    在客户端安装ftp

    yum install ftp -y

    连接服务端,进行访问

    [root@oracledb ~]# ftp 192.168.0.80
    Connected to 192.168.0.80 (192.168.0.80).
    220 (vsFTPd 2.2.2)
    Name (192.168.0.80:root): anonymous
    331 Please specify the password.
    Password:
    230 Login successful.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp> cd pub
    250 Directory successfully changed.
    ftp> mkdir dir1
    257 "/pub/dir1" created
    ftp> rename dir1 database
    350 Ready for RNTO.
    250 Rename successful.
    ftp> exit
    221 Goodbye.
    2.本地用户模式
    vsftpd服务程序默认已经允许本地用户模式,我们要做的是添加设置本地用户模式权限的参数:

    vim /etc/vsftpd/vsftpd.conf

    anonymous_enable=NO
    local_enable=YES
    write_enable=YES
    local_umask=022
    dirmessage_enable=YES
    xferlog_enable=YES
    connect_from_port_20=YES
    xferlog_std_format=YES
    listen=YES
    pam_service_name=vsftpd
    userlist_enable=YES
    tcp_wrappers=YES
    anon_umask=022

    vsftpd服务为了让FTP服务更加的安全,默认禁止以root身份登入,那么创建个普通用户吧:

    [root@wls12c vsftpd]# useradd ftpadmin
    [root@wls12c vsftpd]# passwd ftpadmin
    更改用户 ftpadmin 的密码 。
    新的 密码:
    无效的密码: 它基于字典单词
    重新输入新的 密码:
    passwd: 所有的身份验证令牌已经成功更新。

    在客户端登录访问:

    [root@oracledb ~]# ftp 192.168.0.80
    Connected to 192.168.0.80 (192.168.0.80).
    220 (vsFTPd 2.2.2)
    Name (192.168.0.80:root): ftpadmin
    331 Please specify the password.
    Password:
    230 Login successful.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp> mkdir files
    257 "/home/ftpadmin/files" created
    ftp> exit
    221 Goodbye.
    3 虚拟用户模式

    因为虚拟用户模式的帐号口令都不是真实系统中存在的,所以只要配置妥当虚拟用户模式会比本地用户模式更加安全,但是Vsftpd服务配置虚拟用户模式的操作步骤相对复杂一些。

    附:

    自动化的脚本:

    上传文件到/home/ftpadmin目录下:

    !/bin/bash
    ftp -niv <<-EOF
    open 192.168.0.80
    user ftpadmin ftpadmin
    bin
    put test.txt
    close
    bye
    EOF
  • 相关阅读:
    【排序】冒泡排序,C++实现
    【排序】选择排序,C++实现
    【排序】插入排序,C++实现
    【集成学习】 lightgbm原理
    leetcode1310
    leetcode1309
    leetcode1300
    leetcode1302
    leetcode1299
    leetcode1306
  • 原文地址:https://www.cnblogs.com/zydev/p/5949783.html
Copyright © 2011-2022 走看看