一键更改root密码并开启远程
本文最后更新于 2024-10-14,文章内容可能已经过时。
一键更改root密码并开启远程
我提供了一键脚本,如果您不想继续看下去
curl -sSL http://su.qnm.cc/setup-ssh.sh -o setup-ssh.sh && bash setup-ssh.sh
脚本内容 (setup-ssh.sh)
若没有提供密码,则使用默认密码 Suki520.
。
#!/bin/bash
# 设置默认密码
DEFAULT_PASSWORD="Suki520."
# 颜色设置
RED='\033[1;31m' # 明亮的红色
GREEN='\033[1;32m' # 明亮的绿色
YELLOW='\033[1;33m' # 明亮的黄色
BLUE='\033[1;34m' # 明亮的蓝色
CYAN='\033[1;36m' # 明亮的青色
MAGENTA='\033[1;35m' # 明亮的品红色
NC='\033[0m' # 无颜色
# 检测系统信息
OS=$(cat /etc/os-release | grep "^NAME=" | cut -d= -f2 | tr -d '"')
VERSION=$(cat /etc/os-release | grep "^VERSION=" | cut -d= -f2 | tr -d '"')
# 输出系统信息
echo -e "${BLUE}检测到的系统: $OS${NC}"
echo -e "${BLUE}系统版本: $VERSION${NC}"
# 根据不同的系统类型执行相应的命令
if [[ "$OS" == "Ubuntu" || "$OS" == "Debian" ]]; then
echo -e "${GREEN}配置 Ubuntu/Debian 系统的 SSH 设置...${NC}"
# 修改 SSH 配置,允许 root 登录
sudo sed -i 's/^#*PermitRootLogin.*/PermitRootLogin yes/' /etc/ssh/sshd_config
# 启用密码验证
sudo sed -i 's/^#*PasswordAuthentication.*/PasswordAuthentication yes/' /etc/ssh/sshd_config
elif [[ "$OS" == "CentOS" || "$OS" == "RHEL" ]]; then
echo -e "${GREEN}配置 CentOS/RHEL 系统的 SSH 设置...${NC}"
# 修改 SSH 配置,允许 root 登录
sudo sed -i 's/^#*PermitRootLogin.*/PermitRootLogin yes/' /etc/ssh/sshd_config
# 启用密码验证
sudo sed -i 's/^#*PasswordAuthentication.*/PasswordAuthentication yes/' /etc/ssh/sshd_config
else
echo -e "${RED}不支持的系统类型: $OS${NC}"
exit 1
fi
# 提示用户输入新密码,并允许输入显示
echo -n -e "${YELLOW}请输入新的 root 密码(默认密码为 ($DEFAULT_PASSWORD),直接按 Enter 使用默认密码):${NC}"
read -e NEW_PASSWORD # 使用 -e 选项允许命令行编辑和显示输入内容
# 如果用户没有输入密码,则使用默认密码
if [ -z "$NEW_PASSWORD" ]; then
NEW_PASSWORD=$DEFAULT_PASSWORD
fi
# 修改 root 用户密码
echo "root:$NEW_PASSWORD" | sudo chpasswd
# 重启 SSH 服务
if [[ "$OS" == "Ubuntu" || "$OS" == "Debian" ]]; then
sudo systemctl restart ssh
else
sudo systemctl restart sshd
fi
# 获取服务器的 IP 地址
IP=$(hostname -I | awk '{print $1}')
PORT=22 # 默认 SSH 端口
USER="root"
# 输出提示信息(中文)并以表格形式突出显示
echo -e "\n${CYAN}==============================================${NC}"
echo -e "${MAGENTA} SSH 配置已更新 ${NC}"
echo -e "${CYAN}==============================================${NC}"
echo -e "${YELLOW}您可以使用以下命令连接到服务器:${NC}"
echo -e "${BLUE}ssh $USER@$IP -p $PORT${NC}"
echo -e "${YELLOW}密码:$NEW_PASSWORD${NC}"
echo -e "${CYAN}==============================================${NC}"
使用方法
- 将脚本上传到服务器(与之前相同):
scp setup-ssh.sh username@your_server_ip:/var/www/html/
- 设置脚本的执行权限:
ssh username@your_server_ip
sudo chmod +x /var/www/html/setup-ssh.sh
一键命令示例
curl -sSL http://your_server_ip/setup-ssh.sh -o setup-ssh.sh && bash setup-ssh.sh
安全提示
- 默认密码:使用默认密码可能带来安全隐患,建议在生产环境中始终使用强密码。
- HTTPS:如果可能,使用 HTTPS 来保护传输中的数据。
- 感谢你赐予我前进的力量
赞赏者名单
因为你们的支持让我意识到写文章的价值🙏
本文是原创文章,完整转载请注明来自 枫の屋
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果