diff --git a/vps_init.sh b/vps_init.sh index 3e59878..de3dec1 100644 --- a/vps_init.sh +++ b/vps_init.sh @@ -9,8 +9,8 @@ # =========================================== # 用户设置区域 - 根据需要修改 # =========================================== -NEW_PASSWORD="d!Fssw97SoALHa" # root用户新密码 -NEW_SSH_PORT="4399" # SSH新端口号 +# NEW_PASSWORD 已弃用 - 密码将在交互式设置中由用户输入 +NEW_SSH_PORT="4399" # SSH新端口号(默认值) TIMEZONE="Asia/Shanghai" # 时区设置 SWAP_SIZE=1024 # 交换分区大小(MB) # =========================================== @@ -72,7 +72,24 @@ while true; do done if [[ "$CHANGE_PASSWORD" =~ ^[Yy]$ ]]; then - echo -e "${GREEN}root密码将被修改为系统预设值${NC}" + # 让用户输入新密码 + while true; do + read -sp "请输入新的root密码: " NEW_PASSWORD + echo "" + if [ -n "$NEW_PASSWORD" ]; then + # 要求用户确认密码 + read -sp "请再次输入密码以确认: " NEW_PASSWORD_CONFIRM + echo "" + if [ "$NEW_PASSWORD" = "$NEW_PASSWORD_CONFIRM" ]; then + echo -e "${GREEN}密码已确认,将在后续步骤中修改${NC}" + break + else + echo -e "${RED}两次输入的密码不一致,请重新输入${NC}" + fi + else + echo -e "${RED}密码不能为空,请重新输入${NC}" + fi + done else echo -e "${GREEN}保持root密码不变${NC}" fi @@ -131,7 +148,7 @@ touch $LOG_FILE echo "VPS初始化脚本开始执行: $(date)" > $LOG_FILE # 创建摘要信息文件 -SUMMARY_FILE="/root/vps_init_summary_$(date +%Y%m%d_%H%M%S).txt" +SUMMARY_FILE="/root/vps_init.txt" touch $SUMMARY_FILE echo "VPS初始化摘要信息" > $SUMMARY_FILE echo "生成时间: $(date)" >> $SUMMARY_FILE @@ -636,7 +653,9 @@ fi # 如果用户选择了修改root密码,显示密码信息 if [[ "$CHANGE_PASSWORD" =~ ^[Yy]$ ]]; then - log_summary "${YELLOW}$TIP_COUNT. root密码已更改为: ${NEW_PASSWORD}${NC}" + log_summary "${YELLOW}$TIP_COUNT. root密码已更改 (长度: ${#NEW_PASSWORD} 字符)${NC}" + # 将实际密码单独写入摘要文件(不输出到屏幕) + echo " 实际密码: ${NEW_PASSWORD}" | sed 's/\x1b\[[0-9;]*m//g' >> $SUMMARY_FILE TIP_COUNT=$((TIP_COUNT + 1)) fi