Linux防火墙

1.防火墙

1.1 图形界面修改

firewall-config     ##开启操作界面
    Runtime     ##临时
    Permanent   ##永久更改  需要Reload firewalld

    Change Default Zone ##修改默认名单

        trusted     ##信任,可接受所有的网络连接
        home        ##家庭,用于家庭网络,仅接受ssh、mdns、ipp-client、samba-client、或dhcpv6-client服务连接
        internal    ##内部,用于内部网络,仅接受ssh、mdns、ipp-client、samba-client、dhcpv6-client服务连接
        work        ##工作,用于工作区,仅接受ssh、ipp-client或dhcpv6-client服务连接
        public      ##公共,在公共区域内使用,仅接受ssh或dhcpv6-client服务连接,为firewalld的默认区域
        external    ##外部,出去的ipv4网络连接通过此区域伪装和转发,仅接受ssh服务连接
        dmz     ##非军事区,仅接受ssh服务接连
        block       ##限制,拒绝所有网络连接
        drop        ##丢弃,任何接收的网络数据包都被丢弃,没有任何回复
    Services    ##服务列表
    Ports       ##端口列表

1.2 firewalld操作

1.2.1 firewall基本操作
    firewall-cmd --state            ##查看firewalld的状态
    firewall-cmd --get-active-zones     ##查看当前活动的区域,并附带一个目前分配给它们的接口列表
    firewall-cmd --get-default-zone     ##查看默认区域
    firewall-cmd --get-zones        ##查看所有可用区域
    firewall-cmd --zone=public --list-all   ##列出指定域的所有设置
    firewall-cmd --get-services     ##列出所有预设服务(这样将列出 /usr/lib/firewalld/services/ 中的服务器名称。注意:配置文件是以服务本身命名的service-name. xml)
    例:/usr/lib/firewalld/services/ssh.xml
        <?xml version="1.0" encoding="utf-8"?>
        <service>
          <short>SSH</short>        ##服务名
          <description>Secure Shell (SSH) is a ......be useful.</description>           ##说明
          <port protocol="tcp" port="22"/>  ##协议和端口号
        </service>

    firewall-cmd --list-all-zones           ##列出所有区域的设置
    firewall-cmd --set-default-zone=dmz     ##设置默认区域
    firewall-cmd --permanent --zone=internal --add-source=172.25.0.0/24 ##设置网络地址到指定的区域(--permanent参数表示永久生效设置,如果没有指定--zone参数,那么会加入默认区域)
    firewall-cmd --permanent --zone=internal --remove-source=172.25.0.0/24  ##删除指定区域中的网路地址
    # 添加、改变、删除网络接口:
    firewall-cmd --permanent --zone=internal --add-interface=eth0
    firewall-cmd --permanent --zone=internal --change-interface=eth0
    firewall-cmd --permanent --zone=internal --remove-interface=eth0
    # 添加、删除服务:
    firewall-cmd --permanent --zone=public --add-service=smtp
    firewall-cmd --permanent --zone=public --remove-service=smtp
    # 列出、添加、删除端口:
    firewall-cmd --zone=public --list-ports
    firewall-cmd --permanent --zone=public --add-port=8080/tcp
    firewall-cmd --permanent --zone=public --remove-port=8080/tcp
    # 重载防火墙:
    firewall-cmd --reload       ##注意:这并不会中断已经建立的连接,如果打算中断,可以使用 --complete-reload选项
1.2.2 规则
    firewall-cmd --direct --remove-rule ipv4 filter INPUT 1 -p tcp --dport 80 -j ACCEPT ##添加规则
    firewall-cmd --direct --remove-rule ipv4 filter INPUT 1 -p tcp --dport 80 -j ACCEPT ##删除规则
    firewall-cmd --direct --get-all-rules       ##列出规则
1.2.3 伪装
    firewall-cmd --add-masquerade   ##开启伪装功能

2.selinux

安全上下文
ls -Zd file/dir ##查看文件的安全上下文
chcon -t public_content_t /westos -R ##修改安全上下文,临时
semanage fcontext -l | grep westos ##查看内核中安全上下文列表
semanage fcontext -a -t public_content_t ‘/westos’ ##添加指定目录的安全上下文到内核中安全上下文列表,永久修改
restorecon -Rvvf /westos/ ##重新加载安全上下文列表

selinux默认下会关闭所有有可能会造成不安全操作的服务功能开关,比如上传服务
getsebool -a|grep ftp ##查看ftp服务功能开关
setsebool -P ftp_home_dir on ##永久开启服务功能开关

setenforce 0 ##修改selinux权限,0警告,1强制
getenforce ##获取selinux权限
/var/log/audit/audit.log ##selinux日志文件

setroubleshoot-server ##selinux日志处理软件,处理后将结果放入/var/log/messages中,并有解决方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值