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认证特训营
|
云安全 人工智能 运维
阿里云认证含金量高吗?考哪个好?
阿里云认证书是现在很多云技术从业人员的必考证书,不仅能提升自己的能力,还能让自己在面试过程中有更多谈判的筹码,获得更好的岗位和待遇。
907 0
阿里云认证含金量高吗?考哪个好?
|
SQL 存储 分布式计算
阿里巴巴认证考试题库是什么样子的
如今,电商竞争是越来越激烈了。各路电商英雄豪杰加入电商大战,颇有三国时期诸国混战的架势。虽然阿里的地盘逐渐被瓜分,竞争对手也是越来越强大,虽然土地被分走了,但是阿里巴巴的业务何止天猫、淘宝,阿里巴巴的触角已经伸向电商的每个角落。对于想从事电商的人来说,能够获得官方的认证是件极好的事儿。今天就与大家介绍关于阿里巴巴认证和阿里巴巴认证考试题库。
261 0
阿里巴巴认证考试题库是什么样子的
|
云安全 弹性计算 负载均衡
阿里云acp专业认证考试有用吗 考试易错题分析
云服务是互联网技术发展的一个重要方向,目前国内云服务领域形成了阿里、腾讯、华为三强鼎力的局面,其中阿里更具优势。因此阿里云认证也就有更强的影响力,是从事阿里云工作的必备资格。阿里云acp考试是阿里云认证体系中的一项,它是针对不同产品类别、依据考生成长阶段而打造的认证考试,旨在验证考生是否具备了使用阿里云产品解决企业实际问题的能力。今天就介绍阿里云acp专业认证考试的相关内容。
240 0
阿里云acp专业认证考试有用吗 考试易错题分析
|
云安全 机器学习/深度学习 弹性计算
阿里云ACP认证考试样题和考试大纲下载汇总
阿里云ACP认证考试样题和考试大纲下载,阿里云ACP认证分为五个方向,阿里云ACP网分享考试样题和考试大纲并提供下载链接: ACP认证考试分类 阿里云ACP专业工程师认证考试目前分为五个方向,即云计算、大数据、大数据分析师、云安全、企业互联网架构,考试方向不同考试题目、样题和考试大纲也不同,五个方...