使用xshell+ssh用于管理linux服务器,大概是目前最为流行的方式。
这个工具和技术涉及到:
- 计算机网络
- 加密解密
虽然不是专门的系统工程师,但还是相对频繁使用这套工具,有时候难免遇到一些不知道的问题,不得不东翻西找,很是烦人,所以计划一次性解决这些烦人的问题。
注:这里的内容,我相信某些书籍一定有阐述
在正式开始前,先阅读一些文章。
1.ssh的基本原理和操作和linux一些问题
原理-https://www.cnblogs.com/diffx/p/9553587.html
centos-pam https://blog.csdn.net/weixin_42298128/article/details/115736849
ssh无密码登录 - https://www.cnblogs.com/feshfans/p/9307407.html
2.ssh的服务端配置
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
#有待确认
GSSAPIAuthentication no
客户端生成rsa公匙和私有钥匙,并把公匙存到服务器的authorized_keys
有多种工具都可以支持,既有winddows自带的,也可以使用xshell带的.
ssh-keygen -t rsa -C “[email protected]”
注意:ssh支持四种key:rsa,dsa,ecdsa,ed25519
3.ssh的高级应用
使用windows(10/11)自带的ssh/sftp工具登录linux(免密)
a.首先还是需要按照第2点那样交换key
b,windows首次通过ssh登录的时候,会下载centos上/etc/ssh/ssh_host_ecdsa_key.pub,并加入到本地用户的.ssh/kNown_hosts
格式大概是这样的:
180.102.19.91 ecdsa-sha2-nistp256 AAAAE2VjZHN还有很多省略了
自带的虽然不是很好用,但是临时对付几个服务器还是可以的。
重置服务端的/etc/ssh下的多个key
有两种方式:
b.手动使用ssh-keygen生成,例如(https://blog.51cto.com/lidaxia/1922826)
ssh-keygen -t rsa -b 2048 -f /etc/ssh/ssh_root_rsa_key ssh-keygen -t ecdsa -b 256 -f /etc/ssh/ssh_host_ecdsa_key ssh-keygen -t ed25519 -b 256 -f /etc/ssh/ssh_host_ed25519_key
注意,橙色部分文件名称要和sshd_config中对应配置一致即可。
例如下面就是sshd_config中指定的key
HostKey /etc/ssh/ssh_host_rsa_key HostKey /etc/ssh/ssh_host_dsa_key HostKey /etc/ssh/ssh_host_ecdsa_key HostKey /etc/ssh/ssh_host_ed25519_key
4.开发ssh客户端
这里需要用到前面用到的GSSAPI
比较专业,网上有不少教程。这里略。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。