google服务器的SSH登录

客户端为mac os,直接在 shell里用ssh [USERNAME]@[IP_ADDRESS]即可登录,但是会提示

Permission denied (publickey).

显然是秘钥问题。
按照google帮助(https://cloud.google.com/compute/docs/instances/connecting-to-instance#standardssh)里的方法

大致步骤为

  1. 在客户端生成秘钥
  2. 复制出秘钥信息
  3. 将秘钥信息粘贴进google后台面板里
  4. 客户端使用秘钥登录

1.秘钥生成

ssh-keygen -t rsa -f ~/.ssh/gvps -C [USERNAME]

其中gvps是秘钥文件,[USERNAME]即是VM实例中用户的名字。

2.复制出秘钥信息

cat ~/.ssh/gvps.pub

会得到

ssh-rsa [KEY_VALUE] [USERNAME]

这样格式的秘钥信息,复制出来

3.GCP后台设置

https://console.cloud.google.com/compute/metadata/sshKeys?_ga=2.3282935.651588782.1517165972-673667903.1517165972&_gac=1.241829174.1517166012.EAIaIQobChMIqKbB0qv72AIVkoePCh0MoQyHEAAYASAAEgIn0vD_BwE

SSH秘钥标签里的修改,把复制出来的秘钥信息拷贝进去保存。

4.客户端登录

回到shell

ssh-add ~/.ssh/gvps

把我们一开始生成的秘钥载入进SSH
之后就可以

ssh [USERNAME]@[IP_ADDRESS]

顺利登录进google的VM实例中了,密码都不用~!


或者

vim /etc/ssh/sshd_config

将其中的PermitRootLogin no修改为yes

PubkeyAuthentication yes修改为no

AuthorizedKeysFile .ssh/authorized_keys前面加上#屏蔽掉,

PasswordAuthentication no修改为yes

重启sshd服务:

/etc/init.d/sshd restart

就可以了。


Ubuntu添加开机启动执行脚本

编辑rc.loacl脚本:

Ubuntu开机之后会执行/etc/rc.local文件中的脚本,
所以我们可以直接在/etc/rc.local中添加启动脚本。
当然要添加到语句:exit 0 前面才行。
如:

sudo vi /etc/rc.local
1

然后在 exit 0 前面添加好脚本代码。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注


*

关闭菜单