今天没事想通过我本地Ubuntu自带终端连接我的谷歌云主机,因为现在云主机只是运行了自己安装的vpn,感觉有点浪费了(虽然领取的免费)。自己想着通过本地操作的话装其他更方便些,通过windows的话可以使用Xshell,但是Linux系统的话自己没有尝试过,今天没事就操作一把,顺便记录下操作过程。linux一般都是通过SSH连接的,所以自己也就通过这种方式来连接我的云主机。
使用这种方式必须要有一个私钥一个公钥,并且需要将公钥放到云主机上。
一、生成密钥
在本地Ubuntu终端输入: ssh-keygen 命令生成我们的密钥,根据控制台的提示输入你存放密钥的文件名称,后面的可以略过不输,直接enter跳过即可,然后就会看到终端成功生成密钥说明,见下图:

key.pub就是生成的公钥,我们需要把它存放到我们的云主机,可以使用:
ssh-copy-id -i .ssh/key(自己公钥名字).pub 用户名(云主机用户名)@主机地址
这样远程服务器会将公钥写到远程服务器的~/ .ssh/authorized_key。
当然也可以使用图形化操作界面,毕竟更习惯图形化界面的操作,先登录谷歌云找到自己的服务器,然后在元数据这里,如下图:

点击修改,就会看到我们的服务器的用户列表和对应的密钥了。点击下方的“添加一项”。然后打开本地的公钥文件,复制生成的公钥并粘贴到对应的位置,密钥最后的是你使用本地终端登录后显示的用户名,这个可以修改的,然后保存。

这样服务器会自动将我们的公钥添加到~/ .ssh/authorized_key。
这样我们就可以通过本地终端对远程服务器进行操作了。
我们通过使用本地密钥文件方式登录,输入命令:
ssh -i 本地私钥文件 服务器用户名@远程主机地址
服务器用户名就是上图我们复制公钥时分配的用户名。
输入以后就看到我们已经成功连接服务器了,见下图:

这里可以看到我的服务器实例名称了,说明登录成功了。好了,关于本地通过SSH链接远程服务器就到这里了。
对了这里也推荐下各位小伙伴去免费申请一个云主机玩一下,毕竟你做开发怎么可能离得开服务器呢。AWS和谷歌cloud都是可以免费用一年的样子,AWS的话我不是很清楚,谷歌云的话自己注册个谷歌帐号,有双币种信用卡(支持美元就行)就可以申请了,谷歌是送了300刀或者一年(先到为准),也不用担心到期以后自动扣费问题哈(就当给谷歌打广告了,我谷歌粉),因为服务配置不一样,价格也不一样,自己可以根据情况选择,最好选择亚洲区,我选的好像是在日本的。然后自己就可以搭建一个VPN,手机电脑都可以用,速度也不错。如果有需要到时候可以分享下自己搭建VPN的教程。




