我可以帮助您将本地版本(Server-Software-Application?)连接到本地端口,这是通向数据库服务器的通道。
当服务器软件应用程序连接到数据库服务器时,您应该能够通过端口8080上的浏览器连接到localbuild,这可以通过ssh隧道通过列入白名单的服务器来访问。
如果是您想要的,我可以为您提供以下帮助...
我假设您可以通过ssh从本地构建连接到列入白名单的服务器,并且可以在本地构建中配置数据库连接。
- 连接到列入白名单的服务器
- 配置从白名单服务器到数据库服务器的隧道
- 配置您的本地版本以连接到“ localhost”
步骤1. + 2.可以在一个cli命令中完成:
ssh -L <any-number-gt-1024>:<database-server-ip>:<database-server-port> <your-username>@<whitelisted-server>
例:
对于在IP地址为192.168.1.20的端口5432上接受连接的PostgreSQL数据库服务器以及IP地址为192.168.1.30的列入白名单的服务器,您可以按以下方式配置隧道:
ssh -L 1155:192.168.1.20:5432 heino@192.168.1.30
如果建立了此ssh连接,则可以通过白名单服务器从本地构建(从ssh连接初始化的地方)到数据库服务器的隧道。您可以通过连接到“ localhost:1155”来与数据库对话
telnet localhost 1155
现在,您可以将localbuild配置为在端口1155上连接到localhost,以连接到数据库服务器。
解释
您通过以下方式连接到列入白名单的服务器
ssh heino@192.168.1.30
要配置在localhost上可访问的隧道(即-L参数)并通过列入白名单的服务器连接到数据库服务器,您需要输入名称/ ip和可从列入白名单的服务器访问数据库服务器的端口在ssh connect的参数中。这也适用于DNS名称或/ etc / hosts条目。
-L 1155:<DB-Server>:<DB-Port>
PostgreSQL默认监听端口5432。MySQL:3306 ...
第三步:
配置您的服务器软件应用程序以连接到localhost:1155(或您选择的任何端口),并使用列入白名单的服务器的db-login-account。
笔记
- 您应该在本地主机上使用未使用的端口。但是,如果该端口已在使用中,则应该通过ssh警告您。
- 注意发送到数据库的sql命令(例如DROP和TRUNCATE)。您正在发送的命令不是发送到localhost db,而是发送到ssh隧道到达的数据库服务器!如果隧道已启动并正在运行,则这不是您的本地构建数据库。
- 此隧道设置也可与所有其他可达端口一起使用。对于仅本地主机听Tomcat-Admin-Manager-App等有用。