找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 2514|回复: 6

[求助] 关于远程服务器的问题

7

主题

15

帖子

15

积分

贫民

积分
15
z2807866996 发表于 2017-12-1 09:42:16 | 显示全部楼层 |阅读模式
由于我需要访问三台服务器,server A, serverB , serverC,  由于只开放了serverA对外可连接,serverB, serverC只能通过A来进行连接。
现在,我通过PC连接到serverA, 然后通过A再连接到B,然后判断B上的 文件是否存在,返回值,回到PC。

这个需要怎么去完成??
回复

使用道具 举报

3

主题

278

帖子

278

积分

侠客

积分
278

热心会员

uitb 发表于 2017-12-1 10:07:23 | 显示全部楼层
用python脚本实现这些功能吗?这样的话可以考虑考虑paramiko模块,是一个ssh模块,感觉还可以的
回复 支持 反对

使用道具 举报

2

主题

219

帖子

219

积分

版主

Rank: 7Rank: 7Rank: 7

积分
219

热心会员默默耕耘优秀版主

剑心无痕 发表于 2017-12-1 10:32:53 | 显示全部楼层
PC发送请求Request (B + 文件名X)
A服务器收到请求(B + 文件名X)
A服务器解析请求,传送(B + 文件名X)到对应API(I)
API(I)解析 (B + 文件名X)并向服务器B发送请求Request (文件名X)
B服务器收到请求(文件名X)
B服务器解析请求,传送(文件名X)到对应API(P)
API(P)解析(文件名X)Return返回值(不存在)
B服务器生成响应Respone(不存在)
API(I)收到响应(不存在)并Return返回值(不存在)
A服务器生成响应Respone(不存在)
PC收到响应(不存在)
回复 支持 反对

使用道具 举报

7

主题

15

帖子

15

积分

贫民

积分
15
z2807866996  楼主| 发表于 2017-12-1 10:48:49 | 显示全部楼层
剑心无痕 发表于 2017-12-1 10:32
PC发送请求Request (B + 文件名X)
A服务器收到请求(B + 文件名X)
A服务器解析请求,传送(B + 文件名X ...

嗯嗯,我觉得逻辑上这样做就是可以了。 我通过paramiko库,来操作的时候,发现我只是ssh一次的话,是可以,也比较好理解。 他就直接把结果输出到stdout上,但是ssh之后再ssh一次的话,就不容易理解,这个return 的传递了。
回复 支持 反对

使用道具 举报

7

主题

15

帖子

15

积分

贫民

积分
15
z2807866996  楼主| 发表于 2017-12-1 10:50:28 | 显示全部楼层
uitb 发表于 2017-12-1 10:07
用python脚本实现这些功能吗?这样的话可以考虑考虑paramiko模块,是一个ssh模块,感觉还可以的 ...

是的,我看了这个模块,但是用的最多的就是远程ssh一台服务器,如果要ssh一台server,再通过server继续ssh其他服务器,这个就感觉比较难整理思路了
回复 支持 反对

使用道具 举报

0

主题

956

帖子

956

积分

圣骑士

积分
956
sheeboard 发表于 2017-12-1 11:37:24 | 显示全部楼层
试试用ssh tunnel。
回复 支持 反对

使用道具 举报

3

主题

278

帖子

278

积分

侠客

积分
278

热心会员

uitb 发表于 2017-12-1 21:08:30 | 显示全部楼层
z2807866996 发表于 2017-12-1 10:50
是的,我看了这个模块,但是用的最多的就是远程ssh一台服务器,如果要ssh一台server,再通过server继续ss ...

通过模块连接到a,链接过后向a发送ssh user@IP(B)命令,a执行该命令后就ssh到另外一台B了,然后你再发送命令,就会由A转发到B,返回的结果就是B执行的结果了噻,就是普通的手动ssh到一台服务器后也可以在这台服务器上继续ssh到其他服务器噻
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表