常见报错速查与修复¶
Address already in use(端口被占用)¶
场景:启动 mkdocs serve 或其他本地服务时报错。
原因:上次进程没有正常退出,端口仍被占用。
修复:
SSH 密钥登录配置与禁用密码¶
场景:服务器安全加固,禁止密码登录,只允许密钥认证。
1. 本地生成密钥对¶
2. 上传公钥到服务器¶
如果终端无法交互输入密码,可借助 sshpass:
brew install sshpass
sshpass -p 'your_password' ssh-copy-id -i ~/.ssh/id_ed25519.pub -o StrictHostKeyChecking=no user@host
3. 验证密钥登录¶
4. 禁用密码登录(服务器端)¶
确认密钥可以正常登录后再执行,否则会被锁在外面:
# Ubuntu/Debian 系统
sudo sed -i 's/^#*PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config
sudo systemctl restart ssh
# CentOS/RHEL 系统
sudo systemctl restart sshd
验证设置是否生效:
SSH WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED¶
场景:SSH 连接远程服务器时出现告警,连接被拒绝。
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Host key verification failed.
原因:服务器重装系统、更换 IP、或 IP 被复用,导致 SSH 指纹与本地 ~/.ssh/known_hosts 记录不符。
注意:极少数情况下可能是真实的中间人攻击,确认服务器状态后再操作。
修复: