#!/bin/bash
# Filename: security_setting.sh
# Author: Jeff.Cui
# Date: 2023-05-22
############### 安全设置主要修改功能 ###############
# 修改禁止 root ssh 登录;
# 修改 ssh 端口为 922 ;
# 修改密码最大可用时间180天,最少8位大写字母、小写字母、数字、特殊字符;
# 修改限制IP网段访问,hosts.allow 和 firewalld
# 修改超时限制 1800s;
# 红字、高亮
RGB_DANGER() {
echo -e "\n\033[31;1m# $1 \033[0m\n"
}
# 白字、半亮
RGB_WAIT() {
echo -e "\n\033[37;2m# $1 \033[0m\n"
}
# 绿字、高亮
RGB_SUCCESS() {
echo -e "\n\033[32;1m# $1 \033[0m\n"
}
# 黄字、半亮
RGB_WARNING() {
echo -e "\n\033[33;2m# $1 \033[0m\n"
}
# 天蓝字、半亮
RGB_INFO() {
echo -e "\n\033[36;2m# $1 \033[0m"
}
# 检查操作系统大版本,如6/7/8
CHECK_VER=$(egrep "^VERSION_ID" /etc/os-release | cut -d\" -f2 | cut -d\. -f1)
# 检查 RAM 大小,此处未使用
CHECK_RAM=$(cat /proc/meminfo | grep "MemTotal" | awk -F" " '{ram=$2/1024/1024}{printf("%.0f",ram)}')
# 设置日志名字,脚本同目录下
conflog=linux_security_$(date +'%Y%m%d').log
# 检查 kernel 版本,用以同 4.9 比较大小,BBR 要求 4.9 及以上版本
KERN=$(uname -r | awk -F. '{ printf("%d.%d\n",$1,$2); }')
kern_int=$(echo $KERN|cut -d\. -f1)
kern_dec=$(echo $KERN|cut -d\. -f2)
if [ $kern_int -gt 4 ];then
cansue_bbr = "Y"
elif [ $kern_int -eq 4 ] && [ $kern_dec -ge 9 ];then
cansue_bbr = "Y"
fi
# 检查是否 root 执行
check_root() {
if [[ $EUID -ne 0 ]]; then
RGB_DANGER "This script must be run as root!"
exit 1
fi
}
# 检查 OS 版本是否为 7
check_os() {
if [ "${CHECK_VER}" != '7' ]; then
RGB_DANGER "This script must be run on Linux 7!"
exit 1
fi
}
# 启用 BBR,防止网络拥塞,需要内核版本>=4.9
open_bbr() {
echo "============= bbr =============" >>${conflog} 2>
Linux7安全设置脚本
于 2023-06-01 10:14:17 首次发布