使用公钥 ssh 授权用户账户

使用公钥 ssh 授权用户账户

我有一台服务器,我希望所有用户都能使用他们的私钥进行访问。

  • 用户使用ssh-keygen -t rsa一对公钥和私钥生成。我获得了公钥,格式如下:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDe++u83PipzF1YmdJ0/OI2ivt/lR7IED5gQ+IBuN97vayfazKKV8+NAGI3o+Qh1f7kCQk3J9km/9tIAPpWZQWZg95aPwkmx4QuYoI7kn/LLaOYtTgaAqU0z9TzP8k83Sth5D3ET4LnkNrfKUhiPQsN1+WnhRafEv3Hu3+mHU7d8KGVyI7yhRoGWFrmPGwobza0bDsjDrSo70TCcMja8UgUTabukUmF3oj92tVKQZ+doNn4x1084rPKfky+5WGXbcuXTZnmWZRDOMqHsXicXp2m0x26oYJ0lTUnAKzWt25t2weKn24ynZzBEFRJi8ndWG+BKFiQsbSlS8ntWtJ7+9vf test@test-PC

现在在服务器上,我创建了一个名为的帐户test,我想授权将该公钥与用户共享test

我已经在行内设置了sshd_config

Protocol 2
Match User root
    PasswordAuthentication no
Match Group foreigners
    PasswordAuthentication no
Match all

AuthorizedKeysFile      .ssh/authorized_keys``

我现在应该在authorized_keys文件中插入公钥吗?如果是这样,我该如何将该密钥与其所需用户(测试)绑定?

答案1

您需要将应该访问该帐户的每个人的公钥复制/附加到此用户的test文件中authorized_keys,该文件通常位于~/.ssh/authorized_keys~/扩展到主目录,通常也是如此/home/test/)。

这就是所有要做的事情。

答案2

以下是我要做的事情:

  • 一旦您的用户已经创建了他们的公钥/私钥,他们就必须运行下面的命令才能将他们的公钥导出到服务器。

    ssh-copy-id username@ip_address
    
  • 在服务器上,您必须修改/etc/ssh/sshd_config文件并添加以下内容

    Match User username
            AuthenticationMethods publicKey
    
  • 如果是针对所有用户,只需输入AuthenticationMethods publicKey语句

  • 然后重新启动 sshd 服务就可以了

干杯

相关内容