RHCE认证培训+考试七天实录(五)

简介:

第五天(11月30日)

第五天的主要内容是关于安全方面的相关知识。

1、端口扫描与网络嗅探

在服务器server上执行netstat命令查看是否开放了21端口:
[root@localhost ~]# netstat -an | grep :21
tcp         0      0 0.0.0.0:21                  0.0.0.0:*                   LISTEN
在客户端client上用nmap工具扫描服务器开放的端口,首先安装nmap:
# yum install nmap
nmap命令的常用选项:

这里扫描服务器端的tcp端口:

此时如果在服务器端启用防火墙,那么用nmap将扫描不到任何端口。在防火墙上将ftp设为可信服务:

 

在客户端上再次用nmap扫描就能看到21端口了:

下面首先在服务器上启用tcpdump进行嗅探,并将嗅探结果保存到 ftp.txt文件中:
# tcpdump -w ftp.txt
然后在客户端访问服务器上的ftp服务:
[root@localhost ~]# ftp 192.168.0.114
Connected to 192.168.0.114 (192.168.0.114).
220 (vsFTPd 2.2.2)
Name (192.168.0.114:root): mike
331 Please specify the password.
Password:
回到服务器端,按Ctrl+c中止嗅探。
保存在 ftp.txt中的嗅探结果是无法直接查看的,需要用wireshark进行协议分析。在服务器端安装wireshark:
# yum install wireshark*
然后执行wireshark命令打开图形化的wireshark,在其中打开刚才生成的 ftp.txt文件,过滤ftp协议,可以看到客户端访问时输入的用户名mike和密码123。
 
2、为网卡设置IP别名
IP别名即为一块网卡配多个IP。
要实现该功能首先要禁用NetworkManager服务(即图形化界面下的网络配置工具):
[root@desktop3 ~]# service NetworkManager stop
停止 NetworkManager 守护进程:                              [确定]
[root@desktop3 ~]# chkconfig NetworkManager off
下面生成一个名为eth0:1的虚拟网卡,并设置IP:
# ifconfig eth0:1 10.1.1.1 netmask 255.255.255.0
再修改配置文件ifcfg-eth0:1(该文件可以拷贝ifcfg-eth0生成),使之永久生效:
# cp ifcfg-eth0 ifcfg-eth0:1
# vim ifcfg-eth0:1
DEVICE="eth0:1"
BOOTPROTO="static"
HWADDR="00:0C:29:3A:CD:16"
ONBOOT="yes"
IPADDR=10.1.1.1
NETMASK=255.255.255.0
保存退出,重启服务生效:
service network restart

3、配置内核参数

某些功能需要修改Linux的内核才能实现,如过滤掉ICMP数据包(当然用防火墙也可以)、启用路由功能等。
修改内核参数可以使用sysctl命令,但该命令修改的内核参数是临时的,系统重启后就将失效,如果希望永久更改内核参数,需要修改/etc/sysctl.conf文件。
 
例1:过滤icmp数据包。
首先在一台客户机上ping服务器,能够ping通。
执行“sysctl –a | grep icmp”命令查看当前与icmp有关的内核参数设置:
[root@server14 ~]# sysctl -a | grep icmp
net.netfilter.nf_conntrack_icmpv6_timeout = 30
net.netfilter.nf_conntrack_icmp_timeout = 30
net.ipv4.icmp_echo_ignore_all = 0
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.icmp_ignore_bogus_error_responses = 1
net.ipv4.icmp_errors_use_inbound_ifaddr = 0
net.ipv4.icmp_ratelimit = 1000
net.ipv4.icmp_ratemask = 6168
net.ipv6.icmp.ratelimit = 1000
其中“net.ipv4.icmp_echo_ignore_all = 0”表示允许接收所有的icmp数据包。
修改配置文件,加入这一行,把值改为1,过滤所有的icmp数据包。
# vim /etc/sysctl.conf
net.ipv4.icmp_echo_ignore_all = 1
保存退出。
执行“sysctl -p”使/etc/sysctl.conf文件生效。
此时在客户端上再ping 192.168.0.114就不通了。

例2:启用路由功能。

启用路由功能通过修改配置文件/etc/sysctl.conf,启用其中的IP转发功能实现:
net.ipv4.ip_forward = 0    
将该项的值改为1,即net.ipv4.ip_forward = 1。
保存退出,执行“sysctl -p”命令生效。
在Linux中提供了一款路由软件quagga,可以提供比较强的路由功能,对于一个一百台以内主机的小型网络,完全可以使用该软件配置软路由。
# yum install quagga
# cd /etc/quagga
# ls
bgpd.conf.sample     ripd.conf.sample    zebra.conf bgpd.conf.sample2  
ripngd.conf.sample  zebra.conf.sample    ospf6d.conf.sample vtysh.conf
ospfd.conf.sample    vtysh.conf.sample
手工生成quagga的配置文件并启用服务:
# touch ripd.conf
[root@localhost quagga]# service ripd start
启动ripd:                                                   [确定]
[root@localhost quagga]# touch ospfd.conf
[root@localhost quagga]# service ospfd start
启动ospfd:                                                  [确定]
执行vtysh命令进入路由配置模式,此时可以像配置思科路由器一样的执行路由交换命令:
[root@localhost quagga]# vtysh
Hello, this is Quagga (version 0.99.15).
Copyright 1996-2005 Kunihiro Ishiguro, et al.
localhost.localdomain# conf t
localhost.localdomain(config)#

4、配置防火墙

netfilter是Linux内核中真正的防火墙,iptables是netfilter的管理工具,为防火墙体系提供过滤规则和策略。
防火墙的基本概念
(1)规则链
规则链是防火墙规则/策略的集合。
默认的5种规则链:
INPUT:处理入站数据包
OUTPUT:处理出站数据包
FORWARD:处理转发数据包
POSTROUTING链:在进行路由选择后处理数据包(主要用于NAT)
PREROUTING链:在进行路由选择前处理数据包(主要用于NAT)
(2)规则表
规则表是规则链的集合。
默认的4个规则表:
raw表:确定是否对该数据包进行状态跟踪
mangle表:为数据包设置标记
nat表:修改数据包中的源、目标IP地址或端口
filter表:确定是否放行该数据包(过滤)
常用的主要是filter表和nat表,对于主机防火墙只涉及filter表,而且对于filter表中的OUTPUT链一般不做限制,FORWARD链也较少使用,最常用到的就是INPUT链,也就是对入站的数据进行过滤。
 
例:使用iptables命令设置防火墙规则
iptables是Linux系统中最复杂的命令之一,iptables命令的语法格式:
iptables [-t 表名] 管理选项 [链名] [条件匹配] [-j 目标动作或跳转]
(1)“表名”可以不写,默认就是filter表。
(2)“管理选项”告诉iptables要做什么事情,是添加规则、修改规则还是删除规则。管理选项必须是大写,其中常用的是:
“-A”,在规则表的末尾添加规则。
“-I”,-I后面跟着一个序号,表示在规则表中插入一条规则。
“-P”,设置默认规则。
(3)“链名”必须用大写字母,最常设置的是INPUT链。
(4)“条件匹配”必须用小写字母,常用的选项有:
-p,指定协议类型。如“-p tcp sport 1024”指定源端口,“-p tcp dport 80”指定目的端口。
-s,指定源IP地址或子网。如“-s 192.168.0.0/24”。
-d,指定目的IP地址或子网。如“-d 192.168.0.0/24”。
(5)“-j 目标动作或跳转”动作必须用大写字母。常用的动作有:
-j ACCEPT,将与规则匹配的数据包放行。
-j REJECT,拒绝所匹配的数据包,并向该数据包的发送者回复一个ICMP错误通知。
-j DROP,丢弃所匹配的数据包,不回复错误通知(较少使用)。
 
iptables命令的3个常用用法:
“iptables –L”                    显示防火墙规则
“iptables –F”                   删除filter表中的所有规则。
“service iptables save  ”    保存防火墙规则

下面是一个防火墙规则的配置实例:

iptables -F                               删除所有规则
iptables –P INPUT DROP      将默认规则设为拒绝所有
iptables –A INPUT –I lo –j ACCEPT       允许本机可以访问自己的回环接口
iptables –A INPUT –m state –state ESTABLISHED,RELATED –j ACCEPT   允许接收由本机主动发出请求之后而回来的响应包
iptables –A INPUT –p tcp –dport 80 –j ACCEPT       允许访问本机的80端口
iptables –A INPUT –s 192.168.0.0/24 –p tcp –dport 21 –j ACCEPT     只允许指定网段访问本机的21端口
iptables –A INPUT –p icmp –j ACCEPT   允许接收icmp包
service iptables save                保存防火墙规则
iptables –L                              显示防火墙规则


本文转自 yttitan 51CTO博客,原文链接:http://blog.51cto.com/yttitan/1075314

相关文章
|
程序员 数据库 云计算
职场逆袭!阿里云推荐ACP认证特训营
2天拿下ACP升职加薪有捷径!6大知识模块 2天直播干货 2天社群专属服务!入群即赠送价值900元ACP课程及全栈工程师必读资料
职场逆袭!阿里云推荐ACP认证特训营
|
人工智能 运维 Kubernetes
阿里云认证&未来网络学院ACE公开课——30分钟掌握ACE考试通关攻略
新版ACE通关攻略,这4点经验,帮你斩获高分!入群即赠价值3000元ACP全套线上课+资料包!公开课钉群:44832770。
阿里云认证&未来网络学院ACE公开课——30分钟掌握ACE考试通关攻略
|
人工智能 安全 数据处理
为什么那么多人都要考阿里云ACP认证呢?
现在越来越多的人想考阿里云ACP认证,这个证书可以说是IT行业人员的好帮手,能让你在一众面试者中脱颖而出,获得良好的岗位和丰厚的薪资。
226 0
为什么那么多人都要考阿里云ACP认证呢?
|
分布式计算 数据可视化 搜索推荐
为什么那么多人都考阿里云ACA认证?
阿里云ACA认证是面向使用阿里云云计算产品的架构、开发、运维人员的专业技术认证。证书的含金量非常高,现在阿里云可以说是国内云计算企业的龙头老大,而且在国际上也称得上数一数二,如果拥有这个证书,那就相当于拥有了一块进入大厂的敲门砖。
200 0
为什么那么多人都考阿里云ACA认证?
|
弹性计算 负载均衡 网络协议
阿里云认证有含金量吗?好找工作吗?
阿里云作为国内占市场份额最多的企业,其旗下的认证证书含金量是非常高的,不但能获得进入阿里云的机会,还能进入阿里云的人才库,被阿里云的合作伙伴们看到,获得更多就业机会。
1898 0
阿里云认证有含金量吗?好找工作吗?
|
云安全 机器学习/深度学习 弹性计算
阿里云ACP认证考试样题和考试大纲下载汇总
阿里云ACP认证考试样题和考试大纲下载,阿里云ACP认证分为五个方向,阿里云ACP网分享考试样题和考试大纲并提供下载链接: ACP认证考试分类 阿里云ACP专业工程师认证考试目前分为五个方向,即云计算、大数据、大数据分析师、云安全、企业互联网架构,考试方向不同考试题目、样题和考试大纲也不同,五个方...

热门文章

最新文章