Linux服务器利用防火墙iptables策略进行端口跳转的方法

 更新时间:2019年10月12日 10:46:51   作者:小伟996  
这篇文章主要介绍了Linux服务器利用防火墙iptables策略进行端口跳转的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

两台不同服务器转发

打开端口转发的功能

首先开启IP转发功能,默认是关闭的。

临时修改:

[root@localhost ~]# echo 1 > /proc/sys/net/ipv4/ip_forward

修改过后就马上生效,但如果系统重启后则又恢复为默认值0。

永久修改:

vi /etc/sysctl.conf

# 找到下面的值并将0改成1

net.ipv4.ip_forward = 1

# sysctl -p(使之立即生效)

默认值0是禁止ip转发,修改为1即开启ip转发功能。

配置端口转发

假设用户访问115.29.112.119:8804时我想让它转发到42.99.16.84:8890

首先要在服务器上开放8804端口

修改配置文件:vim /etc/sysconfig/iptables

-A INPUT -p tcp -m state --state NEW -m tcp --dport 8804 -j ACCEPT

或者命令行执行并保存

[root@localhost sysconfig]# iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 8804 -j ACCEPT
[root@localhost sysconfig]# service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[ 确定 ]

端口转发

方法一:命令行执行

需要保存,不然只是即时生效,已重启防火墙规则就会被清空

iptables -t nat -A PREROUTING -d 115.29.112.119 -p tcp --dport 8804 -j DNAT --to-destination 42.99.16.84:8890

iptables -t nat -A POSTROUTING -d 42.99.16.84 -p tcp --dport 8890 -j SNAT --to-source 115.29.112.119

不需要更改配置文件就保存的命令:service iptables save

方法二:直接保存到配置文件

修改/etc/sysconfig/iptables配置文件,加入规则

-A PREROUTING -d 115.29.112.119 -p tcp --dport 8804 -j DNAT --to-destination 42.99.16.84:8890

-A POSTROUTING -d 42.99.16.84 -p tcp --dport 8890 -j SNAT --to-source 115.29.112.119

配置完重启防火墙:

1.systemctl restart iptables(centos7);2.service iptables restart(centos7以前版本)

查看配置好的策略

iptables -t nat --list --line-numbers

本机端口转发

如果只需要在本机间不同的端口转发就比较容易了,比如 访问 http://ip:8888 我想返回 http://ip:6666 的内容,配置如下:

[root@localhost ~]# iptables -t nat -A PREROUTING -p tcp --dport 8888 -j REDIRECT --to-ports 6666
[root@localhost ~]# service iptables save
[root@localhost ~]# service iptables restart

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 无法启动Apache的问题解决方法

    无法启动Apache的问题解决方法

    这篇文章主要介绍了无法启动Apache的问题解决方法,需要的朋友可以参考下
    2014-05-05
  • Linux CentOS 6.5 卸载、tar安装MySQL的教程

    Linux CentOS 6.5 卸载、tar安装MySQL的教程

    这篇文章主要介绍了Linux CentOS 6.5 卸载、tar安装MySQL的教程,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友参考下吧
    2019-11-11
  • linux下使用Apache搭建文件服务器的步骤

    linux下使用Apache搭建文件服务器的步骤

    这篇文章主要介绍了linux下使用Apache搭建文件服务器的步骤,帮助大家更好的搭建服务器,感兴趣的朋友可以了解下
    2020-12-12
  • 浅谈Linux 网络 I/O 模型简介(图文)

    浅谈Linux 网络 I/O 模型简介(图文)

    这篇文章主要介绍了浅谈Linux 网络 I/O 模型简介(图文),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-12-12
  • Apache中伪静态Rewrite的使用方法和URL重写规则表达式讲解

    Apache中伪静态Rewrite的使用方法和URL重写规则表达式讲解

    apache中的mod_rewrite模块提供了一个基于正则表达式分析器的重写引擎来实时重写URL请求,主要的功能就是实现URL的跳转,它的正则表达式是基于Perl语言。可基于服务器级的(httpd.conf)和目录级的(.htaccess)两种方式,允许通过它来改变Apache Web服务器的配置。
    2022-11-11
  • Ubuntu 20.04双拼输入法的安装步骤

    Ubuntu 20.04双拼输入法的安装步骤

    这篇文章主要介绍了Ubuntu 20.04双拼输入法的安装步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-06-06
  • Linux之如何设置CPU Performance模式

    Linux之如何设置CPU Performance模式

    这篇文章主要介绍了Linux之如何设置CPU Performance模式问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • Linux获取10个你最常用的终端命令列表

    Linux获取10个你最常用的终端命令列表

    今天小编就为大家分享一篇关于Linux获取10个你最常用的终端命令列表,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-09-09
  • Lamp环境下设置绑定apache域名的方法分析

    Lamp环境下设置绑定apache域名的方法分析

    这篇文章主要介绍了Lamp环境下设置绑定apache域名的方法,简单分析了Lamp环境下的Apache域名绑定设置相关属性、功能与操作技巧,需要的朋友可以参考下
    2018-03-03
  • Linux 常用命令之Linux more命令使用方法

    Linux 常用命令之Linux more命令使用方法

    more 是我们最常用的工具之一,最常用的就是显示输出的内容,然后根据窗口的大小进行分页显示,然后还能提示文件的百分比。本文重点给大家介绍Linux more命令使用方法,感兴趣的朋友一起看看吧
    2018-10-10

最新评论