Linux使用iptables实现内网隔断与外网控制

这篇具有很好参考价值的文章主要介绍了Linux使用iptables实现内网隔断与外网控制。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

笔者在内网部署了一台linux服务器,因是直接连接的路由器,不好搭建单独的内网,同时该服务器有存在重要资料,为保证网络环境的安全,故想切断该服务器与外网的连接,查阅网上资料,加上自己的实践与整理,经过不断的重启和配置及踩坑,最终得以实现,分享与需要的朋友。

1.先添加 22端口允许通行,否则会连不上 ssh,

添加input记录: iptables -A INPUT -p tcp --dport 22 -j ACCEPT
添加output记录:iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT

2.保存规则文件

Ubuntu默认没有iptables配置文件,需通过iptables-save > /etc/network/iptables.up.rules生成

iptables-save > /etc/network/iptables.up.rules

因为linux重启后规则就会失效,后面重启后需要使用 iptables-apply进行重载文件 或者执行 iptables-restore < /etc/network/iptables.up.rules重置规则

3.添加允许的规则

因OUTPUT 拒绝出站,会把被动出站请求响应断掉,所以需要开启允许内网段的被动出站

# 接受192.168的被动出站,否则请求无法返回
iptables -A OUTPUT -s 192.168.0.0/16 -j ACCEPT
# 根据实际情况来配置
iptables -A OUTPUT -s 172.18.0.0/16 -j ACCEPT
4.限制其他外网的访问

执行前确保已经允许ssh入站和出站,否则将会无法连接主机,切记切记

iptables -A OUTPUT -d 0.0.0.0/0 -j DROP

后期若想允许某个规则可出站,则直接配置在该条前面即可

保存规则

iptables-save > /etc/network/iptables.up.rules

最后配置文件如下

*filter
:INPUT ACCEPT [1207:87648]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A OUTPUT -p tcp -m tcp --sport 22 -j ACCEPT
-A OUTPUT -d 192.168.0.0/16 -j ACCEPT
-A OUTPUT -d 172.18.0.0/16 -j ACCEPT
-A OUTPUT -j DROP

注意 要先配置允许的,然后才配置拒绝的,否则允许的规则将不生效

5.配置重启执行加载规则

因为linux重启后,所有规则将会消失,所有需要linux启动的时候执行以一下iptables-restore < /etc/network/iptables.up.rules

可以 /etc/rc.local中增加 该命令,重启的系统会执行一遍,ubuntu系统可能没有rc.local,需要添加,可自行百度添加,笔者这里不做重点赘述。

6.测试效果

ping 内网

# ping 192.168.2.193
PING 192.168.2.193 (192.168.2.193) 56(84) bytes of data.
64 bytes from 192.168.2.193: icmp_seq=1 ttl=128 time=2.62 ms
64 bytes from 192.168.2.193: icmp_seq=2 ttl=128 time=2.48 ms
64 bytes from 192.168.2.193: icmp_seq=3 ttl=128 time=2.36 ms

ping外网

ping 114.114.114.114
PING 114.114.114.114 (114.114.114.114) 56(84) bytes of data.
ping: sendmsg: Operation not permitted
ping: sendmsg: Operation not permitted
ping: sendmsg: Operation not permitted

以上即可完成内网访问外网的控制和隔绝文章来源地址https://www.toymoban.com/news/detail-691957.html

到了这里,关于Linux使用iptables实现内网隔断与外网控制的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Ubuntu Server 20.04 系统安装(六):Linux搭建frp服务,实现内网穿透服务,实现外网到内网的在线访问

    frp 是什么? frp 采用 Golang 编写,支持跨平台,仅需下载对应平台的二进制文件即可执行,没有额外依赖。 frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。

    2024年01月17日
    浏览(41)
  • 内网穿透(mac,window,linux通用)1分钟实现外网访问电脑本地服务器

    我们在做开发时,不想购买服务器,只想搭建我们本地的服务器,我们搭建的本地服务器只能供我们自己电脑的浏览器访问,或者处于同一个wifi下的手机访问,但是我们如果想让别人访问到我们的本地服务器,尤其做微信公号或者小程序开发时,想在微信里访问到我们在电脑

    2023年04月18日
    浏览(35)
  • Ubuntu Server 20.04 系统安装(六):Linux搭建frp服务,实现内网穿透服务,实现外网到内网的在线访问 Ubuntu 设置frp开机自启动

    frp 是什么? frp 采用 Golang 编写,支持跨平台,仅需下载对应平台的二进制文件即可执行,没有额外依赖。 frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。

    2024年02月13日
    浏览(35)
  • 外网跨网远程控制内网计算机3种方案

         远程控制,通俗来讲就是在自己个人电脑直接远程访问另台主机电脑桌面操作。      如何远程控制电脑?远程控制别人计算机的方案通常有两种,一种是开启电脑系统自带的远程桌面功能,如果涉及跨网内、外网互通可以同时用快解析内网映射外网;另一种就是借助

    2024年02月13日
    浏览(65)
  • zerotier虚拟网络配置,局域网与外网如同局域网一样访问。

    WireGuard相比于传统VPN的核心优势是没有VPN网关,所有节点之间都可以点对点(P2P)连接,效率高,速度快,成本低。但WireGuard目前最大的痛点就是上层应用的功能不够健全,WireGuard本身只是一个内核级别的模块,它只是一个数据平面,Tailscale就是基于Wireguard的一个联网工具,

    2024年02月05日
    浏览(41)
  • 思科ASA防火墙:内网telnet远程控制防火墙 && 外网ssh远程控制防火墙

    现在他们相互都可以通信 全局通信 1.内网telnet连接ASA 进入asa防火墙全局模式 telnet 192.168.1.1 255.255.255.0 in telnet + 指定远程ip + 子网掩码 +接口名称in=e0/1 如果想让全部都可以连接 telnet 0.0.0.0 0.0.0.0 in passwd 123  设置连接密码 pass + 自定义密码     2.外网ssh远程连接asa防火墙 进入

    2023年04月11日
    浏览(38)
  • 外网SSH远程连接linux服务器「cpolar内网穿透」

    转载自内网穿透工具的文章:无公网IP,SSH远程连接Linux CentOS服务器【内网穿透】 本次教程我们来实现如何在外公网环境下,SSH远程连接家里/公司的Linux CentOS服务器,无需公网IP,也不需要设置路由器。 公网SSH远程Linux CentOS服务器【内网穿透】 cpolar官网:https://www.cpolar.com

    2023年04月23日
    浏览(52)
  • Linux内网服务器通过代理访问外网服务器

    目录 一、环境介绍 二、安装squid 三、配置代理 扩展一、JAVA应用通过代理访问外网 扩展二、通过nginx代理实现yum跳转 扩展三、代理harbor镜像方式访问 192.168.7.131可以通外网 192.168.7.129不通外网 需要通过代理的方式实现192.168.7.129可以访问外网  1、在192.168.7.131主机(可以访问外

    2024年02月08日
    浏览(44)
  • Nginx外网访问内网如何实现

            项目要求:将甲方内网的项目能够对外访问,甲方提供一个中间过渡服务器,中间过渡服务器与外网互通,且中间服务器可以访问内网;         外网客户端-中间过渡服务器开放端口:80         中间过渡服务器-内网服务器开放端口:80、9095         系统架构:

    2024年02月07日
    浏览(32)
  • 电脑如何设置外网内网一起使用

    如果你的电脑支持连接无线网,就可以设置内网外网一起使用。一般情况下,连接无线网还是网线都是系统自动链接的,但有时候开发中需要内网外网一块使用,不用手动切换网络。 首先确保我们的电脑有 双网卡 ,可以两个都是有线网卡,也可以一个有线网卡(连网线)一个

    2024年02月11日
    浏览(24)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包