zoukankan      html  css  js  c++  java
  • iptables配置vsftp访问

    一、FTP服务简介
       FTP服务器有两种工作模式:主动模式和被动模式。这两种方式的特点如下:
     (1)主动模式下:
      tcp, 20(20号端口用于数据传输),21(21号端口用于控制连接)
     (2)被动模式:
      tcp, 21(用于控制连接) >1023(端口号大于1023的随机端口用于数据传输)
      所以如果FTP工作在被动模式下,无法指定数据传输的端口,于是引入了RELATED状态。RELATED主要用于  追踪与其相关的端口。注意:ftp工作在主动模式或者被动模式与客户端的请求有关。
    二、开放被动模式下的FTP服务。
     具体步骤如下:
      1、先开放ssh:
       iptables -A INPUT -i lo -j ACCEPT
       iptables -A OUTPUT -i lo -j ACCEPT(先开放本地连接)
       
       iptables -A INPUT -m state --state ESTABLISHED -j ACCEPT
       iptables -A OUTPUT -m state --state ESTABLISHED -j ACCEPT(放行所有的ESTABLISHED连接)
       
       iptables -A INPUT -d 172.16.100.1 -p tcp --dport 22 -m state --state NEW -m connlimit ! --connlimit-above 3 -j ACCEPT  (放行ssh连接,并将其最大连接数设为3)
       
       iptables -P INPUT DROP
       iptables -P OUTPUT DROP (将默认策略设置为禁止)
          
        iptables -L -n -v (查看iptables详细信息)
      2、开放ftp服务:
       注意要开放被动模式下的服务需要用到,ftp的追踪模块:
       #cat /etc/sysconfig/iptables-config(查看iptables需要的模块,主要是ip_nat_ftp模块,属于内核模块)
       #lsmod | grep ftp (查看是否加载ftp模块)
       #modprobe ip_nat_ftp(加载ftp模块)
       #lsmod | grep ftp (查看模块是否被加载)
       这样RELATED就可以被使用了:
       iptables -A INPUT -d 172.16.100.1 -p tcp --dport 21 -m state --state NEW -j ACCEPT(允许21号端口进入,即:开放控制连接)
       iptables -A INPUT -m state --state RELATED -j ACCEPT
       iptables -A OUTPUT -m state --state RELATED -j ACCEPT
  • 相关阅读:
    git 使用 VisualStudio 比较分支更改
    Java实现 LeetCode 264 丑数 II(二)
    PHP error_log() 函数
    PHP error_get_last() 函数
    PHP debug_print_backtrace() 函数
    PHP debug_backtrace() 函数
    PHP scandir() 函数
    复制相关参数学习笔记--master上的参数
    OI生涯回忆录 2018.11.12~2019.4.15
    C# 金额转中文大写
  • 原文地址:https://www.cnblogs.com/bethal/p/5237720.html
Copyright © 2011-2022 走看看