PyCharm 2025.1 Help

配置 SSH 和 SSL

为了使数据库连接更加安全,一些服务要求使用 SSH 或 SSL。

SSL

以下过程描述了适用于大多数数据库的 SSL 配置。 对于某些数据库,您需要使用另一种方法才能成功连接。 您可以在 DataGrip 文档中查看 Cassandra 和 Heroku Postgres 的配置示例。

连接到支持 SSL 的数据库

  1. 打开数据源属性。 您可以通过以下选项之一打开数据源属性:

    • 在 数据库 工具窗口(视图(V) | 工具窗口 | 数据库 )中,单击 数据源属性 图标 数据源属性图标。

    • 按下 Ctrl+Alt+Shift+S。

  2. 在 数据源 选项卡上,选择您想要修改的数据源。

  3. 点击 SSH/SSL 选项卡并选择 使用SSL(L) 复选框。

  4. 在 CA 文件(A) 字段中,导航到 CA 证书文件(例如, mssql.pem )。

  5. 您可以将证书文件字段留空,并使用信任库从包含的证书中获取所需证书。 要执行此操作,请勾选 使用信任库 复选框,并选择您要使用的信任存储。

    • IDE :使用 IDE 接受的证书。 您可以在 工具 | 服务器证书 添加新的已接受证书。

    • JAVA :使用 JAVA truststore 证书。

    • 系统 :使用系统信任库证书。

  6. 在 客户端证书文件 字段中,导航到客户端证书文件(例如, client-cert.pem )。

  7. 在 客户端密钥文件(K) 字段中,导航到客户端密钥文件(例如, client-key.pem )。

  8. 从 模式 列表中选择验证模式:

    需要

    验证服务器是否识别客户端证书(如果提供证书)。

    验证CA

    • 验证服务器是否识别客户端证书(如果提供证书)。

    • 通过检查直到在客户端存储的根证书的证书链来验证服务器。

    全面验证

    • 验证服务器是否识别客户端证书(如果提供证书)。

    • 通过检查直到在客户端存储的根证书的证书链来验证服务器。

    • 验证服务器主机以确保其与存储在服务器证书中的名称匹配。

    如果任意一个证书无法验证,SSL 连接将失败。

  9. 要确保数据源连接成功,请点击 测试连接。

    使用 SSL 连接到数据库

禁用与数据库的 SSL 连接

  1. 打开数据源属性。 您可以通过以下选项之一打开数据源属性:

    • 在 数据库 工具窗口(视图(V) | 工具窗口 | 数据库 )中,单击 数据源属性 图标 数据源属性图标。

    • 按下 Ctrl+Alt+Shift+S。

  2. 在 数据源 选项卡上,选择您想要修改的数据源。

  3. 点击 SSH/SSL 选项卡并清除 使用SSL(L) 复选框。

  4. 点击 应用。

从其他数据源复制 SSL 设置

如果您为一个数据源配置了 SSL 设置,可以将其复制到另一个数据源。

  1. 打开数据源属性。 您可以通过以下选项之一打开数据源属性:

    • 在 数据库 工具窗口(视图(V) | 工具窗口 | 数据库 )中,单击 数据源属性 图标 数据源属性图标。

    • 按下 Ctrl+Alt+Shift+S。

  2. 在 数据源 选项卡上,选择您想要修改的数据源。

  3. 点击 SSH/SSL 选项卡并选择 使用SSL(L) 复选框。

  4. 点击 复制自… 链接并选择您想要复制的配置。

SSH

安全外壳(Secure Shell 或 SSH)是一种用于加密客户端和服务器之间连接的网络协议。

在 PyCharm 中,您可以通过以下任意一种方式创建 SSH 连接:

PyCharm SSH 隧道

PyCharm 可以基于您设置的 SSH 配置创建 SSH 隧道。 要访问 SSH 配置设置,请按 Ctrl+Alt+S 打开设置并选择 工具 | SSH 配置。

要为数据源使用 SSH 隧道,请在 SSH/SSL 选项卡的 数据源和驱动程序 对话框(Ctrl+Alt+Shift+S )中选中 使用 SSH 隧道 复选框。

所有已创建的 SSH 连接在项目中的所有数据源之间共享。 如果您不想在项目之间共享连接,请在 SSH 连接设置中选中 仅对此项目可见 复选框。

通过 SSH 连接数据库

  1. 打开数据源属性。 您可以通过以下选项之一打开数据源属性:

    • 在 数据库 工具窗口(视图(V) | 工具窗口 | 数据库 )中,单击 数据源属性 图标 数据源属性图标。

    • 按下 Ctrl+Alt+Shift+S。

  2. 选择您要更改连接设置的数据源配置文件。

  3. 点击 SSH/SSL 选项卡并选择 使用SSH 隧道(H) 复选框。

  4. 点击 添加SSH 配置 按钮(添加 SSH 配置)。

  5. 在 SSH 对话框中,点击 添加 按钮。

  6. 如果您不想在项目之间共享配置,请选择 仅对此项目可见 复选框。

  7. 在 主机、 用户名(U) 和 端口 字段中,指定您的连接详细信息。

  8. 您可以从 身份验证类型(Y) 列表中选择一种认证方法:

    • 密码 :使用密码访问主机。 要在 PyCharm 中保存密码,请选择 保存密码 复选框。

    • 密钥对(OpenSSH 或 PuTTY) :使用 SSH 认证与密钥对。 要应用此身份验证方法,您必须在客户端计算机上拥有私钥,并在远程服务器上拥有公钥。 PyCharm 支持使用 OpenSSH 工具生成的私钥。

      指定存储您的 private key的文件路径,并在相应的字段中输入密码短语(如果有)。 要让 PyCharm 记住密码短语,请选中 保存密码短语(E) 复选框。

    • OpenSSH 配置和身份验证代理 :使用管理您的 SSH 密钥的凭据助手应用程序,例如 ssh-agent。

  9. 点击 OK 以确认新的 SSH 配置设置。

  10. 在 本地端口 字段的 数据源与驱动程序 对话框中,指定您希望转发连接的本地端口号。 否则,PyCharm 会动态选择端口。

数据源的 SSH 设置

禁用 SSH 连接到数据库

  1. 打开数据源属性。 您可以通过以下选项之一打开数据源属性:

    • 在 数据库 工具窗口(视图(V) | 工具窗口 | 数据库 )中,单击 数据源属性 图标 数据源属性图标。

    • 按下 Ctrl+Alt+Shift+S。

  2. 选择您要更改连接设置的数据源配置文件。

  3. 点击 SSH/SSL 选项卡并清除 使用SSH 隧道(H) 复选框。

  4. 点击 应用。

手动创建 SSH 隧道

使用 PuTTY (Windows) 创建 SSH 隧道

  1. 下载并运行最新版本的 PuTTY SSH 和 Telnet 客户端(从 https://www.putty.org/ 下载客户端)。

  2. 在 PuTTY 配置 对话框中,导航到 连接 | SSH | 身份验证。

  3. 在 用于身份验证的私钥文件 字段中,指定您的私钥文件的路径,然后点击 打开。

  4. 在命令行窗口中,指定您用于 SSH tunnel 的用户名,然后按 Enter。 请勿关闭命令行窗口。

  5. 在 数据库 工具窗口(视图(V) | 工具窗口 | 数据库 )中,单击工具栏上的 数据源属性 图标 数据源属性图标。

  6. 选择您要更改连接设置的数据源配置文件。

  7. 点击 SSH/SSL 选项卡并选择 使用 SSH 隧道 复选框。

  8. 请从 认证类型 列表中选择 OpenSSH 配置与认证代理。

  9. 在 代理主机、 代理用户 和 端口 字段中,指定连接详情。

  10. 要确保数据源连接成功,请点击 测试连接。

使用 PuTTY (Windows) 创建 SSH 隧道

使用 Pageant 创建 SSH 隧道(Windows)

Pageant 是用于 PuTTY、PSCP、PSFTP 和 Plink 的 SSH 认证代理。 Pageant 存储您的私钥,并在运行时向 PuTTY 或其他类似 PyCharm 的工具提供解锁的私钥。 您可以在 Windows 任务栏中找到 Pageant 图标。

  1. 下载最新版本的 Pageant(从 https://www.putty.org/ 下载客户端)。

  2. 在 Windows 任务栏中,右键点击 Pageant 图标并选择 添加密钥。

  3. 在 选择私钥文件 对话框中,导航到私钥文件( PPK 文件)并点击 打开。

  4. (可选)输入私钥密码并按下 Enter。

  5. 在 数据库 工具窗口(视图(V) | 工具窗口 | 数据库 )中,单击工具栏上的 数据源属性 图标 数据源属性图标。

  6. 选择您要更改连接设置的数据源配置文件。

  7. 点击 SSH/SSL 选项卡并选择 使用 SSH 隧道 复选框。

  8. 请从 认证类型 列表中选择 OpenSSH 配置与认证代理。

  9. 在 代理主机、 代理用户 和 端口 字段中,指定连接详情。

  10. 要确保数据源连接成功,请点击 测试连接。

使用 Pageant 创建 SSH 隧道(Windows)

使用 ssh-agent 创建 SSH 隧道(macOS 和 Linux)

在命令行运行所有 ssh-agent 的命令。

  1. 确保 ssh-agent 正在运行。

    ssh-agent
  2. 将您的密钥添加到代理(在以下示例中,密钥路径为 ~/.ssh/id_rsa )。

    ssh-add ~/.ssh/id_rsa
  3. (可选)在 macOS 上,您可以在 -K 选项中添加 ssh-add 命令以将密码短语存储在您的钥匙串中。 在 macOS Sierra 及更高版本中,您需要在 配置 中创建 ~/.ssh/ 文件,并包含以下文本:

    Host * UseKeychain yes AddKeysToAgent yes IdentityFile ~/.ssh/id_rsa

    如果您在 .ssh 目录中有其他私钥,请为每个密钥添加一个 IdentityFile 行。 例如,如果第二个密钥具有 id_ed25519 名称,则将 IdentityFile ~/.ssh/id_ed25519 添加为第二个私钥的附加行。

  4. 列出所有新增键。

    ssh-add -L
  5. 在 数据库 工具窗口(视图(V) | 工具窗口 | 数据库 )中,单击工具栏上的 数据源属性 图标 数据源属性图标。

  6. 选择您要更改连接设置的数据源配置文件。

  7. 点击 SSH/SSL 选项卡并选择 使用 SSH 隧道 复选框。

  8. 请从 认证类型 列表中选择 OpenSSH 配置与认证代理。

  9. 在 代理主机、 代理用户 和 端口 字段中,指定连接详情。

  10. 要确保数据源连接成功,请点击 测试连接。

使用 ssh-agent 创建 SSH 隧道(macOS 和 Linux)
最后修改日期: 2025年 4月 23日