linux-openssh高級密碼策略

    昨日突然看見有人在網上詢問怎麼加固openssh 使用密碼+證書雙重認證,看到了一種解決方法,就是使用open***先登錄上去 再使用openssh證書登錄,我的媽呀,爲了加個密碼還要專門搞個open***,其實如果咱們的現有部署本身就要open***也沒什麼說的,可是如果不需要就多餘了。而且又開了一個***大門! 

    好像openssh不支持密碼和證書同時認證,要麼證書,要麼密碼隨便哪個成功就好了,不能"且“關係!  怎麼辦呢,考慮了一下有幾個方案

   1,最簡單的方法就是製作key時加上密碼短語,不過這個不方便集中管理!

 

   2,使用以下代碼加固/etc/profile   


trap 'echo "Please Ener Your Password!!" ' 1 2 3 9 15 17 18 19 20 24

#這裏是密碼,你可以先md5sum sha512sum加密也是可以的!
mima=123
clear
stty -echo
echo -n "--:"
read key
echo " "
cishu=1
while [ "$key" != "$mima" ]
do
echo -n "--:"
read key
echo " "
cishu=`expr $cishu + 1`
while [ $cishu -gt 10 ]
do
stty echo

#這裏執行退出返回linux登陸狀態
exit 1
done
done
clear
echo "wellcom !! Now time is `date`!"
stty echo
echo " "


  把以上代碼加到/etc/profile末尾,不管你是ssh登陸還是直接linux登陸,登陸後還要進行二次登陸在多用戶環境下!單用戶不考慮了!讓***傻眼!!

 

3,使用tomoyo-mac加固系統,這個強大點可以實現二次密碼認證,或者多個密碼策略,根據輸入的密碼不同實現不同的權限!!實現代碼:

   首先建立1個認證腳本 aut1

echo "password" | sha1sum
#!/bin/sh -p

hash="c8fed00eb2e87f1cee8e90ebbe870c190ac3848c  -"

read -r -s -e -p "Password: " password
hash_attempt="$(echo "$password" | sha1sum)"
sleep 2
if [ "$hash_attempt" = "$hash" ]; then
  exec $SHELL
else
  echo "Authentication failed"
fi

  然後設置tomoyo-mac 

         鎖定/usr/sbin/sshd域到<kernel>下方便管理

initialize_domain /usr/sbin/sshd from any

       在/usr/sbin/sshd 產生的 /bin/bash域下設置強制權限,只能執行auth1程序!

file execute /bin/auth1 exec.realpath="/bin/auth1"
鎖定由auth1產生的域/bin/bash的權限,方便集中管理
keep_domain any from <kernel> /usr/sbin/sshd /bin/bash /bin/auth1 /bin/bash

      之後就是/usr/sbin/sshd /bin/bash /bin/auth1 /bin/bash 域 進行強制權限控制了!很簡單,不過很靈活,咱們可以使用不同的auth1 auth2 auth3認證 不同的權限集!

    好了以上就是對openssh認證加固了,當然了,最新出現的google二維碼認證也是可以的,不過太麻煩了還要手機拍照。費勁!要是google死了,怎麼登陸呢!話說到這裏,還是順便講講openssh安全加固吧:

   1,使用sshd_config 限制allowuser 密碼登陸次數 等等安全控制

 

   2,沒有必要不要使用dropbear 相關ssh-serer絕對沒有openssh安全穩定,openbsd出品必屬精品!

 

  3,下載最新穩定版openssh-6.2p1 gcc fstack-protect-all加固,可以順便修改version.h僞裝下,編譯選項爲最小安裝就好了什麼pam utmp tcptrap全部關閉呵呵!

 

  4,使用強大的grsecurity 加固內核,添加溢出保護patch  paxctl -PEMRXS sshd!

 

  5,當然是openssh證書+密碼短語登陸了,加上附加的密碼認證 三重認證了!沒必要吧!!!

 

  6,iptables -I INPUT -m time 加上時間控制,併發控制等等!!

 

  7,狠點再加上grsecurty chroot 補丁 加固linux chroot 功能對sshd加固,分區只讀鎖定openssh所在的分區!(只讀鎖定是一個危險的功能,開啓了只有重啓才能更改!)

 

    好了基本上就這些了,以上這些就是從網絡層 密碼認證層 程序溢出層 虛擬沙盒層加固了openssh!希望大家能用的到!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章