Centos 7安全之帳戶問題排解(實驗七合一)

本次該篇博客將有關Liunx系統中(全部實驗基於Centos 7)安全方面的各個知識分別由七個實驗來實際闡述。


目錄:

  • 帳戶文件控制(加鎖)
  • 控制歷史記錄
  • 帳戶密碼時效管理
  • 帳戶安全切換
  • SUDO命令提權
  • GRUB菜單管理
  • NMAP掃描

1、帳戶文件控制(加鎖)

帳戶文件控制實際上就是對用戶帳戶(密碼)文件的加鎖與解鎖,一旦將帳戶和密碼文件上鎖,該服務器將沒法建立新的用戶。
實現步驟:vim

一、查看上鎖前的帳戶文件狀態,輸入:

[root@localhost ~]# lsattr /etc/passwd /etc/shadow

Centos 7安全之帳戶問題排解(實驗七合一)

二、將帳戶文件上鎖並查看加鎖後的狀態,輸入:

[root@localhost ~]# chattr +i /etc/passwd /etc/shadow
[root@localhost ~]# lsattr /etc/passwd /etc/shadow

Centos 7安全之帳戶問題排解(實驗七合一)

三、使用添加用戶命令(useradd),會發現沒法新增用戶。

[root@localhost ~]# useradd tasetplayer

Centos 7安全之帳戶問題排解(實驗七合一)

2、控制歷史記錄

在Linux中,歷史記錄會完整的保存以前輸入的命令,這是很是危險,一旦獲取到歷史記錄就能經過歷史記錄推斷出以前執行的操做。因此咱們要對歷史記錄表的容量進行限制。
實現步驟:安全

一、修改配置文件——針對整個系統:

[root@localhost ~]# vim /etc/profile

Centos 7安全之帳戶問題排解(實驗七合一)

二、在配置文件中找到「HISTSIZE」將後面的數字進行修改

(默認爲1000,即最多可保存1000條歷史記錄)
Centos 7安全之帳戶問題排解(實驗七合一)bash

三、這時候雖然完成了配置文件的修改,但實際上並無執行,須要重啓或者輸入:

[root@localhost ~]# source /etc/profile

從新執行剛修改的配置文件,使配置文件生效。
Centos 7安全之帳戶問題排解(實驗七合一)服務器

一、修改配置文件——針對某個用戶

[root@localhost ~]# vim /home/zhy/.bash_logout

其中,「/home/zhy」表示用戶的宿主目錄
Centos 7安全之帳戶問題排解(實驗七合一)ide

二、在用戶的配置文件中手動添加:

history -c
clear工具

Centos 7安全之帳戶問題排解(實驗七合一)

3、帳戶密碼時效管理

實驗一:

設置密碼有效期
要求用戶下次登陸時修改密碼ui

[root@localhost ~]# vim /etc/login.defs
......
PASS_MAX_DAYS 30(適用於新建用戶,原用戶有效期不會變化)3d

Centos 7安全之帳戶問題排解(實驗七合一)
Centos 7安全之帳戶問題排解(實驗七合一)

[root@localhost ~]# vim /etc/shadow(該條命令能夠修改已有用戶的有效期)code

Centos 7安全之帳戶問題排解(實驗七合一)
除了上面的兩條命令可以控制用戶有效期的長短:blog

[root@localhost ~]# chage -d 0 wangwu(強制在下次登陸時更改密碼)

強烈建議不要使用這條命令!!!!由於你的新密碼基本不會設置成功(即便知足密碼複雜性的要求),會有各類各樣的問題出現!!

例如:這樣的
Centos 7安全之帳戶問題排解(實驗七合一)
這樣的
Centos 7安全之帳戶問題排解(實驗七合一)
還有這樣的
Centos 7安全之帳戶問題排解(實驗七合一)

4、帳戶安全切換

一般狀況下,哪怕是普通用戶也可使用「su」命令在多個帳戶間進行切換,從而有機會反覆嘗試其餘用戶(如root)的登陸密碼,帶來很是大的安全風險。
爲了增強su命令的使用控制,可藉助pam_wheel認證模塊,只容許個別用戶使用su命令(在wheel組中的用戶)進行切換。
實現過程:

一、將想要受權的用戶移入wheel,輸入命令:

[root@localhost ~]# gpasswd -a zhaosi wheel
[root@localhost ~]# cat /etc/group | grep wheel

Centos 7安全之帳戶問題排解(實驗七合一)

二、修改/etc/pam.d/su認證配置,用來啓用pam_wheel認證

[root@localhost ~]# vim /etc/pam.d/su
......
auth sufficient pam_rootok.so
......
#auth required pam_wheel.so use_uid(將該行前面的#去掉以啓用認證模塊)
......
Centos 7安全之帳戶問題排解(實驗七合一)

三、配置完成後,咱們只是將「zhaosi」加入wheel組中,因此其它用戶將沒法使用su命令進行用戶之間的切換

[wangwu@localhost ~]$ su - root
密碼:
su: 拒絕權限
[wangwu@localhost ~]$ (切換失敗,仍爲原來用戶)
Centos 7安全之帳戶問題排解(實驗七合一)

5、sudo命令提權

在Liunx中,說到既可讓普通用戶擁有一部分的管理權限,又能夠不知道root密碼的命令。那說的必定就是sudo命令了!!只要管理員提早進行受權,就可讓指定的普通用戶擁有一部分管理權限。

一、在配置文件/etc/sudoers中添加受權(也能夠直接使用visudo工具直接進行受權)

[root@localhost ~]# visudo
......
wangwu localhost=/usr/sbin/ifconfig(爲wangwu提供ifconfig命令的受權)
:wq

Centos 7安全之帳戶問題排解(實驗七合一)

二、經過sudo執行特權命令

對於已受權的用戶,經過sudo執行時,只要在正常的命令以前加上sudo便可。

[wangwu@localhost ~]$ /sbin/ifconfig ens33 192.168.1.11/24(未用sudo的狀況)
SIOCSIFADDR: 不容許的操做
SIOCSIFFLAGS: 不容許的操做
SIOCSIFNETMASK: 不容許的操做
[wangwu@localhost ~]$ sudo /sbin/ifconfig ens33 192.168.1.11/24(使用sudo的狀況)
......
[sudo] wangwu 的密碼:
[wangwu@localhost ~]$ ifconfig (驗證執行結果)
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.11 netmask 255.255.255.0 broadcast 192.168.1.255

Centos 7安全之帳戶問題排解(實驗七合一)

Centos 7安全之帳戶問題排解(實驗七合一)

6、grub菜單管理

GRUB菜單做爲啓動過程的必備項,一旦遭到破壞便會致使沒法進入系統。一般狀況下,grrub菜單不會出現大的問題。但在以前的博客中曾經介紹過經過修改grub引導參數進入單用戶模式來修復系統問題,這種方法能夠繞開開機密碼進入系統,而且擁有root權限。
方法雖好,但從安全角度來講,任何人均可以經過修改grub參數來獲取root權限,自己對服務器就是一個極大的威脅。因此爲了防止這種狀況的發生,咱們能夠爲GRUB菜單設置一個單獨的密碼。

一、分別將grub菜單文件和它的頭文件進行備份,以防實驗失敗形成沒法開機

[root@localhost ~]# cp /boot/grub2/grub.cfg  /boot/grub2/grub.cfg.bak
[root@localhost ~]# cp /etc/grub.d/00_header /etc/grub.d/00_header.bak

Centos 7安全之帳戶問題排解(實驗七合一)

二、生成設置grub菜單所需的密碼哈希(Hash)值

[root@localhost ~]# grub2-mkpasswd-pbkdf2

三、設置grub菜單頭文件

[root@localhost ~]# vim /etc/grub.d/00_header

Centos 7安全之帳戶問題排解(實驗七合一)
具體修改步驟:

按下G定位到頭部文件末尾,並按o在下一行輸入
輸入「cat << EOF」
輸入「set superusers=」root」」
最後一行輸入「passwd_pbkdf2 root以前計算出的哈希值」
:wq(保存退出)

Centos 7安全之帳戶問題排解(實驗七合一)

四、從新建立grub的配置

[root@localhost ~]# grub2-mkconfig -o /boot/grub2/grub.cfg

Centos 7安全之帳戶問題排解(實驗七合一)
到此就完成GRUB菜單密碼的設置,下次想要進入GRUB設置就必須輸入密碼才能進入了。

7、NMAP掃描——端口掃描

NMAP的掃描語法

格式:nmap [掃描類型] [選項] <掃描目標…>
經常使用的掃描類型:
-aS:TCP SYN掃描
-sT:TCP鏈接掃描
-sF:TCP FIN掃描
-sU:UDP掃描
-sP:檢測ping
-P0:跳過ping檢測

實驗步驟:

一、安裝NMAP掃描工具

[root@localhost ~]# yum install nmap -y

Centos 7安全之帳戶問題排解(實驗七合一)

二、經過該工具查看本機對外開啓的具體端口服務

TCP端口開啓的服務

[root@localhost ~]# nmap -sT 127.0.0.1

Centos 7安全之帳戶問題排解(實驗七合一)

UDP端口開啓的服務

[root@localhost ~]# nmap -sU 127.0.0.1

Centos 7安全之帳戶問題排解(實驗七合一)

相關文章
相關標籤/搜索