重拾 SSH:从基础到安全加固
安全外壳协议(Secure Shell Protocol,简称SSH)是一种加密的网络传输协议,属于应用层协议。OpenSSH 是最流行的 SSH 实现,它是大量操作系统的默认组件 OpenSSH 套件由以下工具组成: 远程操作使用:ssh, scp 和 sftp 密钥管理:ssh-add, ssh-keysign, ssh-keyscan 和 ssh-keygen 服务端: sshd, sftp-server 和 ssh-agent 使用 SSH 连接服务器 1. 客户端创建公私钥对 密钥类型选择 ed25519 椭圆曲线,它生成的公私钥都要比 RSA 更短,具有较高的安全性和性能 # - a KDF (Key Derivation Function) 的迭代次数 默认:16 ,防止暴力破解 # - t 类型 # Ubuntu 22.04 默认:RSA 3072;Mac OS 默认:ED25519 256 # - C 备注,可以备注上创建年月,定期更换私钥 ssh-keygen -a 256 -t ed25519 -C "Brandon+2025-01@MacBook" # 可以手动指定路径和密码,也可以一路回车 在 ~/.ssh 下会生成公私钥对 . ├── [ 411] id_ed25519 ├── [ 98] id_ed25519.pub # 私钥需要妥善保管,避免暴露 cat id_ed25519 -----BEGIN OPENSSH PRIVATE KEY----- b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAAAMwAAAAtzc2gtZW QyNTUxOQAAACCRtC9cJJBFwvVsp4vV058ci8lSHNrf2qcx8W+umtK7OwAAAKArJx9PKycf... -----END OPENSSH PRIVATE KEY----- # .pub 结尾为公钥 cat id_ed25519.pub ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJG0L1wkkEXC9Wyni9XTnxyLIt/zHxb66a0rs7 Brandon+2025-01@MacBook 2. 在服务器上添加公钥 将上面客户端生成的公钥 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJG0L1wkkEXC9Wyni9XTnxyLIt/zHxb66a0rs7 Brandon+2025-01@MacBook 加入到服务端 ~/.ssh/authorized_keys,每个私钥占据一行 ...