如何让scp时不输入密码

jasonhc 2011-07-29 11:42:53
现在的情况时从本地机器拷贝文件到服务器上不需要输入密码,反过来从服务器上拷贝到本地机器就需要输入密码。我是把本机的".ssh/id_rsa.pub"放到对方的".ssh/authorized_keys"文件中,反过来也把服务器上的id_rsa.pub放到本机的authorized_keys文件里。是哪里没做对吗?
...全文
707 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
steptodream 2011-07-29
  • 打赏
  • 举报
回复
另外你生成密钥公钥的时候 要求输入密码的地方直接回车 否则还是要要求输入密码
steptodream 2011-07-29
  • 打赏
  • 举报
回复
[Quote=引用楼主 jasonhc 的回复:]
现在的情况时从本地机器拷贝文件到服务器上不需要输入密码,反过来从服务器上拷贝到本地机器就需要输入密码。我是把本机的".ssh/id_rsa.pub"放到对方的".ssh/authorized_keys"文件中,反过来也把服务器上的id_rsa.pub放到本机的authorized_keys文件里。是哪里没做对吗?
[/Quote]
反过来你把服务器上的id_rsa.pub放到本机的authorized_keys文件里 但是你也要把本机的id_rsa放到服务器上的.ssh/id_rsa啊!!

简单的说 密钥认证 每次生成的id_rsa和id_rsa.pub是一一配对使用的
freetstar 2011-07-29
  • 打赏
  • 举报
回复
ssh-copy-id可以方便把公钥传到对方的机器里

检查下是否真正传输过去
jasonhc 2011-07-29
  • 打赏
  • 举报
回复
确实是输入密码就可以登录了啊。我开始也不知道去哪看log文件。
steptodream 2011-07-29
  • 打赏
  • 举报
回复
早就应该把错误贴出来 这个根本就是无法登陆! 你却反复的说"需要输入密码"
jasonhc 2011-07-29
  • 打赏
  • 举报
回复
知道了,是"/home/user"目录的权限问题,设为755就可以了。谢谢了。
jasonhc 2011-07-29
  • 打赏
  • 举报
回复
终于看到本机上错误的log了,如下:
Jul 29 14:04:09 user-desktop sshd[7161]: Authentication refused: bad ownership or modes for directory /home/user

哪位给分析一下。
jasonhc 2011-07-29
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 steptodream 的回复:]

一样可以 不一样也可以 认证的时候的公用和密钥必须是生成时候的一对!

你不要混在一起说了!

情况1 你从本机登陆服务器时候用的id_rsa和服务器的id_rsa.pub要是同一对的

情况2 你从服务器登录到本机时候……
[/Quote]

不对啊。我服务器上的id_rsa.pub和本机的id_rsa明显不是一对啊,可登录服务器时不需要密码啊。按我的理解,应该本机上的id_rsa和服务器上的authorized_keys里存的公钥是一对就可以了。
我怀疑是本机ssh服务的配置有问题。怎么看ssh的log文件呢?
feiyu2994 2011-07-29
  • 打赏
  • 举报
回复
学习了~
steptodream 2011-07-29
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 jasonhc 的回复:]

那就是说,服务器和本机上的id_rsa和id_rsa.pub必须是一样的?也就是两台机器用一套公钥密钥。
[/Quote]
一样可以 不一样也可以 认证的时候的公用和密钥必须是生成时候的一对!

你不要混在一起说了!

情况1 你从本机登陆服务器时候用的id_rsa和服务器的id_rsa.pub要是同一对的

情况2 你从服务器登录到本机时候用的id_rsa和本机的id_rsa.pub要是同一对的
steptodream 2011-07-29
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 jasonhc 的回复:]

刚想到一点,是不是用户在两台机器上的登录密码必须一样啊?
[/Quote]
不一定一样 但是要保证如下3点!!!!
1.你生成的时候的密钥是A 公钥是A.pub 那么你不能拿A去跟B.pub认证 同样不能拿B跟A.pub认证
公钥放在被登录的服务器上 密钥放在客户端
2.生成密钥A和公钥A.pub的时候要求输入密码的时候直接回车
3.你的被登录的机器的ssh服务器是开启了的公钥密钥认证
jasonhc 2011-07-29
  • 打赏
  • 举报
回复
那就是说,服务器和本机上的id_rsa和id_rsa.pub必须是一样的?也就是两台机器用一套公钥密钥。
jasonhc 2011-07-29
  • 打赏
  • 举报
回复
刚想到一点,是不是用户在两台机器上的登录密码必须一样啊?
steptodream 2011-07-29
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 jasonhc 的回复:]
谢谢steptodream。可为什么从本机拷贝文件到服务器就不需要密码呢?
[/Quote]
本机-》服务器
服务器-》本机

这是2个过程 分别是单独的 你干嘛混在一起去看呢?

你从本机往服务器上访问 用id_rsa去跟服务器上的id_rsa.pub认证
反过来访问 就是服务器用id_rsa和本机的id_rsa.pub认证

说不明白了!!!
jasonhc 2011-07-29
  • 打赏
  • 举报
回复

谢谢steptodream。可为什么从本机拷贝文件到服务器就不需要密码呢?

19,615

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧