在Windows电脑上生成证书
确保电脑上ssh可用
ssh命令可用的话,就继续在命令行窗口输入ssh-keygen -t rsa
并敲击回车键生成公钥证书和私钥证书文件。生成的目录也指明了,通常在用户的.ssh目录下,其中id_rsa是私钥证书文件,id_rsa.pub为公钥证书文件。
将公钥证书放到Linux服务器上
在上一步中,我们已经在本地Windows系统生成了公钥证书和私钥证书,接下来就是要让远程Linux系统信任本地Windows系统,所以需要将在Windows系统生成的公钥证书文件id_rsa.pub放到Linux系统的/root/.ssh目录下,如果没有这个目录则执行mkdir -p /root/.ssh命令进行创建。但是具体步骤如下:
- 复制Windows系统下.ssh目录下生成的公钥证书文件id_rsa.pub重命名为
authorized_keys
。 - 将authorized_keys上传到Linux系统的/root/.ssh目录下。这样远程Linux服务器就信任本地的Windows系统服务器了,你可以在本地的Windows系统上通过ssh远程登录Linux系统了。
- 测试。可以在本地Windows系统上输入ssh 用户名@IP地址进行远程登录。如果能登录成功并且能执行Linux命令表示配置成功。
注意:
- 其实就是将本地Windows系统上的公钥证书文件id_rsa.pub文件上传到远程Linux系统上的/root/.ssh目录下并且重命名为authorized_keys。
- 如果已经存在authorized_keys文件了,那么直接将复制的内容添加到文件的最后一行。因为每一行都表示一条信任连接,不要去删除。
IDEA通过SSH连接远程Linux服务器
只有上述操作成功,才能通过IDEA来远程连接。
- 打开File,然后选择Settings...。
- 选择Tools下的SSH Configurations面板,点击+号选择新建SSH连接。
- 输入连接参数。Host输入远程Linux服务器的IP地址;Port输入端口号,默认是22;User name输入登录的用户名;Authentication type选择Key pair表示通过密钥进行验证;Private key file则选择Windows系统下私钥证书id_rsa的目录,即在用户目录下的.ssh子目录中;Passphrase不用填。
- 如果有多个连接,那么在SSH Terminal面板中的SSH configuration选择框中选择一台默认连接,或者选择Select SSH configuration on every run表示在每次打开时手动选择要连接的主机。
- 在菜单条上的Tools中选择Start SSH Session...开启会话。在出现的Select Host to Connect面板中选择要连接的服务器。