這篇文章主要為大家展示了“l(fā)inux安全策略如何加固”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“l(fā)inux安全策略如何加固”這篇文章吧。
創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),溪湖企業(yè)網(wǎng)站建設(shè),溪湖品牌網(wǎng)站建設(shè),網(wǎng)站定制,溪湖網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,溪湖網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
賬號管理
一、口令鎖定策略
1、執(zhí)行備份
(1)、redhat執(zhí)行備份:
#cp -p /etc/pam.d/system-auth /etc/pam.d/system-auth_bak
(2)、SUSE9:
#cp -p /etc/pam.d/passwd /etc/pam.d/passwd.bak
(3)、SUSE10:
#cp -p /etc/pam.d/common-password /etc/pam.d/common-password.bak
2、修改策略設(shè),編輯文件/etc/pam.d/system-auth(SUSE:/etc/pam.d/passwd)增加如下內(nèi)容:
auth required pam_tally2.so deny=5 onerr=fail no_magic_root unlock_time=180 #unlock_time單位為秒
account required pam_tally2.so #(redhat5.1以上版本支持 pam_tally2.so,其他版本使用pam_tally.so)
二、口令生存周期
1、執(zhí)行備份:
#cp -p /etc/login.defs /etc/login.defs_bak
2、修改策略設(shè)置,編輯文件/etc/login.defs(vi /etc/login.defs),在文件中加入如下內(nèi)容(如果存在則修改,不存在則添加):
PASS_MAX_DAYS 90
PASS_MIN_DAYS 10
PASS_WARN_AGE 7
三、密碼復(fù)雜度
1、redhat系統(tǒng)
編輯文件/etc/pam.d/system-auth,在文件中找到如下內(nèi)容:
password requisite pam_cracklib.so,將其修改為:
password requisite pam_cracklib.so try_first_pass retry=3 dcredit=-1 lcredit=-1 ucredit=-1 ocredit=-1 minlen=8 #至少包含一個數(shù)字、一個小寫字母、一個大寫字母、一個特殊字符、且密碼長度>=8
2、suse9編輯/etc/pam.d/passwd、suse10以上編輯/etc/pam.d/common-password,在文件中加入如下內(nèi)容(如果文件中存在password的行請首先注釋掉):
password required pam_pwcheck.so nullok
password requisite pam_cracklib.so dcredit=-1 lcredit=-1 ucredit=-1 ocredit=-1 minlen=8 use_authtok
password required pam_unix2.so nullok use_first_pass use_authtok
四、刪除或鎖定無關(guān)賬號
1、如果以下用戶(lp|sync|halt|news|uucp|operator|games|gopher|smmsp|nfsnobody|nobody)沒有被刪除或鎖定,可以使用如下命令對其進行操作:
(1)、刪除用戶:
#userdel username
(2)、鎖定用戶:
#passwd -l username #鎖定用戶,只有具備超級用戶權(quán)限的使用者方可使用。
#passwd –d username #解鎖用戶,解鎖后原有密碼失效,登錄設(shè)置新密碼才能登錄。
#passwd -u username #解鎖用戶后,原密碼仍然有效。
(3)、修改用戶shell域為/bin/false
#usermod -s /bin/false username #命令來更改相應(yīng)用戶的shell為/bin/false,其中[name]為要修改的具體用戶名。
passwd -l lp
passwd -l sync
passwd -l halt
passwd -l news
passwd -l uucp
passwd -l operator
passwd -l games
passwd -l gopher
passwd -l smmsp
passwd -l nfsnobody
passwd -l nobody
usermod -s /bin/false lp
usermod -s /bin/false sync
usermod -s /bin/false halt
usermod -s /bin/false news
usermod -s /bin/false uucp
usermod -s /bin/false operator
usermod -s /bin/false games
usermod -s /bin/false gopher
usermod -s /bin/false smmsp
usermod -s /bin/false nfsnobody
usermod -s /bin/false nobody
五、口令重復(fù)限制
1、執(zhí)行備份
#cp -p /etc/pam.d/system-auth /etc/pam.d/system-auth.bak
#cp -p /etc/pam.d/passwd /etc/pam.d/passwd.bak
#cp -p /etc/pam.d/common-password /etc/pam.d/common-password.bak
2、創(chuàng)建文件/etc/security/opasswd用于存儲舊密碼,并設(shè)置權(quán)限。
#touch /etc/security/opasswd
#chown root:root /etc/security/opasswd
#chmod 600 /etc/security/opasswd
3、修改策略設(shè)置
#vi /etc/pam.d/system-auth((SUSE9:/etc/pam.d/passwd、SUSE10以上/etc/pam.d/common-password)在類似password sufficient pam_unix.so所在行末尾增加remember=5,中間以空格隔開.如果沒有則新增,例如:
password sufficient pam_unix.so md5 shadow nullok try_first_pass use_authtok remember=5
=================
口令策略
一、文件與目錄缺省權(quán)限控制
1、首先對/etc/profile進行備份:
#cp /etc/profile /etc/profile.bak
2、編輯文件/etc/profile,在文件末尾加上如下內(nèi)容:
umask 027
3、執(zhí)行以下命令讓配置生效:
#source /etc/profile
二、用戶最小權(quán)限控制
1、賦予用戶相關(guān)賬號文件最小權(quán)限
#chmod 644 /etc/passwd
#chmod 400 /etc/shadow
#chmod 644 /etc/group
#chmod 644 /etc/services
#chmod 600 /etc/xinetd.conf
#chmod 600 /etc/security
三、修改SSH的Banner警告信息
1、如果此項檢查不合規(guī),執(zhí)行以下步驟進行修復(fù)。
執(zhí)行如下命令創(chuàng)建ssh banner信息文件:
#touch /etc/ssh_banner
#chown bin:bin /etc/ssh_banner
#chmod 644 /etc/ssh_banner
#echo " Authorized only. All activity will be monitored and reported " > /etc/ssh_banner
可根據(jù)實際需要修改該文件的內(nèi)容。
2、修改/etc/ssh/sshd_config文件,添加如下行:
Banner /etc/ssh_banner
3、重啟sshd服務(wù):
#/etc/init.d/sshd restart
四、設(shè)置關(guān)鍵文件的屬性
1、更改該日子文件屬性
#chattr +a /var/log/messages #如果不存在則忽略
========================
認(rèn)證授權(quán)
一、啟用遠程日志功能
1、linux
編輯文件 /etc/syslog.conf或者/etc/rsyslog.conf,增加如下內(nèi)容:
*.* @<日志服務(wù)器ip或者域名>
2、suse
編輯文件/etc/syslog-ng/syslog-ng.conf,增加如下內(nèi)容:
destination logserver { udp("192.168.56.168" port(514)); };
log { source(src); destination(logserver); };
#日志服務(wù)器ip視實際情況來確定。
3、重啟syslog服務(wù)
#/etc/init.d/syslog stop
#/etc/init.d/syslog start
二、記錄安全事件日志
1、redhat5.x之前編輯/etc/syslog.conf,在文件中加入如下內(nèi)容:
*.err;kern.debug;daemon.notice /var/adm/messages,其中/var/adm/messages為日志文件。
(1)、如果該文件不存在,則創(chuàng)建該文件,命令為:
#touch /var/adm/messages
(2)、修改權(quán)限為666,命令為:
#chmod 666 /var/adm/messages
(3)、重啟日志服務(wù):
#/etc/init.d/syslog restart
2、redhat6.x編輯etc/rsyslog.conf,在文件中加入如下內(nèi)容:
*.err;kern.debug;daemon.notice /var/adm/messages,其中/var/adm/messages為日志文件。
(1)、如果該文件不存在,則創(chuàng)建該文件,命令為:
#touch /var/adm/messages
(2)、修改權(quán)限為666,命令為:
#chmod 666 /var/adm/messages
(3)、重啟日志服務(wù):
#/etc/init.d/syslog restart
3、SUSE編輯文件/etc/syslog-ng/syslog-ng.conf,在文件中加入如下內(nèi)容:
filter f_msgs { level(err) or facility(kern) and level(debug) or facility(daemon) and level(notice); };
destination msgs { file("/var/adm/msgs"); };
log { source(src); filter(f_msgs); destination(msgs); }; 其中/var/adm/msgs為日志文件。
(1)、如果該文件不存在,則創(chuàng)建該文件,命令為:
#touch /var/adm/msgs
(2)、修改權(quán)限為666,命令為:
#chmod 666 /var/adm/msgs
(3)、重啟日志服務(wù):
#/etc/init.d/syslog restart
======
系統(tǒng)服務(wù)
一、限制root用戶SSH遠程登錄
1、執(zhí)行備份:
#cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config_bak
2、新建一個普通用戶并設(shè)置高強度密碼(防止設(shè)備上只存在root用戶可用時,無法遠程訪問):
#useradd username
#passwd username
3、禁止root用戶遠程登錄系統(tǒng)
(1)、編輯文件/etc/ssh/sshd_config(vi /etc/ssh/sshd_config),修改PermitRootLogin值為no并去掉注釋。
PermitRootLogin no #則禁止了root從ssh登錄。
(2)、重啟SSH服務(wù)
#/etc/init.d/sshd restart
4、修改SSH協(xié)議版本
(1)、編輯文件/etc/ssh/sshd_config(vi /etc/ssh/sshd_config),修改Protocol的值為2并去掉注釋。
Protocol 2
(2)、重啟ssh服務(wù)
#/etc/init.d/sshd restart
=============
文件權(quán)限
一、登陸超時時間設(shè)置
1、執(zhí)行備份
#cp -p /etc/profile /etc/profile_bak
2、在/etc/profile文件增加以下兩行(如果存在則修改,否則手工添加):
#vi /etc/profile
TMOUT=300 #TMOUT按秒計算
export TMOUT
二、系統(tǒng)core dump狀態(tài)
1、編輯文件/etc/security/limits.conf(vi /etc/security/limits.conf),在文件末尾加入如下兩行(存在則修改,不存在則新增):
* soft core 0
* hard core 0
2、編輯文件/etc/profile(vi /etc/profile)注釋掉如下行:
#ulimit -S -c 0 > /dev/null 2>&1
三、修改SSH的Banner信息
1、修改文件/etc/motd的內(nèi)容,如沒有該文件,則創(chuàng)建它:
#touch /etc/motd
2、使用如下命令在文件/etc/motd中添加banner信息。
#echo " Authorized users only. All activity may be monitored and reported " > /etc/motd
可根據(jù)實際需要修改該文件的內(nèi)容。
四、禁止組合鍵關(guān)機
編輯文件/etc/inittab,將以下行刪除、注釋,或者將此行:
ca::ctrlaltdel:/sbin/shutdown -r -t 4 now
修改為:
ca::ctrlaltdel:/bin/true
五、禁止ICMP重定向
1、備份文件
#cp -p /etc/sysctl.conf /etc/sysctl.conf_bak
2、編輯文件 /etc/sysctl.conf,將net.ipv4.conf.all.accept_redirects的值改為0
3、使配置生效#sysctl -p
六、使用PAM認(rèn)證模塊禁止wheel組之外的用戶su為root
1、編輯文件(vi /etc/pam.d/su)
(1)、redhat4.x(32位)在文件開頭加入如下兩行(有則修改,沒有則添加):
auth sufficient /lib/security/$ISA/pam_rootok.so
auth required /lib/security/$ISA/pam_wheel.so use_uid
#注意auth與sufficient之間由兩個tab建隔開,sufficient與動態(tài)庫路徑之間使用一個tab建隔開
(2)、redhat4.x(64位)在文件開頭加入如下兩行(有則修改,沒有則添加):
auth sufficient /lib64/security/$ISA/pam_rootok.so
auth required /lib64/security/$ISA/pam_wheel.so use_uid
#注意auth與sufficient之間由兩個tab建隔開,sufficient與動態(tài)庫路徑之間使用一個tab建隔開
(3)、redhat5.x和redhat6.x在文件開頭加入如下兩行(有則修改,沒有則添加):
auth sufficient pam_rootok.so
auth required pam_wheel.so use_uid
#注意auth與sufficient之間由兩個tab建隔開,sufficient與動態(tài)庫路徑之間使用一個tab建隔開
說明:(這表明只有wheel組中的用戶可以使用su命令成為root用戶。你可以把用戶添加到wheel組,以使它可以使用su命令成為root用戶。)
添加方法:
#usermod -G wheel username #username為需要添加至wheel組的賬戶名稱。
七、禁止IP源路由
1、如果此項檢查失敗,請執(zhí)行以下命令進行修復(fù):
for f in /proc/sys/net/ipv4/conf/*/accept_source_route
do
echo 0 > $f
done
八、更改主機解析地址的順序
1、編輯/etc/host.conf文件
#vi /etc/host.conf,在空白處加入下面三行:
order hosts,bind #第一項設(shè)置首先通過DNS解析IP地址,然后通過hosts文件解析。
multi on #第二項設(shè)置檢測是否"/etc/hosts"文件中的主機是否擁有多個IP地址(比如有多個以太口網(wǎng)卡)。
nospoof on #第三項設(shè)置說明要注意對本機未經(jīng)許可的IP欺騙。
九、更改歷史命令
1、編輯文件/etc/profile,在文件中加入如下兩行(存在則修改):
HISTFILESIZE=5
HISTSIZE=5
2、執(zhí)行以下命令讓配置生效
#source /etc/profile
以上是“l(fā)inux安全策略如何加固”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!