• linux下开启ftp的21号port


    1、先执行vsftpd服务:

    #service vsftpd start

    2、通过iptables开放21号port

    (1) 先查看iptables设置:

    #iptables -nL

    Chain INPUT (policy ACCEPT)
    target     prot opt source               destination        
    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
    ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0          
    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0          
    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22
    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited  //假设不满足以上规则,则统统reject;

    Chain FORWARD (policy ACCEPT)
    target     prot opt source               destination        
    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited

    Chain OUTPUT (policy ACCEPT)
    target     prot opt source               destination    

    (2) 将21号port插入到INPUT的ACCEPT中

    #iptables -I INPUT 5 -p tcp --dport 21 -j ACCEPT  ## rulenum为5 。在INPUT中REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited之前

    (3)插入到INPUT的ACCEPT后查看

    #iptables -nL --line-numbers

    Chain INPUT (policy ACCEPT)
    num  target     prot opt source               destination        
    1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
    2    ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0          
    3    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0          
    4    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22
    5    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:21
    6    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited

    Chain FORWARD (policy ACCEPT)
    num  target     prot opt source               destination        
    1    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited

    Chain OUTPUT (policy ACCEPT)
    num  target     prot opt source               destination

    3、 在client上telnet ip 21。验证

     

    关键点:一定要将插入的规则放在REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited  之前,否则不会起作用!

     

    4、搭建FTP服务

    载入ip_conntrack_ftp。完毕搭建

    #modprobe ip_conntrack_ftp

    注:在iptables的INPUT中"1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED"能够实现pasv模式的ftp连接

    引用:

    *******************************************************************************************************************

    FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动式。


        Port模式:ftp server:tcp 21 <------client:dynamic ftp server:tcp 20 ------>client:dynamic
        Pasv模式:ftp server:tcp 21 <----client:dynamic ftp server:tcp dynamic <----client:dynamic

        PORT(主动)方式的连接过程是:client向server的FTPport(默认是21)发送连接请求,server接受连接,建立一条命令链路。当须要传送数据时,客户 端在命令链路上用PORT命令告诉server:“我打开了XXXXport。你过来连接我”。

    于是server从20port向client的XXXXport发送连接请求,建立一条 数据链路来传送数据。


        PASV(被动)方式的连接过程是:client向server的FTPport(默认是21)发送连接请求,server接受连接。建立一条命令链路。当须要传送数据时,服务 器在命令链路上用PASV命令告诉client:“我打开了XXXXport。你过来连接我”。于是client向server的XXXXport发送连接请求。建立一条数据链路来 传送数据。
    *******************************************************************************************************************

  • 相关阅读:
    Django框架基础之分页
    Django框架基础之session
    Django框架基础之COOKIE
    Django框架基础(二)
    linux挂载/卸载windows共享文件夹
    std::string 字符串操作(分割,去空格)
    Ubuntu sudo不用输入密码的方法
    Qt学习
    ubuntu上利用 checkinstall/dpkg 制作/安装/卸载deb或rpm包
    wxWidgets编译安装
  • 原文地址:https://www.cnblogs.com/liguangsunls/p/6785047.html
Copyright © 2020-2023  润新知