Linux操作系统安全期末复习题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Linux操作系统安全期末综合复习
注意:
1、系统主机改名(你的姓名全拼)
2、关闭selinux
3、系统中添加一普通用户(你的姓名全拼)
一、选择题
1、FTP服务器在standard模式下,通过()进行数据传输。

A. TCP 20端口
B. TCP 21端口
C. TCP 22端口
D. TCP 23端口
2. 下列哪个进程不受tcp_wrappers管理()
A. sshd
B.smb
C. telnet
D.vsftpd
3、客户端从浏览器连接VNC Server桌面号2所使用的TCP端口号是()
A、5801
B、5901
C、5802
D、5902
4、linux.tar.bz2的文件,用什么命令来解压缩。

( )
A tar xjvf
B bzip
C gzip2
D zip
5、RHEL中,提供SSH服务的软件包是()。

A、ssh
B、openssh-server
C、openssh
D、sshd
6、为VNC 用户设置口令的指令是()。

A.vncpassword B.Passwd C.vncpasswd D.Vncserverdb 7、允许172.16.108.0/24网段使用代理服务器,正确的ACL是()。

A.acl 172.16.108.0/24 http_access allow acl
B.acl net dstdomain 172.16.108.0/24 http_access allow net
C.acl net time 172.16.108.0/24 http_access allow net
D.acl net src 172.16.108.0/24 http_access allow net
8、squid -z 指令的作用是什么?()
A.启动代理服务器B.初始化代理服务器缓冲区目录结构C.停止代理服务器D.重启代理服务器
9、要阻止经过本机的数据包,应有iptables的哪条链上设置规则()。

A.PREROUTING B.OUTPUT
C.INPUT D.FORWARD
10.、使用iptables -P INPUT DROP将会执行以下什么操作()。

A.允许任何人访问本机的任何服务
B.将filter表中的INPUT链的默认策略设置为DROP
C.将nat表中的INPUT链的默认策略设置为DROP
D.清空filter和nat表中所有链的规则
11、要阻止进入本机的数据包,应有iptables的哪条链上设置规则()。

A.PREROUTING B.OUTPUT
C.INPUT D.FORWARD
12、删除filter表INPUT链中的第5条规则,正确的指令是()。

A.iptables -D INPUT 5 B.iptables -D OUTPUT 5
C.iptables -D FORWARD 5 D.iptables -t nat -D INPUT 5
13、使用iptables -L将会执行以下什么操作()。

A.查看filter表中所有链中的规则B.查看nat表中所有链中的规则
C.查看INPUT链中所有的规则D.查看filter和nat表中所有链的规则
14、使用iptables -t nat -F将会执行以下什么操作()。

A.清空filter表中所有链中的规则B.清空nat表中所有链中的规则
C.清空INPUT链中所有的规则D.清空filter和nat表中所有链的规则
15、Linux的防火墙iptables配置DNAT时,在下列哪个链上定义规则?()
A、PREROUTING
B、POSTROUTING
C、INPUT
D、OUTPUT
16、Linux的防火墙iptables配置SNAT时,在下列哪个链上定义规则?()
A、PREROUTING
B、POSTROUTING
C、INPUT
D、OUTPUT
17、snort默认规则动作中主要包括()
A. alert、log、pass、activate和dynamic.
B. warnning、log、pass、activate和dynamic.
C. alert、log、pass、activate和static.
D. warnning、log、pass、activate和static.
18、Linux系统大部份的日志信息,包括login、check password、failed login、ftp、su等都记录在以下哪个文件中?()
A. /var/log/secure
B. ./var/log/dmesg
C./var/log/messages
D. ./var/run/utmp
二、操作题
1、编辑/etc/login.defs文件,设置合适的口令策略文件,包括最小口令长度、口令使用期限等,例如设置“PASS_MIN_LEN 8“,即默认的最小口令长度为8。

/etc/login.defs :
# PASS_MAX_DAYS Maximum number of days a password may be used.
# PASS_MIN_DAYS Minimum number of days allowed between password changes.
# PASS_MIN_LEN Minimum acceptable password length.
# PASS_WARN_AGE Number of days warning given before a password expires. PASS_MAX_DAYS 90
PASS_MIN_LEN 8
●启用口令策略以达到一定的复杂度:
vi /etc//pam.d/passwd
文件的头部加入password required pam_cracklib.so retry=3 difok=8 minlen=5
实例:
password required pam_cracklib.so \
difok=3 minlen=15 dcredit=2 ocredit=2
允许有3个新、旧密码相同字符的
最小长度15位和至少包含2数字、至少包含2个特殊字符数
password required pam_cracklib.so \
dcredit=1 ucredit=1 ocredit=1 lcredit=0 minlen=8
最小长度为8和至少1位数字,1位大写字母,和另外1个字符的密码
注意这个设置对于root没有作用,
只针对普通用户修改自己密码时起作用
●修改密码策略配置文件,确保密码最小长度为8位,然后创建新账号,并赋予密码低于
8位。

(1)打开/etc/pam.d/system-auth
(2)修改password requisite pam_cracklib.so retry=4 difok=4 minlen=8
●修改/etc/pam.d/ system-auth文件,确保错误登录3次,锁定此账户10分钟。

(1)在/etc/pam.d/system-auth中添加如下行:
Auth required pam_tally2.so onerr=fail deny=3 unlock_time=10
2.,限制用户使用系统资源,主要包括资源最大进程数,内存使用量等.这样可以防止DOS类型攻击.需要编辑文件
[root@tp /]# vi /etc/security/limits.conf
...
(这三行是添加的)
* hard core 0 禁止创建core文件
* hard rss 5000 其他用户(除root)最多使用5M内存
* hard nproc 20 最多进程数限制在20
注:*表示所有登陆到linux的用户.
# End of file
[root@tp /]# vi /etc/pam.d/login
...
在文件末尾加入下面一行
session required /lib/security/pam_limits.so
3,禁止su命令进入root
[root@tp pam.d]# vi /etc/pam.d/su
...
在下面加入如下两行
auth sufficient /lib/security/pam_rootok.so debug
auth required /lib/security/pam_wheel.so group=wheel
这表示只有wheel组的用户可以su成root.
4、限制root远程登录
Linux修改ssh端口22
vi /etc/ssh/ssh_config
然后修改为port 8888
以root身份service sshd restar
使用putty,端口8888
●或Linux下SSH默认的端口是22,为了安全考虑,现修改SSH的端口为1433,修改方法如
下:
/usr/sbin/sshd -p 1433
查看ssh端口情况:netstat -tnlp | grep ssh
注意:防火墙配置允许你的端口或iptables -F
为增强安全
先增加一个普通权限的用户:
#useradd uploader
#passwd uploader
//设置密码
●禁止ROOT远程SSH登录:
#vi /etc/ssh/sshd_config

PermitRootLogin yes
改为
PermitRootLogin no
重启sshd服务
#service sshd restart
远程管理用普通用户登录,然后用su root 切换到root用户拿到最高权限。

5、关于tcp_wrappers相关知识及应用配置
(1)tcp_wrappers是linux中一个安全机制[TCP_wrappers防火墙],一定程度上限制某种服务的访问权限,达到了保护系统的目的
一. 要想用好tcp_wrappers,首先检查某种服务是否受tcp_wrappers 管理
ldd $(which domainname) | grep libwrap
domainname=sshd httpd smb xinetd .........
如果有这个链接,说明某个服务接受tcp_wrappers管理
(2). 与tcp_wrappers相关的文件有
/etc/hosts.allow
/etc/hosts.deny
这两个文件被整合在xinetd中.工作原理
当有请求从远程到达本机的时候
首先检查/etc/hosts.allow
如有匹配的,就默认允许访问,跳过/etc/hosts.deny这个文件
没有匹配的,就去匹配/etc/hosts.deny 文件,如果有匹配的,那么就拒绝这个访问,如果在这两个文件中,都没有匹配到,默认是允许访问的
(3)这两个文件格式
服务列表:地址列表:选项
A. 服务列表格式:如果有多个服务,那么就用逗号隔开
B. 地址列表格式:
●标准IP地址:例如:192.168.0.254,192.168.0.56如果多于一个用,隔开
●主机名称:例如:,.example.con匹配整个域
●利用掩码:192.168.0.0/255.255.255.0指定整个网段
注意:tcp_wrappers的掩码只支持长格式,不能用:192.168.0.0/24
●网络名称:例如@mynetwork
●.高级用法
daemaon@host:client_list
对于多块网卡的linux主机,要想用tcp_wrappers做一些控制得基于接口:
如eth0所在的网段:192.168.0.0 eth1所在的网段:192.168.1.0
则:
sshd@192.168.0.11:192.168.0.
sshd@192.168.1.34:192.168.1.
则两句可以根据需要写到hosts.allow或hosts.deny中
典例:
/etc/hosts.allow
sshd:ALL EXCEPT EXCEPT
/etc/hosts.deny
sshd:ALL
此例用到了EXCEPT的嵌套,其意思是:允许所有访问sshd服务,在域的不允许访问
但是除外
sshd:ALL 就是拒绝的访问,因为默认是允许,所以在hosts.deny中必须明确定义。

6、WEB虚拟站点配置
(1)安装httpd,开启WEB服务
(2)创建主页文件index.html,内容为“XXX同学的测试主面”,并在本机访问测试(3)配置网卡另一IP地址,并修改主配置文件,建立基于IP地址的虚拟网站
(4)修改主配置文件,建立基于端口8888的虚拟网站
7、WEB访问控制配置
(1)安装httpd,开启WEB服务
(2)创建主页文件index.html,内容为“XXX同学的测试主面”,并在本机访问测试
(3)创建用于访问WEB主页的账号及密码
(4)配置pam模块,当访问WEB主页时,通过输入帐户与密码进行测试
8、WEB数据加密访问配置
(1)安装httpd,开启WEB服务
(2)创建主页文件index.html,内容为“XXX同学的测试主面”,并在本机访问测试
(3)使用openssl,生成相关证书
(4)配置ssl.conf,为网站颁发证书
(5)客户端测试。

9、防火墙应用配置
(1)通过iptables配置允许本机ping出,但不允许外部主机ping 入
(2)通过iptables配置禁止外部主机ssh登录本机
(3)通过iptables配置禁止本机访问外部WEB服务
允许来自外部的ping测试
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT
允许从本机ping外部主机
iptables -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT
iptables:协议与端口设定
允许所有SSH连接请求
本规则允许所有来自外部的SSH连接请求,也就是说,只允许进入eth0接口,并且目的端口为22的数据包
iptables -A INPUT -i eth0 -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
允许从本地发起的SSH连接
本规则和上述规则有所不同,本规则意在允许本机发起SSH连接,上面的规则与此正好相反。

iptables -A OUTPUT -o eth0 -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A INPUT -i eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
仅允许来自指定网络的SSH连接请求
以下规则仅允许来自192.168.100.0/24的网络:
iptables -A INPUT -i eth0 -p tcp -s 192.168.100.0/24 --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
上例中,你也可以使用-s 192.168.100.0/255.255.255.0作为网络地址。

当然使用上面的CIDR 地址更容易让人明白。

仅允许从本地发起到指定网络的SSH连接请求
以下规则仅允许从本地主机连接到192.168.100.0/24的网络:
iptables -A OUTPUT -o eth0 -p tcp -d 192.168.100.0/24 --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A INPUT -i eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
允许HTTP/HTTPS连接请求
# 1.允许HTTP连接:80端口iptables -A INPUT -i eth0 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -o eth0 -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT
# 2.允许HTTPS连接:443端口iptables -A INPUT -i eth0 -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -o eth0 -p tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT
10、使用squid配置代理
(1)配置传统代理
(2)配置透明代理(内访问外)
11、日志与审计配置(见实验16)。

相关文档
最新文档