Java教程

xshell+ssh+网络+加密

本文主要是介绍xshell+ssh+网络+加密,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

使用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的服务端配置

  主要是禁止密码登录

  修改sshd_config

   PermitRootLogin no
   PasswordAuthentication no

   PubkeyAuthentication yes

   AuthorizedKeysFile    .ssh/authorized_keys

   #有待确认

   GSSAPIAuthentication no 

   客户端生成rsa公匙和私有钥匙,并把公匙存到服务器的authorized_keys

   有多种工具都可以支持,既有winddows自带的,也可以使用xshell带的.

    ssh-keygen -t rsa -C “835570372@qq.com”

    在这个过程中,可以指定文件名称,避免覆盖存在的文件。

    注意: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

   有两种方式:

    a.删除,并重启sshd服务,自动生成

    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

   比较专业,网上有不少教程。这里略。

   

 

这篇关于xshell+ssh+网络+加密的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!