Linux防火墙

来源:互联网 发布:无翼鸟app软件下载 编辑:程序博客网 时间:2024/06/17 13:13

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中,并有解决方法

0 0
原创粉丝点击