菜单

Administrator
发布于 2026-10-10 / 1 阅读
0
0

Linux 学习笔记 L10:SSH 远程连接

SSH 是远程管服务器的命脉,这篇讲透密钥登录。

首次连接:指纹确认

ssh root@3.15.231.19
The authenticity of host '3.15.231.19' can't be established.
ED25519 key fingerprint is SHA256:xxxx.
Are you sure you want to continue connecting (yes/no)?

输 yes 把服务器指纹存到 ~/.ssh/known_hosts,下次变了会警告(防中间人)。

密钥登录原理

对称:密码每次都要输,还可能被爆破。非对称:本地生成一对钥匙,公钥放服务器,私钥自己留着。登录时服务器出题,私钥答题,答对进门——私钥从不离身。

ssh-keygen -t ed25519 -C "my-vps"

一路回车,~/.ssh/ 下多出 id_ed25519(私钥,chmod 600)和 id_ed25519.pub(公钥)。

ssh-copy-id root@3.15.231.19

一把梭把公钥送上服务器。下次 ssh 直接进,不用输密码。

禁密码登录加固

sudo vim /etc/ssh/sshd_config
PasswordAuthentication no
PubkeyAuthentication yes
PermitRootLogin prohibit-password
sudo systemctl restart sshd

改之前先开一个已连上的终端别关,确认密钥能进再退,免得把自己锁外面。

scp / rsync 传文件

scp backup.tar.gz root@3.15.231.19:/tmp/
scp -r ./site root@3.15.231.19:/var/www/
rsync -avz --progress ./site/ root@3.15.231.19:/var/www/site/

rsync 增量同步,大文件断点续传比 scp 稳。

~/.ssh/config 写别名

Host vps
  HostName 3.15.231.19
  User root
  IdentityFile ~/.ssh/id_ed25519

以后 ssh vps 就行,还能配跳板机 ProxyJump。

实战:连不上四种报错

  1. Connection refused:sshd 没跑或防火墙挡了

  2. Permission denied (publickey):公钥没放对地方,查 ~/.ssh/authorized_keys 权限 600

  3. WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED:服务器重装了,ssh-keygen -R 删旧指纹

  4. Connection timed out:IP 错了或安全组没放行 22

小结

命令

作用

ssh-keygen

生成密钥对

ssh-copy-id

送公钥上服务器

scp / rsync

传文件

ssh -J

跳板机

下一篇 L11:Shell 脚本入门——变量、if、for,写出第一个备份脚本。


评论