使用 ssh 远程登录阿里云服务器

最基本的方法

SSH 主要用于远程登录。假定你要以用户名 user,登录远程主机 host,只要一条简单命令就可以了。

ssh user@host

如果本地用户名与远程用户名一致,登录时可以省略用户名。

ssh host

SSH 的默认端口是 22,也就是说,你的登录请求会送进远程主机的 22 端口。使用 p 参数,可以修改这个端口。

ssh -p 2222 user@host

上面这条命令表示,ssh 直接连接远程主机的 2222 端口。

口令登录

如果你是第一次登录对方主机,系统会出现下面的提示:

ssh user@host   The authenticity of host 'host (12.18.429.21)' can't be established.   RSA key fingerprint is 98:2e:d7:e0:de:9f:ac:67:28:c2:42:2d:37:16:58:4d.   Are you sure you want to continue connecting (yes/no)?

这段话的意思是,无法确认 host 主机的真实性,只知道它的公钥指纹,问你还想继续连接吗?

所谓"公钥指纹",是指公钥长度较长(这里采用 RSA 算法,长达 1024 位),很难比对,所以对其进行 MD5 计算,将它变成一个 128 位的指纹。上例中是 98:2e:d7:e0:de:9f:ac:67:28:c2:42:2d:37:16:58:4d,再进行比较,就容易多了。

很自然的一个问题就是,用户怎么知道远程主机的公钥指纹应该是多少?回答是没有好办法,远程主机必须在自己的网站上贴出公钥指纹,以便用户自行核对。

假定经过风险衡量以后,用户决定接受这个远程主机的公钥。

Are you sure you want to continue connecting (yes/no)? yes

系统会出现一句提示,表示 host 主机已经得到认可。

Warning: Permanently added 'host,12.18.429.21' (RSA) to the list of known hosts.

然后,会要求输入密码。

Password: (enter password)

如果密码正确,就可以登录了。

当远程主机的公钥被接受以后,它就会被保存在文件$HOME/.ssh/known_hosts 之中。下次再连接这台主机,系统就会认出它的公钥已经保存在本地了,从而跳过警告部分,直接提示输入密码。

公钥登录(推荐)

使用密码登录,每次都必须输入密码,非常麻烦。好在 SSH 还提供了公钥登录,可以省去输入密码的步骤。

所谓"公钥登录",原理很简单,就是用户将自己的公钥储存在远程主机上。登录的时候,远程主机会向用户发送一段随机字符串,用户用自己的私钥加密后,再发回来。远程主机用事先储存的公钥进行解密,如果成功,就证明用户是可信的,直接允许登录 shell,不再要求密码。

这种方法要求用户必须提供自己的公钥。如果没有现成的,可以直接用 ssh-keygen 生成一个:

客户端生成密钥

ssh-keygen -t rsa -b 4096 -C "注释信息"

  • -t rsa​:指定密钥类型为 RSA。
  • -b 4096​:设置密钥长度为 4096 位,以增加安全性。
  • -C "注释信息"​:注释信息,可用于标识密钥,如使用者名称或用途。

客户端运行上面的命令以后,系统会出现一系列提示,可以一路回车。其中有一个问题是,要不要对私钥设置口令(passphrase),如果担心私钥的安全,这里可以设置一个。

运行结束以后,在$HOME/.ssh/目录下,会新生成两个文件:id_rsa.pub 和 id_rsa。前者是你的公钥,后者是你的私钥。

以我自己的 windos 11 为例 .ssh 目录在image

服务器生成密钥

在阿里云实例中创建密钥对

image

image

image

image

创建成功之后将创建好的密钥对绑定到实例上,就可以通过 ssh root@公网ip​远程登录你的服务器了

设置简称登录服务器

在客户端公私钥所在目录下建立 config 文件,在 config 文件中按照以下格式进行配置,即可实现简称登录。

Host test # 登录简称 HostName ip # 服务器ip Port 22 # 登录服务器的端口 User root # 用户名

通过 ssh test​就可以登录远程服务器了

  • SSH
    45 引用 • 51 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...