zoukankan      html  css  js  c++  java
  • Linux配置本地端口映射

    前言:在linux服务器上,1024以下的端口是禁止非root用户使用的。所以如果想要使用80端口访问tomcat,则修改conf/server.xml的端口为80,那么只能使用root用户;但是为了安全起见,一般都是使用其他用户启动tomcat,可以采用端口映射的方式,比如映射80到8080端口。

    一、iptables命令

    -t<表>:指定要操纵的表;
    -A:向规则链中追加条目;
    -D:从规则链中删除条目;
    -C: 检查链中是否存在规则
    -I:向规则链中插入条目;
    -R:替换规则链中的条目;
    -L:显示规则链中已有的条目;
    -F:清除规则链中已有的条目;
    -Z:清空规则链中的数据包计算器和字节计数器;
    -N:创建新的用户自定义规则链;
    -P:定义规则链中的默认目标;
    -h:显示帮助信息;
    -p:指定要匹配的数据包协议类型,如-p tcp;
    -s:指定要匹配的数据包源ip地址;
    -j<目标>:指定要跳转的目标;
    -i<网络接口>:指定数据包进入本机的网络接口;
    -o<网络接口>:指定数据包要离开本机所使用的网络接口。
    iptables命令选项输入顺序:

    iptables -t 表名 <-A/I/D/R> 规则链名 [规则号] <-i/o 网卡名> -p 协议名 <-s 源IP/源子网> --sport 源端口 <-d 目标IP/目标子网> --dport 目标端口 -j 动作
    表名包括:

    raw:高级功能,如:网址过滤。
    mangle:数据包修改(QOS),用于实现服务质量。
    nat:地址转换,用于网关路由器。
    filter:包过滤,用于防火墙规则。
    规则链名包括:

    INPUT链:处理输入数据包。
    OUTPUT链:处理输出数据包。
    PORWARD链:处理转发数据包。
    PREROUTING链:在进行路由判断之前所要进行的规则(DNAT/REDIRECT)。
    POSTOUTING链:在进行路由判断之后所要进行的规则(SNAT/MASQUERADE)。
    动作包括:

    accept:接收数据包。
    DROP:丢弃数据包。
    REDIRECT:重定向、映射、透明代理。
    SNAT:源地址转换。
    DNAT:目标地址转换。
    MASQUERADE:IP伪装(NAT),用于ADSL。
    LOG:日志记录。
    以上引用:http://man.linuxde.net/iptables

    二、配置端口80转发到8080

    iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080
    操作表名nat,添加规则名PREROUTING,协议名tcp,转发端口80,动作REDIRECT,到目标端口8080

    此时,访问http://ip 和http://ip:8080是一样的。

    禁用8080端口:

    iptables -t manage -A PREROUTING -p tcp --dport 8080 -j DROP
    保存配置规则,

    2.1 centos:

    service iptables save
    也可以编辑/etc/sysconfig/iptables

    2.2 ubuntu:

    sudo iptables-save > /etc/network/iptables.up.rules
    编辑/etc/network/interfaces

    加入 pre-up iptables-restore < /etc/network/iptables.up.rules

    保存退出。

    三、删除映射

    1、直接删除

    iptables -t nat -D PREROUTING -p TCP --dport 80 -j REDIRECT --to-port 8080
    2、进入/etc/sysconfig/iptables删除

    3、通过line number删除

    iptables -L -n -v --line-numbers
    iptables -nvL -t nat 查看地址转发
    列出所有规则

    如果要删除input链里的第一个规则,则使用如下:

    iptables -D INPUT 1
    记得保存规则

    转自 https://blog.csdn.net/nainaiqiuwencun/article/details/80697388

  • 相关阅读:
    python学习笔记(locust性能测试模块)
    python学习笔记(日志系统实现)
    python学习笔记(自定义库文件路径)
    python学习笔记(字典乱码)
    Django框架数据库模型
    Django框架学习笔记(windows环境下安装)
    zabbix自动化运维学习笔记(服务器配置)
    zabbix自动化运维学习笔记(服务器安装)
    tomcat相关漏洞复现
    sqli-labs学习笔记(基础篇)
  • 原文地址:https://www.cnblogs.com/hanfe1/p/15048904.html
Copyright © 2011-2022 走看看