• Day1:基于ECS搭建FTP服务


    FTP 是 TCP/IP 协议组中的协议之一。

    FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。默认情况下FTP协议使用TCP端口中的 20和21这两个端口,其中20用于传输数据,21用于传输控制信息

    vsftpd是一款在Linux发行版中最受推崇的FTP服务器。

    步骤:

    1.开通实例,并使用终端工具连接ECS服务器。

    2.安装vcftpd。

    yum install -y vsftpd

    3.设置开机自启。

    systemctl enable vsftpd.service

    4.启动FTP服务:

    systemctl start vsftpd.service

    5.查看监听端口:端口默认为21

    netstat -antup | grep ftp

    ------------修改默认端口:

    vi /etc/vsftpd.conf
    在文件末尾新增 listen_port=4950
    编辑/etc/services 文件,修改其中的
               ftp             20/tcp
               ftp             20/udp          fsp fspd
               为
               ftp             4950/tcp
               ftp             4950/udp          fsp fspd
        重新启动vsftpd服务
               service vsftpd restart
        查看当前vsftpd监听的端口号
               netstat -tnulp|grep vsftpd
    匿名用户模式

    6.修改配置文件vsftpd.conf

    vim /etc/vsftpd/vsftpd.conf
    将匿名上传权限 anon_upload_enable=YES 的注释解开。

    7.更改/var/ftp/pub目录的权限,为FTP用户添加写权限

    chmod o+w /var/ftp/pub/

    8.重启FTP服务

    systemctl restart vsftpd.service

    结束!!!

    本地用户模式

    创建一个Linux用户

    adduser ftptest

    密码

    password ftptest

    创建一个供FTP服务使用的文件目录。

    mkdir /var/ftp/test

    更改/var/ftp/test目录的拥有者为ftptest。

    chown -R ftptest:ftptest /var/ftp/test

    修改vsftpd.conf配置文件。

    配置FTP为主动模式请执行如下命令:

    sed -i 's/anonymous_enable=YES/anonymous_enable=NO/' /etc/vsftpd/vsftpd.conf #禁止匿名登录FTP服务器 
    sed -i 's/listen=NO/listen=YES/' /etc/vsftpd/vsftpd.conf #监听IPv4 sockets 
    sed -i 's/listen_ipv6=YES/#listen_ipv6=YES/' /etc/vsftpd/vsftpd.conf #关闭监听IPv6 sockets 
    sed -i 's/#chroot_local_user=YES/chroot_local_user=YES/' /etc/vsftpd/vsftpd.conf #全部用户被限制在主目录 
    sed -i 's/#chroot_list_enable=YES/chroot_list_enable=YES/' /etc/vsftpd/vsftpd.conf #启用例外用户名单 
    sed -i 's/#chroot_list_file=/chroot_list_file=/' /etc/vsftpd/vsftpd.conf #指定例外用户列表文件,列表中的用户不被锁定在主目录 
    echo "allow_writeable_chroot=YES" >> /etc/vsftpd/vsftpd.conf 
    echo "local_root=/var/ftp/test" >> /etc/vsftpd/vsftpd.conf #设置本地用户登录后所在的目录

    配置FTP为被动模式请执行如下命令:

    sed -i 's/anonymous_enable=YES/anonymous_enable=NO/' /etc/vsftpd/vsftpd.conf #禁止匿名登录FTP服务器 
    sed -i 's/listen=NO/listen=YES/' /etc/vsftpd/vsftpd.conf #监听IPv4 sockets 
    sed -i 's/listen_ipv6=YES/#listen_ipv6=YES/' /etc/vsftpd/vsftpd.conf #关闭监听IPv6 sockets 
    sed -i 's/#chroot_local_user=YES/chroot_local_user=YES/' /etc/vsftpd/vsftpd.conf #全部用户被限制在主目录 
    sed -i 's/#chroot_list_enable=YES/chroot_list_enable=YES/' /etc/vsftpd/vsftpd.conf #启用例外用户名单 
    sed -i 's/#chroot_list_file=/chroot_list_file=/' /etc/vsftpd/vsftpd.conf #指定例外用户列表文件,列表中的用户不被锁定在主目录 
    echo "allow_writeable_chroot=YES" >> /etc/vsftpd/vsftpd.conf 
    echo "local_root=/var/ftp/test" >> /etc/vsftpd/vsftpd.conf #设置本地用户登录后所在的目录 
    
    echo "pasv_enable=YES" >> /etc/vsftpd/vsftpd.conf #开启被动模式 
    echo "pasv_address=<FTP服务器公网IP地址>" >> /etc/vsftpd/vsftpd.conf #本教程中为ECS服务器弹性IP 
    echo "pasv_min_port=20" >> /etc/vsftpd/vsftpd.conf #设置被动模式下,建立数据传输可使用的端口范围的最小值 
    echo "pasv_max_port=21" >> /etc/vsftpd/vsftpd.conf #设置被动模式下,建立数据传输可使用的端口范围的最大值

    在/etc/vsftpd目录下创建chroot_list文件,并在文件中写入例外用户名单。

    #使用vim命令编辑chroot_list文件,添加例外用户名单。此名单中的用户不会被锁定在主目录,可以访问其他目录。
    vim /etc/vsftpd/chroot_list

    重启FTP服务

    systemctl restart vsftpd.service
  • 相关阅读:
    Python里的目录方法
    PythonFile对象的属性
    Python read和write方法
    Python打开和关闭文件
    Python打印到屏幕_读取键盘输入
    Python包
    Python globals和locals函数_reload函数
    Python dir( )函数
    【C 语言】一元二次方程
    【C语言】已知三角形三边长,求三角形面积
  • 原文地址:https://www.cnblogs.com/pansin/p/13721068.html
Copyright © 2020-2023  润新知