目前我的blog是搭在腾讯云上的,但是因为当初上云的时候是试验性质,而且也没遇到618或者双11之类的促销,所以就随便买了一个99一年的主机,现在满打满算也剩下半年不到了,所以找一个下家迫在眉睫。
不愧是阿里,下单付钱以及实名认证都很快。但老实说这个控制台界面并不像腾讯云那么好用,当初腾讯云的界面的服务器管理页面直接就提供一个密钥下载的选项,可以直接生成RSA密钥并绑定到服务器上后自动下载到本地,你只要配置一下本地就可以连接了,但阿里光是怎么生成密钥和绑定我就研究了半天。
密钥生成和绑定
密钥对的创建在网络与安全
>密钥对
页面,点击创建密钥对:
密钥对名称可以随便填写一个,然后点击确定就可以,其它保持默认。
生成好密钥对以后点击绑定密钥对,在之后的界面中选取你的服务器实例进行绑定就可以了。
需要注意的是:
-
只有Linux服务器才可以进行绑定,Windows Server是不行的...
-
绑定后需要重启服务器后才可以生效,且重启后会变成只能通过对应的公钥才可以SSH连接服务器。如果要密码和公钥同时可登录,需要在服务器管理页面重置密码。
重启服务器让密钥生效后剩下的就是本地SSH工具的设置了。
SSH客户端配置
为了方便起见可以先将下载的公钥保存在Windows默认的密钥管理目录,即C:\Users\xxx\.ssh
这样的目录,其中xxx
是你的用户名。
然后就是用你的SSH工具尝试登陆了,这里我分别尝试了XShell和Windows Terminal,其中前者使用时发现提示找不到合适的exchange加密xxx
,这是因为ssh连接时的加密协议一直在升级,所以旧的工具的加密算法和可能已经被最新的Linux服务器所抛弃,只有你的SSH客户端支持Linux服务器允许的最新加密算法才能被允许连接,简单的说就是,我的XShell版本太老......换用新版本XShell后果然就可以连接了。
Windows Terminal和Powershell当然不存在版本老旧的问题,不过配置起来相对麻烦一些。
首先需要在Windows默认的密钥管理目录,即C:\Users\xxx\.ssh
中添加一个config
文件,其中的内容大概像这样:
Host 192.168.1.1 HostName 192.168.1.1 User root Port 22 ForwardAgent yes IdentityFile "C:\Users\xxx\.ssh\my_public_key.pem"
你需要将其中的192.168.1.1
替换为你的服务器IP,其中的IdentityFile
的值替换为你保存的公钥文件路径。
然后在PowerShell中就可以使用ssh root@192.168.1.1
连接上阿里云服务器了,可以测试一下:
root@iZ2zefiis08efcl5knnb5wZ:~# df -h
Filesystem Size Used Avail Use% Mounted on
udev 965M 0 965M 0% /dev
tmpfs 199M 680K 199M 1% /run
/dev/vda1 50G 4.4G 43G 10% /
tmpfs 994M 0 994M 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 994M 0 994M 0% /sys/fs/cgroup
tmpfs 199M 0 199M 0% /run/user/0
root@iZ2zefiis08efcl5knnb5wZ:~# uname -a
Linux iZ2zefiis08efcl5knnb5wZ 5.4.0-86-generic #97-Ubuntu SMP Fri Sep 17 19:19:40 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
当然将Windows Terminal配置一番,将阿里云添加为菜单后就更方便使用了,比如像我这样:
配置Windows Terminal可以阅读我的下面两篇博客:
-
-
。
文章评论
腾讯云出了个60块六年多的bug