ssh-copy-id 把公钥上传到服务器时,怎样指定私钥登录服务器?

2015-07-29 09:54:06 +08:00
 qw7692336

-i参数是指定上传的公钥而不是用于登录的私钥

4455 次点击
所在节点    Linux
11 条回复
fundon
2015-07-29 10:47:44 +08:00
ssh -i 私钥
qw7692336
2015-07-29 10:50:10 +08:00
@fundon
ssh-copy-id -i 公钥.pub root@server.com
可以直接把本地公钥上传到服务器,但是需要输入密码,我需要指定登录私钥,应该怎么做?-i参数是指定上传的公钥而不是登录的私钥。我这句命令可以改吗?
wy315700
2015-07-29 10:53:39 +08:00
~/.ssh/config
fundon
2015-07-29 11:12:11 +08:00
@qw7692336 公私钥是一对,非要再搞个 key2.pub,那就再服务器创建一个 user
finian
2015-07-29 11:18:16 +08:00
@qw7692336 ssh -i 是指定私钥。另,没看懂你的附言,意思是现服务器上有 key1.pub 和 key2.pub,你本地只有 key1?如果是这样,你用 ssh 命令可以直接登录啊
icecoffee
2015-07-29 11:20:29 +08:00
公私钥一对是唯一的吧。 LZ 应用场景是什么样的, 有这样的需求? X-Y?
qw7692336
2015-07-29 11:23:38 +08:00
@fundon
@finian
@icecoffee
现在服务器有key1.pub本地有key1。我在本地生成了一对key2和key2.pub。现在想在本地用ssh-copy-id命令把key2.pub上传到服务器。我本地的key1并不在默认路径,而在~/keys/key1。
finian
2015-07-29 11:40:32 +08:00
@qw7692336 两种方式:
1. 用 ssh -i key1 登录服务器,再手动 copy key2.pub
2. 用 ~/.ssh/config 配置使用 key1 登录

Host xxx
HostName xxx.xxx.xxx.xxx
Port xxx
User xxx
IdentitiesOnly yes
IdentityFile ~/.ssh/key1
suifengdaren
2015-07-29 11:40:45 +08:00
不用指定,cat key2 >> ~/.ssh/id_rsa
Linusyeung
2015-07-30 06:26:37 +08:00
用楼上说的“>>" 则不会覆盖。。

不行?
charlie21
2021-01-04 23:39:53 +08:00
把 ~/.ssh 备份之后新建一个空的 ~/.ssh ,把决定要用的 私钥 放里面并改名为 id_rsa,让 ~/.ssh 里只有这一个文件,也就是默认路径
然后用 ssh-copy-id,这样一来它就会自动选用默认路径的那个私钥

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/209112

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX