1 功能介绍 {#heading-1}
本文主要介绍用户通过密钥连接 JumpServer 堡垒机。很多用户习惯使用终端工具来登录堡垒机,JumpServer 也支持这种方式。每个用户可以在堡垒机设置公钥,配置好后即可在终端进行连接,密钥算法目前支持 RSA 算法。
2 操作步骤 {#heading-2}
2.1 方式一:使用 JumpServer 生成的密钥文件 {#heading-3}
-
切换至 JumpServer 系统中的 "用户名称" -> 认证设置 -> "SSH 公钥设置" 中,点击 "重置并下载密钥" 如下图。
-
点击 "重置并下载密钥" 后浏览器会弹出密钥文件的下载,我们存储到本地。
2.2 方式二:使用本地 PC 的密钥文件 {#heading-4}
-
本地 PC 端无密钥文件的,参考该步骤生成密钥对。
ssh-keygen -t rsa # 生成密钥对 `Generating public/private rsa key pair. Enter file in which to save the key (/Users/ZB238/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /Users/ZB238/.ssh/id_rsa Your public key has been saved in /Users/ZB238/.ssh/id_rsa.pub The key fingerprint is: SHA256:kN+oRiEU/K4CKCbNiLLGGaoJUIyhjCF23JowsZ0Ak0g ZB238@coxi-MacBook-Pro.local The key's randomart image is: +---[RSA 3072]----+ |XEoo+. | |OO=oo. . | |+o=o+.+ | | . o ..+ o | |++ .. S . | |Xoo ... | |Ooo .o | |+=. .. | |= . | +----[SHA256]-----+`
-
查询本地 PC 端公钥,公钥文件为 id_rsa.pub。
cat .ssh/id_rsa.pub # 查看密钥文件 `ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC/ens830pG8pIfTxYaAadLKDLonWkfHf9JXO/oGKYXG5E2+LccYtkPpGquOzni/85Zvj/Qc7bVrfK6nn2GV8ey+QTrxbUZ5SVxZ4y2KoCRVlxY73IiPET/GR64nEt5Ab5qcywUNf6TK1jkCL+/lQVrmUXCOrkyJmICl6ziuWlfRx7u8sFTUqliEb97aOxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxJoCjuzQ5ResVy5NzFZ317R1D9iX7iUh75uVDMwh/5LOLZ7NwPikjhtbiEZAWHdAitzFJs1I+h4c1f/1GWf3sqHar+jbD3y16OtaZQWCMnyzpHZud3cC6FWiDYdFPusHUWp30H1hwhvCft8IRdLavp6PymStq+lJXjfhOLIr889MTar7ziCrxJADEm+KB44PzxSIbZd/Co9Jiy26m9lX1FAFK7b84tanufT6jwlWogSZiJc= admin@coxi-MacBook-Pro.local`
-
复制公钥信息至 JumpServer 的 "用户名称" -> "认证设置" -> "更新 SSH 公钥",点击 "更新"。
在更新页面中,填入公钥信息,点击提交。
2.3 SSH 客户端方式连接 JumpServer {#heading-5}
2.3.1 通过 MacOS 系统自带的 "终端" 工具连接。 {#heading-6}
-
修改密钥文件权限。
chmod 600 admin-jumpserver.pem
-
将密钥文件移动至 SSH 文件夹目录。
mv admin-jumpserver.pem .ssh/
-
编辑 config 文件(没有该文件可以新建)
vim .ssh/config # 新增以下内容 JumpServer_key_adminuser ======================== `Host 10.1.13.214 HostName 10.1.13.214 PreferredAuthentications publickey IdentityFile ~/.ssh/admin-jumpserver.pem` # 参数说明: <br /> `Host:自定义别名 HostName:真实的服务器地址(域名) User:用户名(可省略) PreferredAuthentications:权限认证(publickey,password publickey,keyboard-interactive)一般直接设为publickey IdentityFile:密钥文件路径`
-
命令连接操作 JumpServer 堡垒机。
命令格式: `ssh -p2222 JumpserverUsername@JumpserverHostIP` ssh admin@10.1.13.214 -p2222 <br /> Adnministrarot, JumpServer 开源堡垒机 1) 输入 部分IP,主机名,备注 进行搜索登录(如果唯一). 2) 输入 / + IP,主机名,备注 进行搜索,如:/192.168. 3) 输入 p 进行显示您有权限的主机. 4) 输入 g 进行显示您有权限的节点. 5) 输入 d 进行显示您有权限的数据库. 6) 输入 k 进行显示您有权限的Kubernetes. 7) 输入 r 进行刷新最新的机器和节点信息. 8) 输入 s 进行中英日语言切换. 9) 输入 h 进行显示帮助. 10) 输入 q 进行退出.</code></pre></li>
2.3.2 通过 FinalShell 工具连接 {#heading-7}
简述:通过 FinalShell 工具连接,类似 Xshell、SecureCRT 等工具。
-
修改密钥文件权限。
chmod 600 admin-jumpserver.pem
-
打开 FinalShell 工具,配置连接、认证等信息。
-
连接效果如下图:
``