1
hemoely 2017-06-11 23:34:00 +08:00
用密钥登录啊,为什么用密码?不是 root 但是有 root 权限
|
2
trepwq 2017-06-12 00:13:52 +08:00 via iPhone
如果是 ubuntu 系统的话用 root 登陆会提示你用 ubuntu 登陆,也可以在控制台登陆然后 su 到 root 改密码,或者 sudo passwd root 改 root 密码
|
3
wangxiaodong 2017-06-12 01:43:25 +08:00
我网站 https://congci.com 搭建在 GCP 中,系统是 Debian ;避免用 root 账号,直接用普通账号加 ssh-keygen 生成密钥最是方便。
|
4
dangyuluo 2017-06-12 04:52:16 +08:00
用 Google Cloud 自带的 SSH 客户端登陆上去,然后把你的公钥复制到 ~/.ssh/authorized_certs 下(忘了是不是这个文件了),然后在本地用私钥 SSH 登陆上就可以了。最好禁止使用密码登陆 ssh,在公开的网络上使用密码登陆是很危险的。
|
5
dangyuluo 2017-06-12 04:52:54 +08:00
确认了一下,是 authorized_keys 文件
|
6
Cabana 2017-06-12 08:11:39 +08:00 via Android
我之前好像也没找到,用密钥呗既安全又方便
|
7
SAYE 2017-06-12 08:37:41 +08:00
http://mailberry.com.cn/2017/03/google-compute-engine-set-ssh-password/ 不过这个教程重启 SSH 的命令有问题,应该是 sevice sshd restart
|
8
lan894734188 2017-06-12 08:46:03 +08:00 via Android
gce 有 web 终端 也可以在 web 面板添加不同用户的密匙
|
9
jerryshao 2017-06-12 09:02:26 +08:00 1
我是用的 gcloud(Google Cloud Console CLI),配置的时候会要求提供 access key 和 secret key,然后用`gclout config set project PROJECT_ID`设置一下对应的 project,直接`gcloud compute ssh INSTANCE_NAME`就可以连上了。
![]( ) 修改 root 可以用`sudo su`进 root,无需密码。然后`passwd`改一下 root 密码。 ![]( ) 最后测试一下能否用改过的密码登录 root ![]( ) Ref: [connecting-to-instance]( https://cloud.google.com/compute/docs/instances/connecting-to-instance) |
10
jerryshao 2017-06-12 09:03:01 +08:00
我的 MD 语法感人...
|
11
MiguelValentine 2017-06-12 09:10:17 +08:00
ssh [userName of ssh key]@ip
|
12
timothyye 2017-06-12 09:15:31 +08:00
用户名就是你 ssh key 里面那个名字
|
14
chuhemiao 2017-06-12 09:52:55 +08:00
设置的时候如果没加密匙,是直接浏览器新窗口打开的,这个界面操作看着还行
|
15
charadeyouare 2017-06-12 09:56:23 +08:00
GCP 是不是不支持 mosh ?
|
16
paullee 2017-06-12 09:56:48 +08:00 via Android 1
好怀疑楼上作答的是不是真用了 google cloud !正确姿势是在计算引擎>元数据>ssh 密钥里添加你的 ssh 公钥,添加成后注意看那里解析得到的用户名,谷歌不支持密码登录 ssh(或许我没找到),用户名默认也不是 root 或 ubuntu 啥的(或许我理解错了)
|
17
bluefalconjun 2017-06-12 10:09:17 +08:00
一直使用浏览器登录的... 这样就不需要用户名密码了... 感觉 @paullee 说得对...
|
18
ljypaul2011 2017-06-12 11:01:11 +08:00
其实我也直接用 SSH 登陆比较多,但是好像 GCP 并不推荐这样做
如果楼主对这块比较小白的话,我这自己摸索了一个方法: 环境:CentOS 6.X, 1、首先,网页登陆 VPS 2、sudo passwd root 把密码改掉 3、sudo vim /etc/ssh/sshd_config 然后修改以下参数 permit root login yes PasswordAuthentication yes 可以重启一下 sshd 服务 service sshd restart 即可 SSH 密码登陆 如果还不能登陆的话请检查以下 GCP 的防火墙 PS: 1、首先,sudo 在 GCP 里边用于提升权限,centos 以外系统请自行摸索 2、这种方法还是不推荐,请尽量学习密钥登陆。 |
19
wangxiaodong 2017-06-12 11:02:50 +08:00
@paullee Google Cloud 支持 Web 端和控制台两种方式添加 SSH 公钥,我通常使用控制台添加:
gcloud compute project-info add-metadata --metadata "sshKeys=$USER:$(cat $HOME/.ssh/id_ed25519.pub)" |
20
ETiV 2017-06-12 12:06:41 +08:00 via iPhone
可能只有 16#说的靠谱些……
贴 ssh 公钥进 meta - ssh keys ;登录名会自动识别出来,记住它 然后这个就是 project 级别的 VM ssh key 开 VM 的时候,默认添加这些 key 进 VM 记得给 VM 指定公网 IP 然后 'ssh -i privatekey 登录名 @公网 IP' 即可 没有 root 登录,登录后可以用 sudo -i 变成 root 不需要输入密码 |
21
wangxiaodong 2017-06-12 14:34:25 +08:00
@ETiV
16 楼和你提出的方式有两个问题:第一,GCP 其实是支持密码登陆的;第二,元数据添加 sshKeys 是基于项目还是实例官方有停止支持提示。 官方 Note: Setting the sshKeys metadata value on the instance metadata instead of the project metadata is deprecated. Compute Engine will stop supporting this metadata value in March 2017. |
22
lookas2001 2017-06-12 19:13:41 +08:00 via Android
不建议直接用 root,虽然一直用 sudo 跟 root 其实没啥区别,但是也不建议直接用 root。。
|
23
zhangrui518 2017-06-13 15:10:52 +08:00
申请这个是不是需要得有海外的信用卡?
|
24
peng2ex 2017-06-13 22:41:16 +08:00
貌似里面有个设置是元数据
|
25
paullee 2017-06-13 23:50:39 +08:00 via Android
@wangxiaodong 我说的那个方式添加的 ssh key 是生效在 project 上的,谷歌那个提示是在创建实例是时路边有一个针对当前实例生效的 key(即你提到的谷歌不建议使用的方式)
|
26
Varchar 2018-10-02 08:11:00 +08:00
|
27
Gongdream 2019-01-02 13:18:41 +08:00
|