1、刪除系統不需要的預設賬號
# userdel lp
# groupdel lp
#passwd –l lp
如果下面這些系統預設帳號不需要的話,建議刪除。
lp, sync news, uucp, games, bin、man
修改一些系統帳號的shell變數,例如uucp,ftp和news等,還有一些僅僅需要ftp功能的帳號,一定不要給他們設定/bin/bash或者/bin/sh等shell變數。可以在/etc/passwd中將它們的shell變數設為/bin/false或者/dev/null等,也可以使用usermod -s /dev/null
2、限制超級管理員遠端登入
參考配置操作
ssh:
#vi /etc/ssh/sshd_config
把 permitrootlogin yes
改為 permitrootlogin no
重啟sshd服務
#service sshd restart
3、修改ssh埠
vi /etc/ssh/sshd_config
修改 port 22
修改成其他埠,迷惑非法試探者
linux下ssh預設的埠是22,為了安全考慮,現修改ssh的埠為1433,修改方法如下 :
/usr/sbin/sshd -p 1433
console:
在/etc/securetty檔案中配置:console = /dev/tty01
#service sshd restart
3、預設密碼生存週期限制
cat /etc/login.defs
參考配置操作
pass_max_days 90
pass_min_days 0
4、設定關鍵目錄的許可權
參考配置操作
通過chmod命令對目錄的許可權進行實際設定。
補充操作說明
etc/passwd 必須所有使用者都可讀,root使用者可寫 –rw-r—r—
/etc/shadow 只有root可讀 –r--------
/etc/group 必須所有使用者都可讀,root使用者可寫 –rw-r—r—
使用如下命令設定:
chmod 644 /etc/passwd
chmod 600 /etc/shadow
chmod 644 /etc/group
如果是有寫權vi限,就需移去組及其它使用者對/etc的寫許可權(特殊情況除外)
執行命令#chmod -r go-w /etc
5、修改umask值
參考配置操作
設定預設許可權:
vi /etc/profile
vi /etc/bash.bashrc
在末尾增加umask 027
修改檔案或目錄的許可權,操作舉例如下:
#chmod 444 dir ; #修改目錄dir的許可權為所有人都為唯讀。
根據實際情況設定許可權;
補充操作說明
如果使用者需要使用乙個不同於預設全域性系統設定的umask,可以在需要的時候通過命令列設定,或者在使用者的shell啟動檔案中配置
補充說明
umask的預設設定一般為022,這給新建立的檔案預設許可權755(777-022=755),這會給檔案所有者讀、寫許可權,但只給組成員和其他使用者讀許可權。
umask的計算:
umask是使用八進位制資料**設定的,對於目錄,該值等於八進位制資料**777減去需要的預設許可權對應的八進位制資料**值;對於檔案,該值等於八進位制資料**666減去需要的預設許可權對應的八進位制資料**值。
6、資源限制
參考配置操作
第一步
編輯limits.conf檔案
(vi /etc/security/limits.conf),加入或改變下面這些行:
* soft core 0
* hard core 0
* hard rss 5000
* hard nproc 20
* soft nofile 10000
* hard nofile 10000
如果限制limitu使用者組對主機資源的使用,
加入:
@limitu soft core 0
@limitu hard nproc 30
@limitu - maxlogins 5
這些行的的意思是:「core 0」表示禁止建立core檔案;「nproc 20」把最多程序數限制到20;「rss 5000」表示除了root之外,其他使用者都最多只能用5m記憶體。上面這些都只對登入到系統中的使用者有效。通過上面這些限制,就能更好地控制系統中的使用者對程序、core檔案和記憶體的使用情況。星號「*」表示的是所有登入到系統中的使用者。
第二步
session required /lib/security/pam_limits.so
補充說明:
加入這一行後「/etc/pam.d/sudologin」檔案是這樣的:
#%pam-1.0 auth required /lib/security/pam_securetty.so
auth required /lib/security/pam_pwdb.so shadow nullok
auth required /lib/security/pam_nologin.so a
ccount required /lib/security/pam_pwdb.so password required /lib/security/pam_cracklib.so
password required /lib/security/pam_pwdb.so
nullok use_authtok md5 shadow
session required /lib/security/pam_pwdb.so
session required /lib/security/pam_limits.so
#session optional /lib/security/pam_console.sodaemon
統計程序數量 ps ax | grep httpd | wc -l
7、設定目錄許可權
參考配置操作
檢視重要檔案和目錄許可權:ls –l
更改許可權:
對於重要目錄,建議執行如下類似操作:
# chmod -r 750 /etc/init.d/*
這樣只有root可以讀、寫和執行這個目錄下的指令碼。
8、設定關鍵檔案的屬性
# lsattr /etc/shadow
# lsattr /etc/passwd
# lsattr /etc/group
1、參考配置操作
# chattr +i /etc/shadow
# chattr +i /etc/passwd
# chattr +i /etc/group
建議管理員對關鍵檔案進行特殊設定(不可更改或只能追加等)。
9、使用pam禁止任何人su為root
參考配置操作
auth sufficient /lib/security/pam_rootok.so
auth required /lib/security/pam_wheel.so group=wheel
這表明只有wheel組的成員可以使用su命令成為root使用者。你可以把使用者新增到wheel組,以使它可以使用su命令成為root使用者。新增方法為:
# chmod –g10 username
10、更改主機解析位址的順序
「/etc/host.conf」 說明了如何解析位址。編輯「/etc/host.conf」 檔案(vi /etc/host.conf),加入下面該行:
# lookup names via dns first then fall back to /etc/hosts. order bind,hosts
multi on
# check for ip address spoofing
nospoof on
第一項設定首先通過dns解析ip位址,然後通過hosts檔案解析。第二項設定檢測是否「/etc/hosts」檔案中的主機是否擁有多個ip位址(比如有多個以太口網絡卡)。第三項設定說明要注意對本機未經許可的ip欺騙。
11、開啟syncookie
# echo 1 > /proc/sys/net/ipv4/tcp_syncookies
net.ipv4.tcp_syncookies = 1
可以加入/etc/rc.d/rc.local中。/
12、不響應icmp請求:
# echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all
13、參考配置操作
sysctl -w net.ipv4.tcp_max_syn_backlog = 2048
永久有效需要在vim /etc/sysctl.conf 直接新增上述net.ipv4.tcp_max_syn_backlog = 2048,而後執行sysctl -p
上述操作主要是對ubuntu、linux系統進行評估分析,做了幾個方面的安全加固,主要策略涉及到如下幾點:
取消所有伺服器的root遠端ssh登入,限制su - root的使用者許可權,同時ssh登入埠調整,外網ssh登入全部調整;
調整密碼過期時間和複雜度;
調整網路泛洪、syn等防攻擊策略引數;
清理伺服器無效賬戶如lp、news等,調整系統關鍵目錄許可權;
優化伺服器連線數引數;
日誌管理:登入認證記錄等;
Android加固方案
執行時修改dalvik指令 定位 odex 檔案的mao位址,odex檔案確定dex檔案的偏移量,解析dex檔案頭,定位各部分所在分割槽,找到byte code的insns引數,通過mprotect修改 加殼 源apk 殼apk 加密工具 加密演算法加密源aok,與殼apk合併得到新dex檔案,替換...
linux系統加固
系統加固步驟 1 修改前備份配置檔案 etc login.defs cp r etc login.defs etc login.defs.bak 2 vi etc login.defs 修改如下配置 pass max days 90 使用者的密碼不過期最多的天數 pass min days 0 密碼...
linux系統加固
主要加固內容 操作檔案備份格式 原始檔.bakdate y m d h m 01 鎖定不常用使用者 02 密碼輸入失敗3次鎖定1分鐘 03 設定密碼強度 8位4種字元 04 5分鐘無活動自動退出 05 修改儲存歷史命令數為10 06 修改使用者密碼使用最長時間90天,修改密碼最小長度8位 07 給 ...