• Linux查看防火墙状态及开启关闭命令-转载记录


    概述

    基于centos7

    CentOS7 的防火墙配置跟以前版本有很大区别,CentOS7这个版本的防火墙默认使用的是firewall,与之前的版本使用iptables不一样

    CentOS7

    使用firewalld开启关闭防火墙与端口

    1. 关闭防火墙:
    systemctl stop firewalld.service
    
    • 1
    1. 开启防火墙:
    systemctl start firewalld.service
    
    • 1
    1. 遇到无法开启
    先用:systemctl unmask firewalld.service 
    然后:systemctl start firewalld.service
    
    • 1
    • 2
    1. 开启开机启动:
    systemctl enable firewalld.service
    
    • 1
    1. 关闭开机启动:
    systemctl disable firewalld.service
    
    • 1
    1. 查看防火墙状态:
    systemctl status firewalld 
    # 或
    firewall-cmd --state
    
    • 1
    • 2
    • 3
    1. 开启端口
    #(--permanent永久生效,没有此参数重启后失效)
    #注:可以是一个端口范围,如1000-2000/tcp
    firewall-cmd --zone=public --add-port=80/tcp --permanent    
    
    • 1
    • 2
    • 3
    1. 重启防火墙(重新载入,更新配置)
    firewall-cmd --reload
    
    • 1
    1. 查询某个端口是否开放
    firewall-cmd --query-port=80/tcp
    
    • 1
    1. 移除端口
    firewall-cmd --zone=public --remove-port=80/tcp --permanent
    # 
    firewall-cmd --permanent --remove-port=123/tcp
    
    • 1
    • 2
    • 3
    1. 查询已经开放的端口列表
    firewall-cmd --list-port
    
    • 1
    1. 命令含义:
    --zone #作用域
    
    --add-port=80/tcp #添加端口,格式为:端口/通讯协议
    
    --remove-port=80/tcp #移除端口,格式为:端口/通讯协议
    
    --permanent #永久生效,没有此参数重启后失效
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    systemctl
    systemctl是CentOS7的服务管理工具中主要的工具,它融合之前service和chkconfig的功能于一体。
    
    启动一个服务:systemctl start firewalld.service
    关闭一个服务:systemctl stop firewalld.service
    重启一个服务:systemctl restart firewalld.service
    显示一个服务的状态:systemctl status firewalld.service
    在开机时启用一个服务:systemctl enable firewalld.service
    在开机时禁用一个服务:systemctl disable firewalld.service
    查看服务是否开机启动:systemctl is-enabled firewalld.service
    查看已启动的服务列表:systemctl list-unit-files|grep enabled
    查看启动失败的服务列表:systemctl --failed
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    配置firewalld-cmd
    查看版本: firewall-cmd --version
    
    查看帮助: firewall-cmd --help
    
    显示状态: firewall-cmd --state
    
    查看所有打开的端口: firewall-cmd --zone=public --list-ports
    
    更新防火墙规则: firewall-cmd --reload
    
    查看区域信息:  firewall-cmd --get-active-zones
    
    查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0
    
    拒绝所有包:firewall-cmd --panic-on
    
    取消拒绝状态: firewall-cmd --panic-off
    
    查看是否拒绝: firewall-cmd --query-panic
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    iptables
    yum install iptables-services 
    
    • 1

    进入下面目录进行修改:
    /etc/sysconfig/iptables

    CentOS6

    存在以下两种方式:
    一、service方式

    1. 查看防火墙状态:
    [root@centos6 ~]# service iptables status
    iptables:未运行防火墙。
    
    • 1
    • 2
    1. 开启防火墙:
    [root@centos6 ~]# service iptables start
    
    • 1
    1. 关闭防火墙:
    [root@centos6 ~]# service iptables stop
    
    • 1

    会重定向到“/bin/systemctl stop iptables.service”

    Ubuntu

    Ubuntu安装UFW防火墙

    sudo apt-get install ufw 
    
    • 1

    一般用户,只需如下设置:

    sudo apt-get install ufw
    sudo ufw enable
    sudo ufw default deny
    
    • 1
    • 2
    • 3

    以上三条命令已经足够安全了,如果你需要开放某些服务,再使用sudo ufw allow开启。

    开启防火墙
    sudo ufw enable 
    sudo ufw default deny 
    
    • 1
    • 2

    运行以上两条命令后,开启了防火墙,并在系统启动时自动开启。
    关闭所有外部对本机的访问,但本机访问外部正常。

    开启/禁用
    sudo ufw allow|deny [service] 
    
    • 1
    打开或关闭某个端口,例如:
    sudo ufw allow smtp       #允许所有的外部IP访问本机的25/tcp (smtp)端口 
    sudo ufw allow 22/tcp      #允许所有的外部IP访问本机的22/tcp (ssh)端口 
    sudo ufw allow 53          #允许外部访问53端口(tcp/udp) 
    sudo ufw allow from 192.168.1.100 #允许此IP访问所有的本机端口 
    sudo ufw allow proto udp 192.168.0.1 port 53 to 192.168.0.2 port 53 
    sudo ufw deny smtp         #禁止外部访问smtp服务 
    sudo ufw delete allow smtp #删除上面建立的某条规则 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    查看防火墙状态
    sudo ufw status 
    
    #补充:开启/关闭防火墙 (默认设置是’disable’)
    ufw enable|disable
    
    #转换日志状态
    ufw logging on|off
    
    #设置默认策略 (比如 “mostly open” vs “mostly closed”)
    ufw default allow|deny
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    #许可或者屏蔽某些入埠的包 (可以在“status” 中查看到服务列表[见后文])
    #可以用“协议:端口”的方式指定一个存在于/etc/services中的服务名称,也可以通过包的meta-data。 ‘allow’ 参数将把条目加入 /etc/ufw/maps ,而 ‘deny’ 则相反。基本语法如下:
    ufw allow|deny [service]
    #显示防火墙和端口的侦听状态,参见 /var/lib/ufw/maps。括号中的数字将不会被显示出来。
    ufw status
    
    • 1
    • 2
    • 3
    • 4
    • 5
    UFW使用范例:
    #允许 53 端口
    $ sudo ufw allow 53
    
    #禁用 53 端口
    $ sudo ufw delete allow 53
    
    #允许 80 端口
    $ sudo ufw allow 80/tcp
    
    #禁用 80 端口
    $ sudo ufw delete allow 80/tcp
    
    #允许 smtp 端口
    $ sudo ufw allow smtp
    
    #删除 smtp 端口的许可
    $ sudo ufw delete allow smtp
    
    #允许某特定 IP
    $ sudo ufw allow from 192.168.254.254
    
    #删除上面的规则
    $ sudo ufw delete allow from 192.168.254.254    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23

    [注]
    局域网ping不通mac主机的原因:

    1. 网络连接或网络不稳定
    2. mac电脑锁屏或关机
    3. 防火墙设置
    4. ICMP协议设置

    转载于
    https://blog.csdn.net/qq_36640713/article/details/106553833

  • 相关阅读:
    ssm体育课堂管理系统毕业设计源码181626
    OceanBase 金融项目优化案例
    更有仪式感的收纳工具,让生活有条有理,精臣B21智能标签机上手
    【LeetCode】144. 二叉树的前序遍历
    生成与调用C++动态链接库(so文件)
    EPSON晶振应用到汽车电子产品上的型号有哪些?
    信号驱动任务执行(pause、sigsuspend函数)
    Transformer for CV
    java学习的环境配置与安装(sublime汉化,jdk8,convert to utf8)快速入门
    perl之print,printf,sprintf使用案例详解
  • 原文地址:https://blog.csdn.net/qq_45742250/article/details/133270131