在开发的过程中,我们有很多时候需要用到ssh登录。
现在各种服务器登录又多,密码也多,密码容易忘记。
慢慢的,越来越多的登录使用了ssh密钥的方式。
在这里,把开发过程中常用的可以使用ssh密钥登录的配置方式记录下来。
win11
打开cmd命令行,输入ssh生成命令,“ssh-keygen”工具可以由安装git客户端附带安装。
ssh-keygen -t rsa
之后不断Enter到底,命令会在“C:\Users\12345\.ssh”目录下生成2个文件“id_rsa”(私钥文件,妥善保管)和“id_rsa.pub”(公钥文件)。
查看生成的密钥公钥。
cat .\.ssh\id_rsa.pub
ssh-rsa XXXXXXXXC1yc2EXXXXDAQABAAABgQCuJsOZneFhNU5IUylpjluQRcz1hLT50hdhK5SW+ZjECCBDG3/Qerw2x+OMRYX8XXXXXaoQHyA9sYLKsvV1x9hi6GBDQph3ixrhH6qDiDYr8jrRxi/BIGpX8opa93IkjsduCji9SSrtgRXXXXXZkisBK2A0TNlToFseVm0hAsz64xGki59qzHxrOQVJpSAZv0cJ3GI+usahj/SndwbTl4YpCkL1F21ZMsyg6mAfXXXXXXQIw1vSoLlTgaV2/jp9Hh1HkjPHK2uaShbFVX4DNP8iLZ9lTNR/cmFT+ejmse6wNHAvVjdsMuh1yqZIVLNXXXXXM0Mzsxhv0ugAXVfMBV8KhRSTg4hHQtXXXXXXXnbkDHSXkLv+fOJtcwz+OduKw+rvcwx2FAkH3J9xPJUVe6loV9CUc2X7RNckKZG2jjVqaJYX2lNYCFQCUXXXXXXXX0mUZ5RdTnU2lrPPcwkkeLl
服务端配置。
上传公钥文件“id_rsa.pub”到服务器目录” ~/.ssh”,执行命令写入鉴权文件。
cat id_rsa.pub >> authorized_keys
客户端配置。
ssh客户端使用xshell测试。
配置会话属性->连接->用户身份验证,选择公钥鉴权优先。
配置属性截图。
服务端配置。
登录gitlab,选择“profile setting”,找到“SSH Keys”,执行“Add an SSH key”,复制“id_rsa.pub”的内容到“Key”并“Add key”。
配置界面截图。
客户端配置。
GIT客户端要区分不同的SSH client。
普通的gitbash自带的“C:\Program Files\Git\usr\bin\ssh.exe”的配置方法和xshell是类似的。
而TortoiseGit自带的“C:\Program Files\TortoiseGit\bin\TortoiseGitPlink.exe”则需要做格式转换,把密钥文件转换为ppk文件,下面介绍ppk文件的配置方法。
打开cmd命令行,输入命令“puttygen”,打开GUI工具“putty key generator”,点击“Conversions“菜单项中的”Import key“,选择在刚刚生成的”id_rsa“文件 ,在puttygen的界面上点击Save private key按钮就可以把私钥转换为ppk的格式。
执行git命令时选择“load putty key“,clone的配置如截图。
vscode终端可以直接连接到linux服务器,并远程调试运行程序,只需要按照一个“remote-ssh”插件,非常方便。
服务端配置。
远程服务器配置方法和上面的“LINUX服务器配置”方法一样。
上传公钥文件“id_rsa.pub”到服务器目录” ~/.ssh”,执行命令写入鉴权文件。
cat id_rsa.pub >> authorized_keys
客户端配置。
vscode要先按照好“remote-ssh”插件。
打开VSCode,按F1,输入“remote ssh config”,选择“remote-ssh:open ssh configuration file…”,打开默认config文件,配置如下。
Host 192.168.0.151
HostName 192.168.0.151
User root
Port 22
IdentityFile "C:\Users\12345\.ssh\id_rsa"
登录方法1,按F1,输入“remote ssh connect”,选择“remote-ssh:connect to host…”,选择“192.168.0.151“服务器。
登录方法2,选择vscode最左边的插件窗口“远程资源管理器“,找到要登录的服务器并右键连接。
登录成功之后,可以在vscode的左下角看到“SSH:192.168.0.151“的成功标识。
使用“ssh-keygen“生成密钥文件“id_rsa”和“id_rsa.pub”。
使用“puttygen“生成ppk文件。
vscode中的远程登录和xshell其实是一样的,只是界面和配置方法有区别。
空空如常
求真得真