Skip to main content

此版本的 GitHub Enterprise 将停止服务 2022-10-12. 即使针对重大安全问题,也不会发布补丁。 为了获得更好的性能、更高的安全性和新功能,请升级到最新版本的 GitHub Enterprise。 如需升级帮助,请联系 GitHub Enterprise 支持

访问管理 shell (SSH)

SSH 访问可让您运行 GitHub Enterprise Server 命令行实用程序,以进行故障排除、运行备份及配置复制。

关于管理 shell 访问

如果您有权限通过 SSH 访问管理 shell,可运行 GitHub Enterprise Server 的命令行实用程序。 SSH 访问也可用于故障排查、运行备份和配置复制。 管理 SSH 访问与 Git SSH 访问分开管理,仅可通过端口 122 访问。

允许通过 SSH 访问管理 shell

要启用管理 SSH 访问,您必须向授权密钥的实例列表添加 SSH 公钥。

提示:对授权 SSH 密钥进行的变更会立即生效。

  1. 从 GitHub Enterprise Server 上的管理帐户任意页面的右上角,单击

    用于访问站点管理员设置的火箭图标的屏幕截图

  2. 如果你尚未在“站点管理员”页上,请在左上角单击“站点管理员”。

    “站点管理员”链接的屏幕截图 1. 在左侧边栏中,单击“管理控制台”。 左侧边栏中的 管理控制台 选项卡

  3. 在“SSH 访问”下,将密钥粘贴到文本框中,然后单击“添加密钥”。 添加 SSH 密钥的文本框和按钮 1. 在左侧边栏下,单击“保存设置”。

    管理控制台 中的“保存设置”按钮的屏幕截图

    注意:保存 管理控制台 中的设置会重启系统服务,这可能会导致用户可察觉的停机时间。

  4. 等待配置运行完毕。

    配置实例

通过 SSH 连接到管理 shell

将 SSH 密钥添加到列表后,以 admin 用户的身份在端口 122 上通过 SSH 连接到实例。

$ ssh -p 122 admin@github.example.com
Last login: Sun Nov 9 07:53:29 2014 from 169.254.1.1
admin@github-example-com:~$ █

排查 SSH 连接问题

如果在尝试通过 SSH 连接到 your GitHub Enterprise Server instance 时发生 Permission denied (publickey) 错误,请确认是否是通过端口 122 进行连接的。 您可能需要明确指定要使用的 SSH 私钥。

要使用命令行指定 SSH 私钥,请使用 -i 参数运行 ssh

ssh -i /path/to/ghe_private_key -p 122 admin@hostname

还可以使用 SSH 配置文件 (~/.ssh/config) 指定 SSH 私钥。

Host hostname
  IdentityFile /path/to/ghe_private_key
  User admin
  Port 122

使用本地控制台访问管理 shell

在 SSH 不可用等紧急情况下,您可以在本地访问管理 shell。 以 admin 用户身份登录,并使用在 GitHub Enterprise Server 初始设置期间确定的密码。

管理 shell 的访问限制

管理 shell 访问仅可用于故障排查和执行记录的操作程序。 修改系统和应用程序文件、运行程序或安装不受支持的软件包可能导致支持合约失效。 如果您对支持合约允许的活动有任何疑问,请联系 GitHub Enterprise 支持