最近逛论坛,看到不少小鸡因为弱口令或者默认端口被暴力破解,甚至被植入挖矿木马。
手里也屯了一堆小鸡,之前为了图省事,很多都是直接用默认密码或者固定的简单密码登录。现在环境这么恶劣,想着还是得全部换成 SSH 密钥登录 才稳妥。但是每次开新机器,都要手动改端口、禁密码、去 GitHub 找公钥、装 BBR……十几台机器弄下来真的头大,重复造轮子太累了。
刚好最近 AI 发展这么猛(都在说 GPT-5.2 了,虽然我这次主力用的是 Gemini 😆),心想不如趁着这波红利, GPT-5.2联合 Gemini 一起搓一个 “全自动化、防手残” 的初始化脚本。
经过几轮的代码审计和逻辑加固,终于弄出了这个 v1.0.0 正式版。我自己已经在 Debian 12 和 Alpine 上实测了一圈,非常稳,现在开源出来分享给大家。
🚀 项目地址
GitHub: https://github.com/247like/linux-ssh-init-sh
✨ 这个脚本能干啥?
主打一个 “懒人专用,安全兜底”。
- 全平台兼容:无论是 Debian / Ubuntu,还是 CentOS / Alma / Rocky,甚至极简的 Alpine Linux,全部用 POSIX sh 写法兼容了,不需要装 Bash 也能跑。
- 密钥一把梭:
- 支持从 GitHub 用户名 自动拉取公钥(最推荐,超方便!)。
- 也支持 URL 下载或直接粘贴文本。
- 防失联机制:如果公钥下载失败,脚本 绝不会 傻乎乎地禁用密码登录,防止把自己锁在门外。
- 安全加固:
- 一键修改 SSH 端口(支持随机高位端口,自动检测占用)。
- 自动配置防火墙(UFW / Firewalld),改端口不怕连不上。
- 创建普通用户(sudo 免密),禁用 Root 登录(可选)。
- 系统优化:顺手开启 TCP BBR 和 更新系统软件。
- Debian 12 友好:专门处理了 Debian 12
Include配置覆盖的问题,保证加固生效。
🛠️ 食用方法
必须以 Root 身份运行。
方式一:交互式(小白推荐)
跟着提示选 1、2、3 就行,支持中英双语。
curl -fsSL https://raw.githubusercontent.com/247like/linux-ssh-init-sh/main/init.sh -o init.sh && chmod +x init.sh && ./init.sh方式二:一条命令全自动(老鸟推荐)
适合新开机器后直接粘贴进终端。
- 自动创建用户
247like - 自动从 GitHub 拉取
247like的公钥 - 自动开启 BBR(只改简单两个参数,其他的还是自己看情况调优)、更新系统、跳过确认
curl -fsSL https://raw.githubusercontent.com/247like/linux-ssh-init-sh/main/init.sh | sh -s -- \ --user=247like \ --port=22 \ --key-gh=247like \ --bbr \ --update \ --yes(注:请把上面的 247like 换成你自己的用户名)
📝 小结
代码虽然是联合 AI 写出来的,但是逻辑我都人工审计过,特别是 防失联 这块做了很多兜底判断(比如端口检测、密钥校验)。GPT感觉还是有点笨笨的,容易丢失已修改过的代码,Gemini好很多,基本不咋丢,两个配合互相审计还是ok的。
目前我自己用的很爽,新开一台鸡,10秒钟初始化完毕,从此告别密码登录,再也不怕爆破了。
评论 (0)