各种远程工具通过ssh连接服务器
开头
最近遇到一个新的连接方式,不能使用日常的本地通过账号连接,要通过私钥和公钥的连接方式,然后连接到服务器之后才能连接到数据库。因为之前没试过这种连接方式,所以很多工具有不同的连接方式。所以现在就记录下来
生成电脑的公钥和密钥
打开Git Bash, 输入
ssh-keygen -t rsa -C "your_email@example.com",回车
执行查看公钥的命令:cat ~/.ssh/id_rsa.pub
到 C:\Users\你的用户名.ssh 目录下,会看到有两个文件:id_rsa, id_rsa.pub。有 .pub 后缀的文件就是公钥,另一个文件则是密钥
打开id_rsa.pub, 复制里面的内容,然后将这个公钥给到运维人员或者放到你自己的github里面,就可以不用密码就登录到服务器上,或者拉取项目了。
最后的邮箱地址可以随意更改和名字,如果私钥能对上的话公钥的话,ssh就能连上。
SecureCRT连接
SecureCRT是一个远程连接的工具,支持ssh连接,跟 MobaXteam ssh的连接一样,网上有下载方法,下载完之后就可以连接了,他可以按照正常的ip地址和用户连接。当公司运维已经将公钥部署到服务器上,就会将一个机器列表发给你,然后你要将这批机器列表导到 SecureCRT 里中。
通过文件快速检索文件Session,然后将这批ini文件导入到SecureCRT的安装目录中
找到session
导入,就可以在 SecureCRT 中看到你导进去的列表。然后选择其中一个会话,配置私钥。
点击右键,然后选择这个
然后就可以通过私钥去连接了。
Navicat数据库ssh连接
Navicat数据库管理下载窝这里就不说了,接下来是怎么连接。首先点击新建连接,然后选择ssh,勾选使用SSH通道,输入你想连接的服务器,还有端口,然后验证方法选择公钥,配置好你的私钥位置,
如果你的私钥你设置了密码(通行短语)的,就需要输入你设置的密码,如果没有密码的,就什么都不用填。点击保存就好了。
上面配置的是服务器的连接,接下来的是数据库的连接
点击回常规,然后输入随意的连接名,然后输入想连接的数据库的主机端口用户名和密码,然后就可以测试连接了。
MobaXteam 公钥连接
MobaXteam 工具有点像 SecureCRT,新建一个session连接,然后输入远程的主机号和端口、用户名。如果不知道的可以在ini文件中查看,选择私钥的地址
然后可以在Bookmark setting这个框中填入连接的名字。然后点击ok就能连接上
Winscp 公钥连接
Winscp的连接方式和MobaXteam 一样,也是需要配置私钥,输入主机名,端口号,用户名,密码,然后点击高级,选择用ssh中的验证,然后选择本机的密钥文件 就可以确定并连接上
winscp关于需要用到.ppc的密钥,但生成出来的私钥不是.ppc的,可以进行一个简单的转换,参考:https://blog.csdn.net/awhip9/article/details/77979489
Redis Destock 公钥连接
和MobaXteam差不多。也是需要配置私钥就可以,注意,第一个Host是redis的主机地址,第二个ssh是服务器的主机地址
vscode ssh远程连接
前提,因为vscode远程连接对服务器的内核有要求,如果内核过于久远,就不适合这种连接方式。
主要是ssh,config的配置 需要先下载一个远程连接的插件 Remote-ssh
下载完之后,就可以在远程连接的config中去配置。
配置说明
# 第一种是通过ssh去连接的
Host my_test_192.168.254.128
HostName 192.168.254.128
User dior
# Read more about SSH config files: https://linux.die.net/man/5/ssh_config
# 第二种是通过密钥要连接的
Host 显示的名字
HostName 服务器地址
Port 端口地址
User 用户名字
IdentityFile "C:\Users\Administrator\.ssh\id_rsa" # 私钥地址
vscode直接连上服务器的好处,就是如果需要修改文件,就可以直接修改然后服务器上的文件也会跟着修改。但是有些服务器的会因为内核问题,无法通过vscode-ssh去连接。
如果有需要在服务器上配置文件上传,或者直接在服务器上进行开发的,可以使用pycharm专业版的去连接。
pycharm 私钥ssh来连接
首先下载好专业版的pycharm。然后写一段测试代码:
from flask import Flask, request, render_template
app = Flask(__name__)
@app.route('/')
def index():
return 'hello world'
@app.route('/index')
def index2():
a = 2
b = 3
c = a * b
d = a * c
return 'hello world'
if __name__ == '__main__':
app.run(host='0.0.0.0', port=9003, debug=True)
写好代码之后,指定已经创建好虚拟环境的解释器
然后点击apply,添加完环境之后就可以直接运行了,试试Debbug行不行(这里掉坑里了,之前配置了一次ssh,然后之后执行程序的时候一直用着远程ssh的解析器,所以需要配置回本地的环境,网上也很少写这个的,记录一下如何配置回自己本地的解释器)
点击run,然后选择
然后配置,之后 apply
执行代码
然后试试debug模式
定住了,调试接口的时候这就很方便了,F7是下一步,F9是跳到下一个断点,也就是你定到的红点。 现在我们配置ssh的远程服务器连接,就是将本地的代码push到远程的服务器上
并用远程的服务器去解释调试代码
首先,需要配置远程的服务器地址
配置完之后点击ok
连接上之后会出现一个终端,是服务器的shell
然后配置文件上传的路径
点击齿轮,添加ssh的服务器路径
点击加号,填入服务器路径,端口号,用户名,和私钥位置 就可以了,点击apply, 然后继续点next
创建一个文件夹,然后指定项目文件同步到的文件夹
因为Pycharm上传会依赖到一大堆东西,所以我们第一次上传要将配置文件都配置在隐藏目录下面
将.pycharmhelp目录改到自己的home目录下,不要展示出来,涉及到的文件有很多
点击ok。pycharm就会自动上传,然后就可以愉快的编程了
试试运行,然后debug,也是可以的。测试的时候可以借助工具 postman
完。