linux系统安全基础应用

linux系统安全基础应用

重点:

lSu、sudo的使用

l为GRUB引导菜单设置密码

4.1账号安全控制

用户帐号,是计算机使用者的身份凭证或标识,每个要访问系统资源的人,必须凭借他的用户账号才能进入计算机

4.1.1基本安全措施

系统账号清理:

§用户的Shell设为/sbin/nologin

§锁定长期不使用的账号

§删除无用的账号

§锁定账号文件passwd、shadow

列:chattr +i/etc/passwd /etc/shadow       //锁定文件并查看状态

lsattr /etc/passwd /etc/shadow

chattr -i /etc/passwd/etc/shadow      //解锁文件并查看状态

lsattr /etc/passwd /etc/shadow

密码安全控制 :

§设置密码有效期

§要求用户下次登录时修改密码

列: vi /etc/login.defs           //适用于新建用户

         PASS_MAX_DAYS    30

chage -M 30 lisi             //适用于已有用户

列: chage -d 0zhangsan         //强制在下次登录时更改密码

命令历史限制

§减少记录的命令条数

§注销时自动清空命令历史

列: vi/etc/profile       //适用于新登录用户

HISTSIZE=200

vi ~/.bash_logout         //添加清空历史命令

history -c

clear

export HISTSIZE=200        //适用于当前用户

终端自动动注销 :闲置600秒后自动注销

列: vi ~/.bash_profile

exportTMOUT=600

exportTMOUT=600

Ø4.1.2用户切换和用户提权

Su用来切换用户,sudo用来提升执行权限

1.使用su命令切换用户

用途及用法

§用途:Substitute User,切换用户

§格式:su - 目标用户

v密码验证

§rootà任意用户,不验证密码

§普通用户 à其他用户,验证目标用户的密码

列:su  -  root

注意:带 - 选项表示将使用目标用户的登录Shell环境,-等同于―loging或-l

默认情况下,任何用户都可以使用su命令,为了加强su命令的使用控制,可以借助pam_wheel模块,只允许极个别的用户使用su命令,实现过程如下:将授权使用苏命令的用户添加到wheel组,修改/etc/pam.d/su认证配置以启用pam_wheel认证

列:gpasswd   -a zhangsan   wheel         //添加授权用户zhangsan

  Grep  wheel /etc/wheel       //确认wheel组成员

  Vim /etc/pam.d/su    

 Auth  required pam_wheel。So  use_uid    //去掉此行开头的#号

启用pam_wheel认证后,未加入到wheel组内的其他用户将无法使用su命令

查看su操作记录

§安全日志文件:/var/log/secure

使用su命令的切换用户的操作将会记录到安全日志/var/log/secure文件中

列: tail  /var/log/secure

2.使用sudo机制提升权限

使用sudo命令,需要有管理员预先进行授权,指定允许那些用户以超级用户(或其他普通用户)的身份来执行哪些命令

v用途及用法

§用途:以其他用户身份(如root)执行授权的命令

§用法:sudo 授权命令

v密码验证

§初次执行sudo命令时,验证当前用户的密码

§不需验证目标用户的密码

列: sudo -ujerry /bin/touch /tmp/test.file

ls -l /tmp/test.file

1)在配置文件/etc/sudoers中添加授权

配置sudo授权

visudo 或者 vi /etc/sudoers

记录格式:用户主机名列表=命令程序列表

用户:(USER):授权的用户名,或采用“%组名”的形式(授权一个组的多有用户)

主机(MACHINE):使用此配置文件的主机名称

命令(commands):允许授权用户通过sudo方式执行的特权命令,许天叙命令程序的完整路径,多个命令之间以“,”号进行分隔

列:visudo

……

%wheel              ALL=NOPASSWD: ALL

jerry               localhost=/sbin/ifconfig

syrianer               localhost=/sbin/*,!/sbin/ifconfig,!/sbin/route

Cmnd_Alias       PKGTOOLS=/bin/rpm,/usr/bin/yum

mike                   localhost=PKGTOOLS

注意:可以使用通配符*、取反符号! 类似别名还包括:User_Alias、Host_Alias

查看sudo操作记录

§需启用 Defaults logfile 配置 默认情况下,通过sudo方式执行的操作并不记录,应在/etc/sudores文件增加Defaults logfile设置

§默认日志文件:/var/log/sudo

列:visudo                      //查找的defaults,在前面添加一行内容

Defaults logfile ="/var/log/sudo "    //启用日志配置以后,sudo操作过程才会被记录

列:tail/var/log/sudo

查询授权的sudo操作

§sudo �Cl   查看用户获得哪些sudo授权

§注意:初次使用sudo时需验证当前用户的密吗

列:sudo /sbin/fdisk �Cl      //再次使用sudo 默认超时不间隔5分钟,在此期间不再重复验证

4.2 系统引导和登录控制

Ø4.2.1开关机安全控制

1.调整BIOS引导设置

§将第一引导设备设为当前系统所在硬盘

§禁止从其他设备(光盘、U盘、网络)引导系统

§将安全级别设为setup,并设置管理员密码

2.禁用重启热键Ctrl+Alt+Del

§避免因用户误操作导致重启

列:  vi /etc/inittab

#ca::ctrlaltdel:/sbin/shutdown -t3 -r now

init q     /重新读取配置

3.GRUB菜单限制

未经授权禁止修改启动参数

未经授权禁止进入指定系统

密码设置方式(grub.conf)

§password  明文密码串

§password  --md5  加密密码串

v密码记录的位置

§全局部分(第一个“title”之前)

§系统引导部分(每个“title”部分之后)

列: grub-md5-crypt

Password:

Retype password:

$1$Kndw50$wRW2w1v/jbZ8n5q2fON4y/

列: vi/boot/grub/grub.conf

password --md5 $1$Kndw50$wRW2w1v/jbZ8n5q2fON4y/   //添加到第一个title前

title Red Hat Enterprise Linux Server (2.6.18-194.el5)

   root (hd0,0)

   kernel/vmlinuz-2.6.18-194.el5 ro root=/dev/VolGroup00/LogVol00

   initrd/initrd-2.6.18-194.el5.img

:title前(全局部分)-禁止修改启动内核参数

Title后(系统部分)--不允许进入指定系统

4.2.2终端登录安全控制

1.修改系统登录提示

§本机登录提示:/etc/issue

§网络登录提示:/etc/issue.net

列: vi/etc/issue

Microsoft Windows Server 2008 R2

2.减少开放终端个数

列: vi/etc/inittab       //禁用三个终端tty1 tty2Tty3

# Run gettys in standard runlevels

#1:2345:respawn:/sbin/mingetty tty1

#2:2345:respawn:/sbin/mingetty tty2

#3:2345:respawn:/sbin/mingetty tty3

4:2345:respawn:/sbin/mingetty tty4

5:2345:respawn:/sbin/mingetty tty5

6:2345:respawn:/sbin/mingetty tty6

[root@localhost ~]# initq

3.限制root只在安全终端登录

§安全终端配置:/etc/securetty

列: vi/etc/securetty       //禁止root从终端tty 5 tty6登录

……

tty1

tty2

tty3

tty4

#tty5

#tty6

4.禁止普通用户登录

§建立/etc/nologin文件

§删除nologin文件或重启后即恢复正常

列: touch/etc/nologin       // 禁止普通用户登录

rm -rf /etc/nologin        //取消上述登录限制



本文出自 “敏而好学” 博客,谢绝转载!

你可能感兴趣的:(linux系统安全)