文档章节

RHEL7.0 防火墙入门

潘金莲子羹
 潘金莲子羹
发布于 2014/11/14 22:55
字数 1548
阅读 151
收藏 0

最近手痒,翻出来新出的(其实已经下载了很长时间的)RHEL7.0鼓捣了一下。

7.0有啥更新,自己问度娘了。

我今天要扯扯的是防火墙的部分,没办法,谁叫他常用来着。当然,如果你从来就是disabled,那绕行,省着浪费时间。

安装

如果系统您老人家是下一步、下一步安装的话,恭喜你,你是最小化安装的滴,没桌面环境(我刚开始也是没注意),当然,防火墙也是默认安上了,只是没有图形的配置工具filewall-cofig。

如果干脆安装的时候就没选,也没关系,请yum来帮忙。


安装firewalld

yum install firewalld
yum install firewall-config    这是桌面下的配置工具


这就行了,就是这么任性。

禁用

问题来了,你就是不想学,非得要用iptables

那也没问题。

首先停用

systemctl disable firewalld
systemctl stop firewalld
然后安装iptables服务

yum install iptables-services
启用iptables

systemctl start iptables
systemctl start ip6tables
systemctl enable iptables
systemctl enable ip6tables


关于systemctl(新的管理系统的工具集),有时间再吐槽。

好了,iptables回来了,当然我还是希望你别这么做,其实firewall的底层还是基于iptables的。

如下图

再罗嗦两句,如果要启用,那你就

systemctl start firewalld
systemctl enable firewalld

如果想看看到底是啥状态,那就

[root@localhost zones]# systemctl is-active firewalld
active

或者


[root@localhost zones]# systemctl status firewalld   这里就能看到systemctl工具牛B的地方了。

firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled)
   Active: active (running) since Mon 2014-11-03 01:57:52 CST; 1 weeks 1 days ago
 Main PID: 1845 (firewalld)
   CGroup: /system.slice/firewalld.service
           └─1845 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid

Nov 03 01:57:51 localhost.localdomain systemd[1]: Starting firewalld - dynamic firewall daemon...
Nov 03 01:57:52 localhost.localdomain systemd[1]: Started firewalld - dynamic firewall daemon.

或者

[root@localhost zones]# firewall-cmd --state
running

配置方式

有3种:

1、命令行方式

firewall-cmd,只要你装的firewall软件包,就已经集成了此工具,推荐方式。

2、图形方式

firewall-config,这个就不多说了,安装了桌面环境默认就有了。

3、直接编辑配置文件。

新的firewall的配置都是以xml文件的形式存在。

系统模板文件保存在/usr/lib/firewalld目录

[root@localhost firewalld]# ls
icmptypes  services  zones   三个目录

[root@localhost services]# ls  下面是一堆内置的配置
amanda-client.xml      ipp-client.xml   mysql.xml       rpc-bind.xml
bacula-client.xml      ipp.xml          nfs.xml         samba-client.xml
bacula.xml             ipsec.xml        ntp.xml         samba.xml
dhcpv6-client.xml      kerberos.xml     openvpn.xml     smtp.xml
dhcpv6.xml             kpasswd.xml      pmcd.xml        ssh.xml
dhcp.xml               ldaps.xml        pmproxy.xml     telnet.xml
dns.xml                ldap.xml         pmwebapis.xml   tftp-client.xml
ftp.xml                libvirt-tls.xml  pmwebapi.xml    tftp.xml
high-availability.xml  libvirt.xml      pop3s.xml       transmission-client.xml
https.xml              mdns.xml         postgresql.xml  vnc-server.xml
http.xml               mountd.xml       proxy-dhcp.xml  wbem-https.xml
imaps.xml              ms-wbt.xml       radius.xml

用户创建或是系统修改的配置保存在/etc/firewalld/目录下面。如果你发现这个目录下面啥也没有,不要惊讶,你使用的是默认设置。

[root@localhost firewalld]# ls    .conf那个文件是主配置文件
firewalld.conf  icmptypes  lockdown-whitelist.xml  services  zones

[root@localhost services]# ls  看到了没,下面毛线都没有
[root@localhost services]# 

[root@localhost zones]# ls 这个目录就有东东,因为我把ipv6客户端的连接给默认禁用了。忘了说了,系统默认安装完成,只开了ssh与ipv6连接
public.xml  public.xml.old
cat /etc/firewalld/firewalld.conf  主配置文件是这个样子滴


# firewalld config file

# default zone
# The default zone used if an empty zone string is used.
# Default: public
DefaultZone=public         这块是默认区域,下面马上说这块。

# Minimal mark
# Marks up to this minimum are free for use for example in the direct 
# interface. If more free marks are needed, increase the minimum
# Default: 100
MinimalMark=100

# Clean up on exit
# If set to no or false the firewall configuration will not get cleaned up
# on exit or stop of firewalld
# Default: yes
CleanupOnExit=yes

# Lockdown
# If set to enabled, firewall changes with the D-Bus interface will be limited
# to applications that are listed in the lockdown whitelist.
# The lockdown whitelist file is lockdown-whitelist.xml
# Default: no
Lockdown=no

# IPv6_rpfilter
# Performs a reverse path filter test on a packet for IPv6. If a reply to the
# packet would be sent via the same interface that the packet arrived on, the 
# packet will match and be accepted, otherwise dropped.
# The rp_filter for IPv4 is controlled using sysctl.
# Default: yes
IPv6_rpfilter=yes

啥是区域(zone)

zone这概念windows7开始也有,没发现的,自己找找。

比如你可以指定,从网卡A来的访问,一律都不响应;从网卡B来的访问,只返回ping请求。。。

说白了,就是内置的一些规则配置文件,用来给懒人们用的。

系统默认的zone有9个(从不信任到信任的顺序排序),列表如下:

drop

出去行,进来不行,即使你手工开放了访问,也不行。


block

和上面差不多,虽然也是拒绝访问,但至少告诉人家一声(返回 IPv4 的 icmp-host-prohibited 报文或者 IPv6 的 icmp6-adm-prohibited 报文)。当然,仅仅由系统初始化的网络连接才行。


public(默认)

这是默认的,看上一节的配置文件。

要是用了这个配置,就是告诉人家,你们都是坏人,只有我说你是好人,才是好人。


external

官方文档说这个是用在路由器等启用伪装的外部网络。


dmz

这个区域是说,你相信你们这群人中,还是有几个好人的,但都得听我指挥哈。


work

这个区域是说,我相信你们大多数人都是好同志哈,一号取款机不用密码,连过来吧。


home

和上面的类似


internal

和上面的类似


trusted

啥也不管,谁想进,想出都成。


你要问我细节上有啥区域,真没详细研究过,我只是觉得,相信所有人都是坏人吧,不需要开放的,一率不开放。


配置zone

查看zone设置

要想什么,当前是用的啥子zone,2招

查看/etc/firewalld/firewalld.conf配置文件里面的DefaultZone设置项,见上面的内容

或者用下面的命令

[root@localhost zones]# firewall-cmd --get-default-zone  这种命令,喜欢啊,好记
public

当然还可以用图形工具firewall-config,我推荐还是用firewall-cmd,那样显示啥牛B啊,嘿嘿

修改zone设置

2种方式,或者说3种,图形不再费话了(以下说的都是命令哈)。

第1种,还是改那个配置文件。

第2种,下面这样

[root@localhost zones]# firewall-cmd --set-default-zone=work
success
[root@localhost zones]# firewall-cmd --get-default-zone
work

服务与端口

这可能是我们配防火墙做的最多的事啦。

那,下回再说吧。。。

待续

© 著作权归作者所有

共有 人打赏支持
潘金莲子羹

潘金莲子羹

粉丝 4
博文 34
码字总数 29198
作品 0
沈阳
部门经理
RedHat Enterprise Linux 7简介

我这里列举一部分程序员可能比较感兴趣的地方,主要还是我感兴趣的方面。 1. 系统架构 RedHat Enterprise Linux 7.0 支持更多的CPU,内核和内存。只有64位硬件支持RedHat Enterprise Linux 7...

柳哥
2015/05/07
0
0
RH124-13 软件包安装与升级

第十三章 软件包安装与升级 13.1 了解rpm包 红帽开发RPM Package Manager,用于软件包的安装和升级. rpm包的名字结构: httpd-tools-2.4.6-7.el7.x86_64.rpm httpd-tools 软件名字 2.4.6 软件原...

myworldkwd
06/26
0
0
网络装机和kickstart自动处理

PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统...

技术小白JDY
2017/12/13
0
0
RH124 考试真题讲解(小部分、不全)

考试时间2.5小时 请首先按以下要求配置考试系统: HostName server0.example.com ip add :172.25.0.11 netmask:/24 gateway:172.25.254.254 Name server 172.25.254.254 所有配置要求系统重启...

myworldkwd
06/26
0
0
Linux忘记root密码解决办法

如果丢失了root口令,那么可以让机器启动进入单用户状态来设置,可重新修改root密码。这样可以方便用户的使用,但同样又有一定的安全隐患,可以使用Grub加密来杜绝安全隐患,本节先介绍忘记密...

日久不生情
2017/11/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

jquery创建类似于java的map

var map = {}; // Map map = new HashMap(); map[key] = value; // map.put(key, value); var value = map[key]; // Object value = map.get(key); var has = key in map; // boolean has = ......

SuperDabai
34分钟前
0
0
java大数据转换16进制转10进制

public static void main(String[] args) {String hex = "0xdbf3accc683297cf0000";BigInteger amount = new BigInteger(hex.substring(2), 16);System.out.println(amount);......

任梁荣
昨天
2
0
OSChina 周六乱弹 —— 目测我们程序员丁克的几率不大

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @真Skr小机灵鬼儿:8.13分享Jocelyn Pook/Russian Red的单曲《Loving Strangers》 《Loving Strangers》- Jocelyn Pook/Russian Red 手机党少...

小小编辑
昨天
9
3
TypeScript基础入门 - 函数 - 剩余参数

转载 TypeScript基础入门 - 函数 - 剩余参数 项目实践仓库 https://github.com/durban89/typescript_demo.gittag: 1.2.1 为了保证后面的学习演示需要安装下ts-node,这样后面的每个操作都能...

durban
昨天
1
0
OpenCV边缘检测算子原理总结及实现

1. 拉普拉斯算子 原理:是一种基于图像导数运算的高通线性滤波器。它通过二阶导数来度量图像函数的曲率。 拉普拉斯算子是最简单的各向同性微分算子,它具有旋转不变性。一个二维图像函数的拉...

漫步当下
昨天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部