######## StrictHostKeyChecking ########
rs0=`cat /etc/ssh/ssh_config|grep StrictHostKeyChecking|grep -v "#" |grep no|wc -l`
rs1=`cat /etc/ssh/ssh_config|grep StrictHostKeyChecking|grep "#" |wc -l`
rs2=`cat /etc/ssh/ssh_config|grep StrictHostKeyChecking|grep -v "#" |wc -l`
if [ $rs0 -eq 0 ] && [ $rs1 -gt 0 ] && [ $rs2 -eq 0 ]; then echo "StrictHostKeyChecking no" >> /etc/ssh/ssh_config; fi
if [ $rs0 -eq 0 ] && [ $rs1 -eq 0 ] && [ $rs2 -gt 0 ]; then sed -i "s/StrictHostKeyChecking ask/StrictHostKeyChecking no/g" /etc/ssh/ssh_config; fi
rs4=`cat /etc/ssh/ssh_config|grep StrictHostKeyChecking|grep -v "#"|grep no |wc -l`
if [ $rs4 -eq 0 ]; then cat /etc/ssh/ssh_config |grep -v StrictHostKeyChecking > ssh_config_tmp && cat ssh_config_tmp > /etc/ssh/ssh_config && echo "StrictHostKeyChecking no" >> /etc/ssh/ssh_config; fi
######## GSSAPIAuthentication ########
rs0=`cat /etc/ssh/ssh_config|grep GSSAPIAuthentication|grep -v "#" |grep no|wc -l`
rs1=`cat /etc/ssh/ssh_config|grep GSSAPIAuthentication|grep "#" |wc -l`
rs2=`cat /etc/ssh/ssh_config|grep GSSAPIAuthentication|grep -v "#" |wc -l`
if [ $rs0 -eq 0 ] && [ $rs1 -gt 0 ] && [ $rs2 -eq 0 ]; then echo "GSSAPIAuthentication no" >> /etc/ssh/ssh_config; fi
if [ $rs0 -eq 0 ] && [ $rs1 -eq 0 ] && [ $rs2 -gt 0 ]; then sed -i "s/GSSAPIAuthentication yes/GSSAPIAuthentication no/g" /etc/ssh/ssh_config; fi
rs4=`cat /etc/ssh/ssh_config|grep GSSAPIAuthentication|grep -v "#"|grep no |wc -l`
if [ $rs4 -eq 0 ]; then cat /etc/ssh/ssh_config |grep -v GSSAPIAuthentication > ssh_config_tmp && cat ssh_config_tmp > /etc/ssh/ssh_config && echo "GSSAPIAuthentication no" >> /etc/ssh/ssh_config; fi
######## UseDNS ########
rs0=`cat /etc/ssh/ssh_config|grep UseDNS|grep -v "#" |grep no|wc -l`
rs1=`cat /etc/ssh/ssh_config|grep UseDNS|grep "#" |wc -l`
rs2=`cat /etc/ssh/ssh_config|grep UseDNS|grep -v "#" |wc -l`
if [ $rs0 -eq 0 ] && [ $rs1 -gt 0 ] && [ $rs2 -eq 0 ]; then echo "UseDNS no" >> /etc/ssh/ssh_config; fi
if [ $rs0 -eq 0 ] && [ $rs1 -eq 0 ] && [ $rs2 -gt 0 ]; then sed -i "s/UseDNS yes/UseDNS no/g" /etc/ssh/ssh_config; fi
######### restart sshd ########
service sshd restart
无效可以试下下面的
######## StrictHostKeyChecking ########
rs0=`cat /etc/ssh/sshd_config|grep StrictHostKeyChecking|grep -v "#" |grep no|wc -l`
rs1=`cat /etc/ssh/sshd_config|grep StrictHostKeyChecking|grep "#" |wc -l`
rs2=`cat /etc/ssh/sshd_config|grep StrictHostKeyChecking|grep -v "#" |wc -l`
if [ $rs0 -eq 0 ] && [ $rs1 -gt 0 ] && [ $rs2 -eq 0 ]; then echo "StrictHostKeyChecking no" >> /etc/ssh/sshd_config; fi
if [ $rs0 -eq 0 ] && [ $rs1 -eq 0 ] && [ $rs2 -gt 0 ]; then sed -i "s/StrictHostKeyChecking ask/StrictHostKeyChecking no/g" /etc/ssh/sshd_config; fi
rs4=`cat /etc/ssh/sshd_config|grep StrictHostKeyChecking|grep -v "#"|grep no |wc -l`
if [ $rs4 -eq 0 ]; then cat /etc/ssh/sshd_config |grep -v StrictHostKeyChecking > ssh_config_tmp && cat ssh_config_tmp > /etc/ssh/sshd_config && echo "StrictHostKeyChecking no" >> /etc/ssh/sshd_config; fi
######## GSSAPIAuthentication ########
rs0=`cat /etc/ssh/sshd_config|grep GSSAPIAuthentication|grep -v "#" |grep no|wc -l`
rs1=`cat /etc/ssh/sshd_config|grep GSSAPIAuthentication|grep "#" |wc -l`
rs2=`cat /etc/ssh/sshd_config|grep GSSAPIAuthentication|grep -v "#" |wc -l`
if [ $rs0 -eq 0 ] && [ $rs1 -gt 0 ] && [ $rs2 -eq 0 ]; then echo "GSSAPIAuthentication no" >> /etc/ssh/sshd_config; fi
if [ $rs0 -eq 0 ] && [ $rs1 -eq 0 ] && [ $rs2 -gt 0 ]; then sed -i "s/GSSAPIAuthentication yes/GSSAPIAuthentication no/g" /etc/ssh/sshd_config; fi
rs4=`cat /etc/ssh/sshd_config|grep GSSAPIAuthentication|grep -v "#"|grep no |wc -l`
if [ $rs4 -eq 0 ]; then cat /etc/ssh/sshd_config |grep -v GSSAPIAuthentication > ssh_config_tmp && cat ssh_config_tmp > /etc/ssh/sshd_config && echo "GSSAPIAuthentication no" >> /etc/ssh/sshd_config; fi
######## UseDNS ########
rs0=`cat /etc/ssh/sshd_config|grep UseDNS|grep -v "#" |grep no|wc -l`
rs1=`cat /etc/ssh/sshd_config|grep UseDNS|grep "#" |wc -l`
rs2=`cat /etc/ssh/sshd_config|grep UseDNS|grep -v "#" |wc -l`
if [ $rs0 -eq 0 ] && [ $rs1 -gt 0 ] && [ $rs2 -eq 0 ]; then echo "UseDNS no" >> /etc/ssh/sshd_config; fi
if [ $rs0 -eq 0 ] && [ $rs1 -eq 0 ] && [ $rs2 -gt 0 ]; then sed -i "s/UseDNS yes/UseDNS no/g" /etc/ssh/sshd_config; fi
######### restart sshd ########
service sshd restart
文章描述了一种方法,通过检查`sshd_config`文件中StrictHostKeyChecking、GSSAPIAuthentication和UseDNS选项的状态,自动化调整这些配置以提高SSH安全性。脚本会根据当前设置决定是否禁用或更改,并在必要时重启sshd服务。
2724

被折叠的 条评论
为什么被折叠?



