Server 端设置
为了防止学校内网机器被挂木马挖矿, 学校屏蔽了所有内网连接的22端口. 因此所有刚装好的机器需要修改SSH默认端口. 除此之外还有一些推荐设置. 本文提到所有Server端配置都在 /etc/ssh/sshd_config
文件里.
# (默认 22 必须修改为其他端口) ⚠️不要直接用文中的13841
Port 13841
# 建议改成no, 防止恶意root登陆 推荐指数: 🌟🌟🌟🌟🌟
PermitRootLogin no
# 设置发送心跳包防止连接被关闭 推荐指数: 🌟🌟🌟🌟
ClientAliveInterval 60
ClientAliveCountMax 3
# 关闭密码登陆, 用户只能使用密钥登陆 推荐指数: 🌟🌟🌟
PasswordAuthentication no
# 允许SSH Server转发图形化界面 推荐指数: 🌟🌟🌟
X11Forwarding yes
修改完配置之后重启sshd服务使配置生效
systemctl restart sshd.service
Client 设置
配置密钥登陆
拷贝本地机器 $HOME/.ssh/[xxx].pub
里的内容到服务器里的 $HOME/.ssh/authorized_keys
.
如果该文件不存在, 运行
ssh-keygen -t [crypto] -C [remarks] -f [file name]
生成密钥和公钥.
- [crypto]:填写使用的加密协议,一般为dsa | ecdsa | ed25519 | rsa
- [Remarks]: 备注,一般是邮箱。可以不填
- [file name]:生成的文件名,默认是
id_[crypto]
- 其他参数
man ssh-keygen
会生成两个文件一个密钥和公钥,公钥后缀是.pub
默认地址是在 ~/.ssh