下面实现3个规则:

①对所有的地址开放本机的tcp(80、22、10~21)端口的访问。

②运行对所有地址开放本机的基于ICMP协议的数据包访问。

③其他未允许的端口则禁止访问。

#查看本机开放的端口
netstat -luntp
[root@bogon ~]# netstat -luntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd
tcp        0      0 0.0.0.0:6000            0.0.0.0:*               LISTEN      9215/X
tcp        0      0 192.168.122.1:53        0.0.0.0:*               LISTEN      9106/dnsmasq
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      8591/sshd
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      8587/cupsd
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      9024/master
tcp        0      0 127.0.0.1:6010          0.0.0.0:*               LISTEN      20030/sshd: root@pt
tcp        0      0 127.0.0.1:6011          0.0.0.0:*               LISTEN      20313/sshd: root@pt
tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd
tcp6       0      0 :::6000                 :::*                    LISTEN      9215/X
tcp6       0      0 :::22                   :::*                    LISTEN      8591/sshd
tcp6       0      0 ::1:631                 :::*                    LISTEN      8587/cupsd
tcp6       0      0 ::1:25                  :::*                    LISTEN      9024/master
tcp6       0      0 ::1:6010                :::*                    LISTEN      20030/sshd: root@pt
tcp6       0      0 ::1:6011                :::*                    LISTEN      20313/sshd: root@pt
udp        0      0 0.0.0.0:50213           0.0.0.0:*                           8206/avahi-daemon:
udp        0      0 0.0.0.0:5353            0.0.0.0:*                           8206/avahi-daemon:
udp        0      0 192.168.122.1:53        0.0.0.0:*                           9106/dnsmasq
udp        0      0 0.0.0.0:67              0.0.0.0:*                           9106/dnsmasq
udp        0      0 0.0.0.0:68              0.0.0.0:*                           20242/dhclient
udp        0      0 0.0.0.0:111             0.0.0.0:*                           1/systemd
udp        0      0 127.0.0.1:323           0.0.0.0:*                           8237/chronyd
udp        0      0 0.0.0.0:693             0.0.0.0:*                           8158/rpcbind
udp6       0      0 :::111                  :::*                                1/systemd
udp6       0      0 ::1:323                 :::*                                8237/chronyd
udp6       0      0 :::693                  :::*                                8158/rpcbind
[root@bogon ~]#

查看iptables版本

iptables -v
[root@bogon ~]# iptables -v
iptables v1.4.21: no command specified
Try `iptables -h' or 'iptables --help' for more information.
[root@bogon ~]# 

查看iptables配置的链,-n是让主机名等不显示

iptable -nL
[root@bogon ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
[root@bogon ~]# 

设置80端口可以访问,设置22端口可以访问,不然ssh就不能登录了,设置10~21都允许访问。

iptables -I INPUT -p tcp --dport 80 -j ACCEPT
iptables -I INPUT -p tcp --dport 22 -j ACCEPT
iptables -I INPUT -p tcp --dport 10:21 -j ACCEPT

此时配置的策略有:

[root@bogon ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpts:10:21
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:22
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:80Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

再支持ICMP协议,然后-A,在最后添加一条拒绝所有的规则。

iptables -I INPUT -p icmp -j ACCEPT
iptables -A INPUT -j REJECT

这里就实现了上面的3个规则,对应的策略是这样的。

[root@bogon ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpts:10:21
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:22
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:80
REJECT     all  --  0.0.0.0/0            0.0.0.0/0            reject-with icmp-port-unreachableChain FORWARD (policy ACCEPT)
target     prot opt source               destination         Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Linux笔记-iptables开放指定端口,开放ICMP协议,其他端口禁止访问相关推荐

  1. Linux笔记-iptables模拟公司环境配置

    需求有3点: ①员工在公司内部(10.10.155.0/24,10.10.188.0/24)能访问服务器上的任何服务. ②出差员工在上海,通过VPN连接到公司,外网(员工)拨号到VPN服务器,就可以使 ...

  2. Linux的iptables在指定的防火墙规则序号前添加防火墙规则

    一.问题背景 背景:公司安全部门检测到公司的hadoop集群中存在Yarn的未授权漏洞,即8080.8088端口外网可以访问的问题,于是,产生了给服务器增加防火墙规则的需求,具体如下: 二.问题处理 ...

  3. Linux笔记-iptables规则原理和组成

    Netfilter Netfilter:是Linux操作系统内核层内部的一个数据包处理模块. Hook point:数据包在Netfilter中的挂载点(PRE_ROUTING.INPUT.OUTPU ...

  4. Linux常用端口查询命令及常见端口和端口分类

    常见端口 应用或协议 默认端口号 备注 http 80 https 443 SOCKS代理协议服务器 1080 Telnet(远程登录)协议 23 TFTP(Trivial File Transfer ...

  5. 利用iptables来配置linux禁止所有端口登陆和开放指定端口

    原文地址:http://www.2cto.com/Article/201109/103089.html 利用iptables来配置linux禁止所有端口登陆和开放指定端口 1.关闭所有的 INPUT ...

  6. linux出站入站端口维护,linux下如何用iptables开放指定端口_网站服务器运行维护,linux,iptables,端口...

    win10系统老是弹出垃圾广告怎么办_网站服务器运行维护 win10系统老是弹出垃圾广告的解决方法是:1.打开控制面板,进入Internet选项:2.在打开的Internet属性窗口中,切换到[隐私] ...

  7. linux禁止软件连接指定网站,利用iptables来配置linux禁止所有端口登陆和开放指定端口...

    1.关闭所有的 INPUT FORWARD OUTPUT 只对某些端口开放. 下面是命令实现: iptables -P INPUT DROP iptables -P FORWARD DROP ipta ...

  8. linux防火墙禁止所以端口,利用iptables来配置linux禁止所有端口登陆和开放指定端口...

    1.关闭所有的 INPUT FORWARD OUTPUT 只对某些端口开放. 下面是命令实现: iptables -P INPUT DROP iptables -P FORWARD DROP ipta ...

  9. 【Linux】开放指定端口设置

    [Linux]开放指定端口设置 这里以开放tomcat的8080端口为例 1.开放Linux的8080端口 vi /etc/sysconfig/iptables 进入编辑页面,在指定位置新增以下配置 ...

最新文章

  1. PCA的数学原理(通俗易懂)
  2. TCP服务器和客户端的链接例子(侧重点在注意关闭套接子,减少套接子的描述子)
  3. ubuntu安装ibus输入法
  4. mysql 性能剖析-profiles
  5. Qt 实现钢笔画线效果详细原理
  6. PHP的pathinfo()
  7. 搜索引擎索引之如何建立索引
  8. 局部变量和参数传递的问题
  9. NOI入门级:基础算法 贪心法
  10. 面试官系统精讲Java源码及大厂真题 - 34 只求问倒:连环相扣系列锁面试题
  11. qcow2磁盘格式分析
  12. 从“判断力”到“创造力”:GAN 在图像生成上的应用
  13. android 代码 华为 os,Android | 带你零代码实现安卓扫码功能
  14. linux c多线程进度条,Ubuntu 13.04,g++4.7,Pthread实现多线程模拟实现下载进度条
  15. Java VM: Java HotSpot(TM) 64-Bit Server VM (25.261-b12 mixed mode windows-amd64 compressed oops)
  16. JavaScript零基础入门 1:JavaScript表格简介
  17. 最大值减最小值等于区间长度_一文帮你弄清楚电压和电流的有效值、瞬时值、平均值、最大值及其关系...
  18. 笔试题目——研发工程师笔试题
  19. 车牌号正则表达式(含新能源车牌)
  20. 普通带条件查询接口报错 Handler dispatch failed; nested exception is java.lang.NoClassDefFoundError:

热门文章

  1. shell之case和function
  2. 飞鸽传书绿色版 为什么比较多人用?
  3. 就掌握了成功的C++,那么信息从何而来
  4. 转载Silverlight AutoCompleteBox 增强key/value 拼音头检索
  5. 当然我这里讲的都是与数据库有关的字符串拼凑
  6. 用VC写Assembly代码(3)
  7. 人工智能是未来发展趋势吗 用Python入门怎么样 赶紧看看
  8. 世界上最好用的浏览器Chrome 10周岁生日,迎来一大波更新!
  9. 经典面试题(21):以下代码将输出的结果是什么?
  10. 2019年大数据发展趋势预测