使用相同的id_rsa和id_rsa.pub在多个用户帐户上使用ssh登录

时间:2011-05-26 14:11:21

标签: linux ssh

我有id_rsaid_rsa.pub。说我在同一台机器上有5个用户。我想在没有密码的用户之间使用相同的id_rsaid_rsa.pub ssh。可能吗 ?我弄清楚如果user1想要ssh user2@localhost ... /home/user2/.ssh必须有一个名为authorized_keys且内容为id_rsa.pub的文件。并且/home/user1/.ssh必须具有id_rsa文件。所以通过这样做,user1可以做ssh user2@localhost 但是,如果user2想要ssh user1@localhost,则user1必须使authorized_keys的内容为id_rsa.pub,而user2必须包含id_rsa文件

总结一下,user1具有:authorized_key, id_rsa和user2具有相同的文件。 在我的机器上发生的事情是:user1可以执行ssh user2@localhost但是user2无法执行user1@localhost

有什么遗失?有什么我不明白的东西?是否可以在使用相同id_rsa和相同id_rsa.pub的用户之间进行ssh?

1 个答案:

答案 0 :(得分:3)

用户/home/user/.ssh目录的文件权限必须为700/home/user/.ssh/authorized_keys必须为600。同时,每个.ssh目录中的所有文件都必须由其所在主目录中的用户拥有。要递归更改所有权,您可以:

chown -R username:username /home/username/.ssh

如果您有多个用户并且需要为每个用户执行此操作,则可以使用此循环:

for SSHUSER in user1 user2 user3 user4 user5; do
  # Add the authorized_keys file if it doesn't already exist
  touch /home/$SSHUSER/.ssh/authorized_keys

  # Set its permissions
  chmod 600 /home/$SSHUSER/.ssh/authorized_keys

  # Set directory permissions
  chmod 700 /home/$SSHUSER/.ssh

  # Set ownership for everything
  chown -R $SSHUSER:$SSHUSER /home/$SSHUSER/.ssh
done;