SSH 密钥认证

1. 生成密钥对(在本地机器上)

1
2
3
4
5
6
7
# 生成 RSA 密钥(默认)
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

# 或者生成 Ed25519 密钥(更安全,推荐)
ssh-keygen -t ed25519 -C "your_email@example.com"

# 一路回车,使用默认路径(~/.ssh/id_rsa)和空密码

2. 复制公钥到服务器

1
2
3
4
5
6
7
8
9
# 方法三:直接复制粘贴
# 本地执行
cat ~/.ssh/id_rsa.pub
# 复制输出的内容
# 登录服务器,执行
mkdir -p ~/.ssh
echo "粘贴刚才的内容" >> ~/.ssh/authorized_keys
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
1
2
3
4
5
# 方法一:使用 ssh-copy-id(最简单)
ssh-copy-id username@server_ip

# 方法二:手动复制
cat ~/.ssh/id_rsa.pub | ssh username@server_ip "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

3. 测试连接

1
2
ssh username@server_ip
# 应该不再需要输入密码