1.5python
用戶管理mysql
內容:linux
1. 設置命令和腳本開機自啓動web
2. 用戶相關的配置文件和目錄面試
3. 用戶管理命令sql
4. sudo臨時爲普通用戶提權shell
5. yum相關知識vim
1) 腳本放在/etc/rc.localcentos
2) chkconfig緩存
(1) 這個腳本 存放在 /etc/init.d下面
(2) 腳本要有x(執行)權限
(3) 腳本開始必須有能夠被chkconfig識別的標記
(4) 把腳本加入到chkconfig管理
[root@oldboy init.d]# cat gao.sh 腳本存放在/etc/init.d下
date +%F
[root@oldboy init.d]# chmod +x gao.sh 給腳本x權限
[root@oldboy init.d]# ls -l gao.sh
-rwxr-xr-x. 1 root root 9 Jan 5 02:44 gao.sh
[root@oldboy init.d]# chkconfig --add gao.sh 將腳本添加自啓動
service gao.sh does not support chkconfig 報錯:chkconfig命令不支持
腳本必須有能夠被chkconfig識別的標記
[root@oldboy init.d]# head /etc/init.d/iptables 找chkconfig管理命令的特色(以iptables爲例)
#!/bin/sh
#
# iptables Start iptables firewall
#
# chkconfig: 2345 08 92 將此行添加至腳本
# description: Starts, stops and saves iptables firewall
[root@oldboy init.d]# cat gao.sh
date +%F
# chkconfig: 2345 08 92 - -del 刪除自啓動任務
[root@oldboy init.d]# chkconfig - -add gao.sh 添加自啓動任務
[root@oldboy init.d]# chkconfig |grep "gao.sh" 查看
gao.sh 0:off 1:off 2:on 3:on 4:on 5:on 6:off
# chkconfig: 2345 08 92
2345運行級別 啓動順序 關閉順序
小結
1.必須放在/etc/init.d 而且有執行權限
2.開頭要有chkconfig要求格式
# chkconfig: 2345 99 99 (系統命令啓動順序有要求,本身建立的通常沒事)
3.添加到chkconfig管理
root用戶忘記密碼如何解決
1. 單用戶模式
https://blog.51cto.com/lidao/1932128
2. 救援模式
普通用戶忘記密碼
1. root用戶修改
2. /etc/passwd 把第二列密碼佔位符刪掉
id
cat /etc/passwd
建立一個用戶 useradd oldboy
cp /etc/skel/* /home/oldboy 系統至關於會執行這個操做
ls -la /etc/skel
~/.bash_logout 用戶退出系統的時候 Ctrl +d 會運行這個文件的內容
~/.bash_profile 做用同/etc/profile
~/.bashrc 做用同/etc/bashrc
1. sh 與 bash區別
[root@gao ~]# useradd test -s /bin/sh
[root@gao ~]# su - test
-sh-4.1$
2. 查看隱藏文件
[root@gao ~]# cd /etc/skel/
[root@gao skel]# ls .[^.]*
.bash_logout .bash_profile .bashrc
3. CentOs6.9下的shell
[root@gao skel]# cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/dash
/bin/tcsh
/bin/csh
1.以下登陸環境故障的緣由及解決辦法
-bash-4.1# cp /etc/skel/.bash* ~
-bash-4.1# logout
緣由:這個用戶家目錄下面與環境變量有關的文件 沒了
模擬:
[root@oldboy ~]# rm -rf .bash*
[root@oldboy ~]# logout
[root@oldboy /]# su - root
-bash-4.1#
解決:
[root@oldboy ~]#cp /etc/skel/.bash* ~
[root@oldboy ~]#logout
[root@oldboy /]#su - oldboy
[oldboy@gao ~]$
2.oldboy用戶的登陸環境故障,複製家目錄模板權限不夠
-s 指定用戶的使用shell /bin/bash 默認 /sbin/nologin 添加虛擬用戶
-M 不建立家目錄 (虛擬用戶)
-g 指定用戶屬於的組
-c 指定用戶說明信息
-r 連窩端 刪除與用戶有關的全部信息(家目錄)
在工做中,不要刪除用戶,可能會誤刪除用戶數據
方法:在/etc/passwd 對應用戶前加註釋#
-c 指定說明信息
-s 修改用戶登陸shell
-g 屬於的家庭 用戶的名字 --基本組
-G 屬於多的家庭 --附加組
--stdin 從管道中獲取用戶的密碼 (非交互式)
echo ‘123456’ |passwd --stdin oldboy 非交互式
1.密碼複雜 12位以上字母數字特殊字符
2.保存密碼
keepass 軟件,密碼存放在本地,,本地保險櫃
lastpass 在線版本,,銀行的保險櫃
3.大的企業用戶和密碼統一管理(至關於活動目錄(AD),openldap域)
4.動態密碼:動態口令,第三方提供本身的開發也很簡單
給重要的文件或命令作一個指紋
文件的內容變化 === 指紋變化
文件的內容變化 === 指紋變化
(1)給這個文件建立指紋
md5sum oldboy.txt
(2)如何快速的對比指紋
1)把你的指紋記錄下來 md5sum oldboy.txt >finger.txt finger.txt是指紋庫
2)如何進行對比 md5sum -c finger.txt
(3)定時任務+md5sum定時檢查
-R 遞歸修改文件或目錄的全部者和用戶組
實例1-1 添加一個用戶alex指定uid爲888 禁止用戶登陸系統 不建立家目錄,用戶說明信息爲nologin CentOs
[root@gao skel]# useradd alex -u 888 -s /sbin/nologin -M -c "nologin CentOs"
[root@gao skel]# tail -1 /etc/passwd
alex:x:888:888:nologin CentOs:/home/alex:/sbin/nologin
實例1-2 企業場景:用戶及密碼管理 --指紋
方法:給重要的文件或命令,作一個指紋
原理:文件內容變化,指紋就會變化
步驟:
1. 建立指紋
[root@gao oldboy]# touch gao.txt
[root@gao oldboy]# md5sum gao.txt 爲文件建立指紋
d41d8cd98f00b204e9800998ecf8427e gao.txt
2. 記錄指紋
[root@gao oldboy]# md5sum gao.txt >police.log 將指紋記錄到指紋庫中
[root@gao oldboy]# echo 'I am a student'>gao.txt 改變文件內容
[root@gao oldboy]# md5sum gao.txt 再生成指紋
553ae6494e59791c64771d6e4ac36786 gao.txt
3. 根據指紋庫指紋對比 -c = = = - -check
[root@gao oldboy]# md5sum -c police.log 指紋與指紋庫對比,不匹配
gao.txt: FAILED
md5sum: WARNING: 1 of 1 computed checksum did NOT match
[root@gao oldboy]# md5sum gao.txt>police.log 將新指紋輸入到指紋庫
[root@gao oldboy]# md5sum -c police.log 指紋與指紋庫對比,匹配
gao.txt: OK
[root@gao oldboy]# >gao.txt 再次清空文件
[root@gao oldboy]# echo 'd41d8cd98f00b204e9800998ecf8427e gao.txt'>police.log
[root@gao oldboy]# md5sum -c police.log 將最開始指紋輸入到指紋庫,對比,匹配
gao.txt: OK
文件的指紋隨內容的變化而變化
groupadd 建立用戶組
-g 指定用戶組的gid
linux中新建立用戶默認uid=gid
[root@oldboy oldboy]# useradd -u 666 -s /sbin/nologin -M mysql
[root@oldboy oldboy]# id mysql
uid=666(mysql) gid=666(mysql) groups=666(mysql)
w每部分的含義
[root@gao oldboy]# w 最近1分鐘 5 15 分鐘
06:36:45 up 22:31, 2 users, load average: 0.00, 0.00, 0.00
錯誤 25 column window is too narrow 窗口過小
w
uptime
top 1.-P /默認按CPU排序 2.-M 按內存使用率排序
htop 加強版的top命令
iotop 顯示系統中每一個進程使用的磁盤io
iftop 顯示系統網絡流量
ps aux cpu與內存的使用率 默認不排序
和sort -rnk2搭配 增長sort -h參數
sort -h 以人類可讀的形式進行排序
-r 倒序/逆序 -n 把內容當作數字 進行排序
-k 指定某一列進行排序
例:查看佔地大的文件或目錄並按大小順序排序
du -sh /*|sort -rhk1
last 哪一個用戶 在何時 從哪裏 遠程登錄你的系統 用戶登陸的信息
lastlog 顯示Linux中全部用戶最近一次遠程登陸的信息
模擬佔用CPU
dd if=/dev/zero of=/tmp/100 bs=1k count=10000000
查看佔地大的文件或目錄並按大小順序排序
du -sh /*|sort -rhk1
擴展:
history -c 清除命令行 歷史記錄
歷史記錄還被保存在日誌裏
總結:
1. 面試題-讓一個腳本開機自啓動?
2. 如何讓一個腳本被chkconfig管理
3. 與用戶有關的文件和目錄
4. 案例提示:-bash-4.1$緣由及解決過程
5. 一堆命令
6. 添加虛擬用戶
7. 查看系統性能命令 系統管理命令 進程管理命令
題目:
root用戶密碼忘記如何解決
1.單用戶模式 √
https://blog.51cto.com/lidao/1932128
2.救援模式
2.批量添加3個用戶stu01,stu02....stu10,並設置8位密碼(禁止使用for,while等循環)
批量添加10個用戶stu01,stu02....stu10,並設置8位隨機密碼(禁止使用for,while等循環)
visudo root授予尚方寶劍
sudo -l 普通用戶查看尚方寶劍
root用戶操做
visudo ==vim /etc/sudoers visudo命令授予普通用戶權限
92gg 切換到文件的第92行
oldboy ALL=(ALL) /bin/ls,/bin/touch,/usr/bin/vim 授予用戶命令權限
ALL授予全部權限 oldboy前加% 表示授予oldboy組權限
oldboy用戶操做
sudo -l 查看擁有的尚方寶劍
輸入oldboy密碼
sudo ls /root 使用尚方寶劍
1./etc/passwd把root 密碼佔位符x刪去,普通用戶就能夠隨意登陸root
2.修改sudo 配置文件
oldboy ALL=(ALL) NOPASSWD: /bin/ls,/bin/touch,/usr/bin/vim
NOPASSWD ; (冒號空格)
sudo -k 清除密碼緩存
visudo 授予oldboy用戶權限
管理員登陸oldboy用戶
sudo su - 切換到root身份
oldboy ALL=(ALL) /bin/*
oldboy ALL=(ALL) /bin/*, ! /bin/vi
su 切換用戶的時候不更新環境變量
env 顯示當前的環境變量
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
MAIL=/var/spool/mail/root
PWD=/root
su - 切換到root用戶並更新環境變量
MAIL=/var/spool/mail/oldboy
PATH=/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/oldboy/bin
PWD=/home/oldboy
1.齊治的堡壘機:商業產品
2.gateone web 跳板機
3.python開發的開源的跳板機產品
開源跳板機(堡壘機) Jumpserver部署詳解
alex寫的crazyEYE
4.shell跳板機
日誌,行爲記錄在本地 --誰什麼時間對服務器進行什麼命令
跳板機官網 (瞭解)
http://liftoffsoftware.com/Products/GateOne
http://demo.jumpserver.org
跳板機能夠實現 sudo的功能
yum相關知識
yum從網上下載
yum下載軟件的地方===yum源(軟件倉庫)
base CentOS-6 - Base 6,706
extras CentOS-6 - Extras 47
updates CentOS-6 - Updates 857
epel系統yum源的擴展 Extra Packages for Enterprise Linux 6 - x86_64 12,447
增長epel源方法:
mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.backup
mv /etc/yum.repos.d/epel-testing.repo /etc/yum.repos.d/epel-testing.repo.backup
備份
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
下載
http://mirrors.aliyun.com/help/epel 阿里雲
https://mirror.tuna.tsinghua.edu.cn/help/epel/ 清華
http://ftp.sjtu.edu.cn/fedora/epel/ 上海交大
1. 網絡問題,,慢
2. epel源是阿里
base extra updates 默認是國外的
解決:
更新默認yum源 到阿里找centos的軟件包
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
小結:
1. yum源(軟件倉庫)
2. 如何更新base源 如何添加epel源
3. 常見的yum源 阿里 清華 網易 搜狐
直接下載軟件
https://mirrors.aliyun.com/centos/6.9/os/x86_64/Packages/lrzsz-0.12.20-27.1.el6.x86_64.rpm