進程和計劃任務管理安全
1. 程序和進程的關係服務器
程序:保存在硬盤、光盤等介質中的可執行代碼和數據;靜態保存的代碼工具
進程:在 CPU 及內存中運行的程序代碼;動態執行的代碼;父、子進程:每一個進程能夠建立一個或多個進程ui
基本命令spa
1):ps命令(processes statistc):查看靜態的進程統計信息操作系統
格式: ps aux ;ps –elf命令行
2):top命令:查看動態的進程排名信息代理
3):pgrep命令:根據特定條件查詢進程 PID 信息調試
4):pstree命令:以樹形結構列出進程信息日誌
格式:pstree –aup ;pstree –ap 用戶
2.進程的啓動方式
手工啓動
前臺啓動(foreground,前臺):用戶輸入命令,直接執行程序
後臺啓動(background,後臺):在命令行尾加入「&」符號
[root@localhost ~]# cp /dev/cdrom mycd.iso &
[1] 28454 (輸出信息中包括後臺任務序號、PID號)
調度啓動
使用 at 命令,設置一次性計劃任務;使用 crontab 命令,設置週期性計劃任務
3.進程的先後臺調度
1):Ctrl+Z 組合鍵:將當前進程掛起,即調入後臺並中止執行
2):jobs 命令:查看處於後臺的任務列表 ;格式:jobs -l
3):fg 命令:將後臺進程恢復到前臺運行,可指定任務序號
4.終止進程
Ctrl+C 組合鍵:中斷正在執行的命令
kill、killall 命令
kill用於終止指定PID號的進程
killall用於終止指定名稱的全部進程
-9 選項用於強制終止
pkill命令:根據特定條件終止相應的進程
經常使用命令選項: -U:根據進程所屬的用戶名終止相應進程; -t:根據進程所在的終端終止相應進程
5.計劃任務管理
1):at命令:一次性計劃任務,前提是對應的系統服務atd必須已經運行;計劃任務執行任務的時間必須安排在當前系統時間後。
服務腳本名稱:/etc/init.d/atd;格式:at [HH:MM] [yyyy-mm-dd]
2):crontab命令:按照預先設置的時間週期(分鐘、小時、天……)重複執行用戶指定的命令操做;屬於週期性計劃任務;服務腳本名稱:/etc/init.d/crond
主要設置文件
全局配置文件,位於文件:/etc/crontab
系統默認的設置,位於目錄:/etc/cron.*/
用戶定義的設置,位於文件:/var/spool/cron/用戶名
3):管理cron計劃任務
編輯計劃任務:crontab -e [-u 用戶名]
查看計劃任務:crontab -I [-u 用戶名
刪除計劃任務:crontab -r [-u 用戶名]
注意:root用戶能夠管理指定用戶的計劃任務;普通用戶只能管理本身的計劃任務
6. 時間數值的特殊表示方法
* 表示該範圍內的任意時間
, 表示間隔的多個不連續時間點
- 表示一個連續的時間範圍
/ 指定間隔的時間頻率
舉個栗子
0 17 * * 1-5 週一到週五天天17:00
30 8 * * 1,3,5 每週1、3、五的8點30分
0 8-18/2 * * * 8點到18點之間每2小時
0 * */3 * * 每3天
系統故障分析和排查
1. 日誌文件分析
功能:用於記錄系統、程序運行中發生的各類事件;經過閱讀日誌,有助於診斷和解決系統故障
分析:
內核及系統日誌:由系統服務syslog統一進行管理,日誌格式基本類似
用戶日誌:記錄系統用戶登陸及退出系統的相關信息
程序日誌:由各類應用程序獨立管理的日誌文件,記錄格式不統一
保存位置:默認位於:/var/log 目錄下
主要日誌文件:
日誌 |
存放位置 |
內核及公共消息 |
/var/log/messages |
計劃任務 |
/var/log/cron |
系統引導 |
/var/log/dmesg |
郵件系統 |
/var/log/maillog |
用戶登陸 |
/var/log/lastlog;/var/log/secure;/var/log/wtmp;/var/run/btmp |
2.內核及系統日誌
由系統服務 rsyslogd 統一管理
軟件包:rsyslog-5.8.10-8.el6.x86_64
主要程序:/sbin/rsyslogd
配置文件:/etc/rsyslog.conf
日誌消息的級別
0 EMERG(緊急):會致使主機系統不可用的狀況
1 ALERT(警告):必須立刻採起措施解決的問題
2 CRIT(嚴重):比較嚴重的狀況
3 ERR(錯誤):運行出現錯誤
4 WARNING(提醒):可能會影響系統功能的事件
5 NOTICE(注意):不會影響系統但值得注意
6 INFO(信息):通常信息
7 DEBUG(調試):程序或系統調試信息等
日誌記錄的通常格式
3.用戶日誌分析
保存了用戶登陸、退出系統等相關信息
/var/log/lastlog:最近的用戶登陸事件
/var/log/wtmp:用戶登陸、註銷及系統開、關機事件
/var/run/utmp:當前登陸的每一個用戶的詳細信息
/var/log/secure:與用戶驗證相關的安全性事件
分析工具:users 、who、w、last、lastb
4.程序日誌分析
由相應的應用程序獨立進行管理
Web服務:/var/log/httpd/ ;access_log、error_log
代理服務:/var/log/squid/;access.log、cache.log、squid.out、store.log
FTP服務:/var/log/xferlog
分析工具:
文本查看、grep過濾檢索、Webmin管理套件中查看
awk、sed等文本過濾、格式化編輯工具
Webalizer、Awstats等專用日誌分析工具
注意:日誌並非徹底可靠的,高明的黑客在入侵系統後,常常會打掃現場
5.日誌管理策略
1):及時做好備份和歸檔
2):延長日誌保存期限
3):控制日誌訪問權限:日誌中可能會包含各種敏感信息,如帳戶、口令等
4):集中管理日誌
將服務器的日誌文件發到統一的日誌文件服務器
便於日誌信息的統一收集、整理和分析
杜絕日誌信息的意外丟失、惡意篡改或刪除
6.修復 MBR 扇區故障
1):故障緣由:病毒、木馬等形成的破壞;不正確的分區操做、磁盤讀寫誤操做
2):故障現象:找不到引導程序,啓動中斷;沒法加載操做系統,開機後黑屏
3):解決思路:應提早做好備份文件;以 RHEL 6 安裝光盤引導進入急救模式;從備份文件中恢復
7.修復 GRUB 引導故障
1):故障緣由:MBR 中的 GRUB 引導程序遭到破壞;grub.conf 文件丟失、引導配置有誤
2):故障現象:系統引導停滯,顯示「grub>」 提示符
3):解決思路:嘗試手動輸入引導命令;進入急救模式,重寫或者從備份中恢復 grub.conf
;向 MBR 扇區中重建 grub 程序
8.遺忘 root 用戶的密碼
1):故障緣由:遺忘 root 用戶的密碼
2):故障現象:沒法進行須要 root 權限的管理操做;若沒有其餘可用賬號,將沒法登陸系統
3):解決思路
方法一:引導進入單用戶模式,重設密碼:grub > kernel ... single 或 s 或 1
方法二:進入急救模式,重設密碼
9. 修復文件系統
1):故障緣由:非正常關機、忽然斷電、設備讀寫失誤等;文件系統的超級塊(super-block)信息被破壞
2):故障現象:沒法向分區中讀取或寫入數據;啓動後提示「Give root password for maintenance」
3):解決思路:根據提示輸入 root 口令,進入修復狀態;使用 fsck 命令進行修復
10.磁盤資源耗盡故障
1):故障緣由:磁盤空間已被大量的數據佔滿,空間耗盡;雖然還有可用空間,但文件數i節點耗盡
2):故障現象:沒法寫入新的文件,提示「… : 設備上沒有空間」;部分程序沒法運行,甚至系統沒法啓動
3):解決思路:清理磁盤空間,刪除無用、冗餘的文件;轉移或刪除佔用大量 i 節點的瑣碎文件;進入單用戶模式、急救模式進行修復;爲用戶設置磁盤配額
11. 磁盤設備中存在壞道
1):故障緣由:磁盤設備中存在壞道(邏輯的或物理的)
2):故障現象
讀取磁盤中的數據時,磁盤設備發出異常聲響。
訪問磁盤中的某個文件時,反覆讀取且出錯,提示文件損壞
對於新創建的分區沒法完成格式化
系統使用該磁盤時頻繁死機
3):解決思路:檢測硬盤中是否存在壞道;修復硬盤,或更換新的硬盤