AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 417953
Accepted
Michael Ecklund
Michael Ecklund
Asked: 2012-08-16 12:44:23 +0800 CST2012-08-16 12:44:23 +0800 CST 2012-08-16 12:44:23 +0800 CST

为远程主机创建 SSH 密钥

  • 772

我开始使用远程主机。他们需要来自我的服务器的“SSH KEY”。我如何创建一个 SSH 密钥,他们可以使用它来允许来自我的服务器的连接?如果可能的话,我想将密钥分配给我服务器上的特定 SSH 用户。

我只是担心授予他们访问我的服务器的权限。他们不应该访问我的,但我应该可以访问他们的。我怎样才能生成一个密钥来实现这一点?

我不知道它是否有帮助,但我有 Ubuntu 12.04

ssh
  • 2 2 个回答
  • 4580 Views

2 个回答

  • Voted
  1. Best Answer
    user9517
    2012-08-16T12:54:50+08:002012-08-16T12:54:50+08:00

    您可以使用ssh-keygen来执行此操作

    ssh-keygen -t rsa -b 2048 
    

    回答问题或接受默认值,然后为私钥提供密码。

    现在根据他们的要求将公钥 (id_rsa.pub) 发送到远程主机。

    将要访问远程主机的用户的私钥放在 ~/.ssh/id_rsa 中。确保 .ssh 目录上的权限为 700,~/.ssh/id_rsa 为 600。

    你应该可以走了。


    useradd testuser
    su - testuser
    
    ssh-keygen -t rsa -b 2048
    Generating public/private rsa key pair.
    Enter file in which to save the key (/home/testuser/.ssh/id_rsa):
    Created directory '/home/testuser/.ssh'.
    Enter passphrase (empty for no passphrase):
    Your identification has been saved in /home/testuser/.ssh/id_rsa.
    Your public key has been saved in /home/testuser/.ssh/id_rsa.pub.
    The key fingerprint is:
    81:dc:8d:19:f1:32:39:67:89:47:88:dc:a6:8a:3d:40 [email protected]
    

    发送id_rsa.pub到远程主机,应该将其放在~/.ssh/authorized_keys具有权限600或644最多用户的位置。

    • 2
  2. Fleshgrinder
    2012-08-16T12:49:17+08:002012-08-16T12:49:17+08:00

    如果他们需要来自您服务器的公钥,那么您已经有了一个。我正在使用 Debian 和 Ubuntu 应该是一样的,所以它在/etc/ssh.

    如果他们需要用户帐户的公钥,以便您可以通过例如 ssh 使用该用户帐户登录他们的系统,那么您只需为自己创建一个密钥。ssh-keygen -t dsa或者rsa一定要使用密码!


    在下面回答您的评论!

    只需首先创建该用户,执行以下操作(并按照屏幕上的说明进行操作!):

    adduser someuser
    su someuser
    cd
    ssh-keygen -t dsa
    chmod 600 .ssh/id_dsa.pub
    

    这id_dsa.pub是您必须发送给他们的密钥。

    • 1

相关问题

  • 如何最好地设置 ssh 隧道以访问远程网络 (Linux)

  • SSH 和重定向

  • 通过 SSH 会话使用 NET USER 命令拒绝访问

  • SSH 服务器零日漏洞利用 - 保护自己的建议

  • ubuntu apt-get upgrade - 如何在 shell 中单击确定?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve