第1章 面試題練習 1.1 面試題:如何讓一個腳本開機自啟動 /etc/rc.local (Centos 7 給 /etc/rc.d/rc.local 加上執行許可權) chkconfig 1.2 如何通過chkconfig 管理開機自啟動 1.2.1 腳本存放在 /etc/init.d/ [root ...
第1章 面試題練習
1.1 面試題:如何讓一個腳本開機自啟動
/etc/rc.local (Centos 7 給 /etc/rc.d/rc.local 加上執行許可權)
chkconfig
1.2 如何通過chkconfig 管理開機自啟動
1.2.1 腳本存放在
/etc/init.d/
[root@zeq ~]# touch /etc/init.d/zeq
1.2.2 腳本要有執行許可權
chmod +x /etc/init.d/zeq
實例1-1 增加chkconfig要求的格式
chkconfig: 2345 99 98 啟動順序 關機順序 [root@zeq ~]#cat /etc/init.d/zeq
#chkconfig: 2345 99 98 echo zhangenqing
1.2.3 加入到chkconfig管理與檢查
[root@zeq ~]# chkconfig --add /etc/init.d/zeq [root@zeq ~]# chkconfig |grep zeq zeq 0:off 1:off 2:on 3:on 4:on 5:on 6:off
第2章 用戶管理
2.1 用戶分類:
UID
root 0
虛擬用戶 1-499 命令解釋器/sbin/nologin 服務/程式 運行所需要的用戶
普通用戶 500
2.2 useradd 創建用戶
useradd
-u 指定uid
-s shell 命令解釋器 (預設是/bin/bash)
/sbin/nologin
-M 不創建家目錄 (sM)
-g 指定用戶組名稱
2.2.1 添加一個用戶lidao999 uid為999 禁止 登錄系統不創建家目錄
[root@zeq ~]# useradd -u 999 -s /sbin/nologin -M lidao999 [root@zeq ~]# grep lidao999 /etc/passwd lidao999:x:999:999::/home/lidao999:/sbin/nologin [root@zeq ~]# ll /home/lidao999 ls: cannot access /home/lidao999: No such file or directory
2.3 userdel 刪除用戶,但不會刪除用戶家目錄
-r 刪除用戶及用戶的家目錄與郵箱
註意:一般不要刪除,可以通過註釋/etc/passwd
2.4 passwd 修改密碼
--stdin 非互動式設置密碼
[root@zeq ~]# echo 123456 | passwd --stdin ahao Changing password for user ahao. passwd: all authentication tokens updated successfully. 設置成功
2.5 usermod 修改用戶信息
2.5.1 附加組 -G
[root@zeq ~]# id lidao999 uid=999(lidao999) gid=999(lidao999) groups=999(lidao999) [root@zeq ~]# usermod -G root,ahaodebaba lidao999 用戶組必須是已經創建的 [root@zeq ~]# id lidao999 uid=999(lidao999) gid=999(lidao999) groups=999(lidao999),0(root),502(ahaodebaba) 清空附加組 [root@zeq ~]# usermod -G '' lidao999 [root@zeq ~]# id lidao999 uid=999(lidao999) gid=999(lidao999) groups=999(lidao999)
2.5.2 groupadd 添加用戶組
-g gid 添加gid
[root@zeq ~]# useradd -u 666 -g mysql -s /sbin/nologin -M mysql
2.6 查詢用戶信息
id 顯示用戶信息 uid gid 和屬於用戶組
w 顯示誰登陸系統 並 在乾什麼
last 所有用戶的每次的登錄情況
lastlog 所有用戶最近一次的登錄情況
2.7 與用戶有關的文件
[root@oldboyedu50-lnb ~]# ll /etc/passwd /etc/group /etc/shadow /etc/gshadow -rw-r--r-- 1 root root 1180 Aug 13 10:14 /etc/passwd 存放用戶信息 -rw-r--r-- 1 root root 614 Aug 13 10:16 /etc/group 用戶組信息 每個用戶組裡面有什麼用戶? ---------- 1 root root 873 Aug 13 10:49 /etc/shadow 用戶密碼信息 ---------- 1 root root 501 Aug 13 10:16 /etc/gshadow 用戶組密碼信息
2.8 /etc/skel 每個新用戶的家目錄的模板
每個新用戶創建後會複製/etc/skel裡面的文件到自己的家目錄下
[root@zeq ~]# ll -a /etc/skel/ total 20 drwxr-xr-x. 2 root root 4096 Jul 10 18:21 . drwxr-xr-x. 78 root root 4096 Aug 13 11:08 .. -rw-r--r--. 1 root root 18 Mar 23 2017 .bash_logout 用戶退出的時候 運行裡面的命令 -rw-r--r--. 1 root root 176 Mar 23 2017 .bash_profile /etc/profile -rw-r--r--. 1 root root 124 Mar 23 2017 .bashrc /etc/bashrc
2.9 臨時成為root用戶讓zeq用戶查看系統日誌
1. sudo
2. cat(root) suid
3. 日誌加上 r許可權
4. root密碼
2.9.1 sudo -l 查看sudo配置
[zeq@zeq ~]$ sudo -l [sudo] password for zeq: 輸入密碼 Sorry, user zeq may not run sudo on zeq. 你沒有配置sudo
2.9.2 visudo = vim /etc/sudoers
授予zeq用戶 ls,touch,mkdir
zeq ALL=(ALL) /bin/ls, /bin/touch, /bin/mkdir
zeq進行測試
[zeq@zeq ~]$ sudo ls /root [sudo] password for zeq: 輸入密碼 install.log.syslog test.sh anaconda-ks.cfg oldboy.txt test.txt epel-release-7-9.noarch.rpm oldboy.ylj t.sh
2.9.3 授予zeq /bin/下所有命令
zeq ALL=(ALL) /bin/*
2.9.4 授予zeq/bin/下所有命令,禁止使用vi和rm命令
zeq ALL=(ALL) /bin/*, !/bin/rm, !/bin/su, !/bin/vi
2.9.5 授予zeq 系統所有命令並且不需要輸入密碼
zeq ALL=(ALL) NOPASSWD:ALL
2.10 用戶審計 行為審計(記錄用戶操作)
跳板機 堡壘機
1.硬體:齊治堡壘機
2.開源軟體:jumpserver
3.自己寫:shell腳本