查看: 2883|回复: 0
收起左侧

[技巧] ubuntu、deepin使用iptables配置全局IP白名单(可设置区间范围)20240721New

[复制链接]
nmyh
发表于 2024-7-19 18:35:10 | 显示全部楼层 |阅读模式
本帖最后由 nmyh 于 2024-7-21 18:52 编辑

已测试的系统:ubuntu 24.04、deepin 20.9


Linux设置IPv4白名单需要注意的是:loopback本机环回地址(127.0.0.0-127.255.255.255)也需要加白,不然会ping不通加白网站IP、浏览器也不能访问加白网站。



配置步骤

1.右键“在终端打开”,
  [ubuntu忽略此步骤]deepin20.9需先运行下边一行命令并回车(用于终端提权):
  1. sudo echo 123
复制代码


2.安装“iptables-persistent”就可以实现重启电脑后IP规则也有效,复制下边两行内容,在终端粘贴并回车(中间连续两个IPv4、IPv6提示都选择“是”并回车):
  1. sudo apt update
  2. sudo apt install iptables-persistent -y
复制代码


3.首先,复制下边两行内容,在终端粘贴并回车(屏蔽所有IPv6区间):
  1. sudo ip6tables -A INPUT -m iprange --dst-range ::-ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff -j DROP
  2. sudo ip6tables -A OUTPUT -m iprange --dst-range ::-ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff -j DROP
复制代码


4.复制下边9行内容,在终端粘贴并回车【仅允许局域网联网】:
  1. sudo iptables -F
  2. sudo iptables -A INPUT -m iprange --dst-range 127.0.0.0-127.255.255.255 -j ACCEPT
  3. sudo iptables -A OUTPUT -m iprange --dst-range 127.0.0.0-127.255.255.255 -j ACCEPT
  4. sudo iptables -A INPUT -m iprange --dst-range 10.0.0.0-10.0.255.255 -j ACCEPT
  5. sudo iptables -A OUTPUT -m iprange --dst-range 10.0.0.0-10.0.255.255 -j ACCEPT
  6. sudo iptables -A INPUT -m iprange --dst-range 192.168.0.0-192.168.255.255 -j ACCEPT
  7. sudo iptables -A OUTPUT -m iprange --dst-range 192.168.0.0-192.168.255.255 -j ACCEPT
  8. sudo iptables -P INPUT DROP
  9. sudo iptables -P OUTPUT DROP
复制代码


5.在仅允许局域网联网规则基础上可以自己添加更多允许联网的IPv4地址规则。

  追加【允许“pkgs.org”网站首页IP地址】规则,复制下边两行内容,在终端粘贴并回车:
  1. sudo iptables -A INPUT -m iprange --dst-range 138.201.217.61 -j ACCEPT
  2. sudo iptables -A OUTPUT -m iprange --dst-range 138.201.217.61 -j ACCEPT
复制代码


  可在“设置(控制中心)→网络”中查看本机使用的DNS详情。
  如果DNS是“192.168.x.x”或“10.0.x.x”的话就不必额外加白此DNS地址了,因为之前的“仅允许局域网”规则就已经将这一段局域网地址加白了。
  如果DNS是其它的外网IP地址(本例是重庆电信的两个DNS),就需要复制下边4行内容,在终端粘贴并回车:
  1. sudo iptables -A INPUT -m iprange --dst-range 61.128.192.68 -j ACCEPT
  2. sudo iptables -A OUTPUT -m iprange --dst-range 61.128.192.68 -j ACCEPT
  3. sudo iptables -A INPUT -m iprange --dst-range 61.128.128.68 -j ACCEPT
  4. sudo iptables -A OUTPUT -m iprange --dst-range 61.128.128.68 -j ACCEPT
复制代码


6.IP规则设置好之后,在终端输入运行“sudo su”提权为root#,然后粘贴下边两行内容并回车【保存规则到步骤2程序的默认配置文件位置下】(重新启动电脑后配置的IP白名单规则也能生效了):
  1. iptables-save > /etc/iptables/rules.v4
  2. ip6tables-save > /etc/iptables/rules.v6
复制代码


  root#提权后终端输入运行“exit”恢复之前的用户权限,当然也可以直接关闭终端窗口。

  以后想加白更多的IPv4地址,[deepin20.9要先操作步骤1],只需在终端操作步骤5、6就可以了。



------====== 以下是其它终端命令 ======------


【删除某一组IP规则(本例为删除“pkgs.org”网站IP白名单规则,步骤5把参数“-A”改为“-D”)】终端命令(操作完此还需要操作步骤6):
  1. sudo iptables -D INPUT -m iprange --dst-range 138.201.217.61 -j ACCEPT
  2. sudo iptables -D OUTPUT -m iprange --dst-range 138.201.217.61 -j ACCEPT
复制代码



【屏蔽所有IPv4网络】终端命令(操作完此还需要操作步骤6):
  1. sudo iptables -F
  2. sudo iptables -P INPUT DROP
  3. sudo iptables -P OUTPUT DROP
复制代码



【删除所有规则并退出IP白名单模式】终端命令(操作完此还需要操作步骤6):
  1. sudo iptables -F
  2. sudo ip6tables -F
  3. sudo iptables -P INPUT ACCEPT
  4. sudo iptables -P OUTPUT ACCEPT
复制代码



【显示所有规则】终端命令:
  1. sudo iptables -L
  2. echo -e "\n======\n"
  3. sudo ip6tables -L
复制代码



如果不想安装使用步骤2的“iptables-persistent”程序,可以使用如下两类命令操作(但每次开机都要恢复ip白名单规则才能使IP规则生效):


【保存ip白名单规则】主文件夹某具体路径下的终端命令:
  1. sudo iptables-save > ipguize4.conf
  2. sudo ip6tables-save > ipguize6.conf
复制代码



【恢复ip白名单规则】主文件夹某具体路径下的终端命令:
  1. sudo iptables-restore < ipguize4.conf
  2. sudo ip6tables-restore < ipguize6.conf
复制代码




ubuntu.png


deepin.png



参考:
https://unix.stackexchange.com/q ... ll-other-connection
https://www.cyberciti.biz/tips/l ... esses-or-ports.html
https://www.cnblogs.com/guangdelw/p/17440696.html







本教程附件下载(含一个txt文档):
ubuntu、deepin使用iptables配置全局IP白名单(可设置区间范围)20240721New.zip (282.9 KB, 下载次数: 0)
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2024-12-27 03:39 , Processed in 0.133779 second(s), 19 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表