记述一次通过跳板机部署内网服务器

前几天做了一个任务,需要将一个配置参数下发服务器部署到客户的服务器上,之前没弄过这个,中间耽误了点时间,现在对涉及到的技术做一下总结,为了保护客户的隐私,下面设计到具体数据的地方都是为描述方便虚拟的,并不是真实的。

网络架构大概是这个样子的:

我是没办法直接连到配置参数下发服务器的,中间需要通过一台跳板机,所谓的跳板机可以看做是一台带Linux操作系统的路由器,上面一般会有很多网卡(物理的或者虚拟的),这些网卡连接到了不同的网络,从不同网络过来的连接可以通过这里中转。

这里的跳板机主要目的就是为了提供外网的连接过来,不让其直接连接到目的服务器而必须要经过一层中转。

从SVN上检出的项目实际上是有一点坑的,填完坑测试了一下基本可用,然后就打war包了,这里碰到了一个很诡异的问题,在STS中使用内置的jetty插件测试是完全没有任何问题的情况下,打成war就不能用了,在Tomcat上完全跑不起来,求助大牛同事之后帮找到了坑,原来是因为我的Maven使用的是阿里云的镜像仓库,然后从仓库下下来的jar包都是坏掉的,把镜像去掉使用中央仓库就好了。虽然这里我怎么也没想明白既然jar包都坏掉了那为什么用内置的jetty插件可以跑得起来,唉想不明白的事情太多了还是经验太少...

碰到的另一个问题就是我在跳板机上的权限很小,只是一个普通用户,根本没有权限开启ftp服务之类的,怎么把文件上传到跳板机纠结了半天,后来发现了scp命令。

scp命令是一个基于SSH的文件传输命令,用来在不同的Linux主机之间复制文件,它的优点就是不需要很大的权限,只需要目标主机开了sshd服务就可以

在Windows下有一个叫WinSCP的软件可以从Windows上连到Linux通过SSH协议使用scp传输文件,是完全图形界面的,将文件上传到跳板机之后再使用scp命令将其复制到目标服务器:

$scp ~/foobar [email protected]:~/foobar

好多版本的Linux装好之后默认安装的都是Open JDK,隐约记得我之前好像出现过Oracle JDK编译结果和Open JDK不一致的情况,所以果断将配置环境什么的都换了一套,然后下载tomcat部署上去即可。

另一个问题就是我部署好了之后并不能直接访问到web服务器,因为连过去是用putty命令行连的,中间也没个VNC啥的,我在跳板机又没权限,后来想到了端口转发,但是端口转发只用过iptables,这个需要root权限,gg,后来知道了ssh端口转发,但是没时间慢慢研究了,最后实在没招了拿lynx测试了一下,反正请求是成功了.....

总结:

1. 不要过于相信权威啊,Maven尽量还是使用中央仓库吧,像这种东西在国内应该有CDN之类的,就像13个根DNS一样,并不会慢上多少,使用镜像反而会面临镜像服务器跟中央仓库不一致的情况,这就真的尴尬了。

2. Linux在权限很小的情况下,可以使用scp命令来传输文件,只需要目标服务器开启了sshd服务就可以

3. 在没有图形界面的情况下,可以使用一些文本浏览器比如lynx之类来测试看看访问是否成功,也可以使用nc之类的直接访问端口GET /foobar HTTP/1.1来看看结果。

4. 在跟客户交流时说话随意,想到啥说啥,这样不太好,显得不专业,虽然偶是个开发,但是在客户面前代表的也是整个公司,以后嘴上得有个把门的,说话要三思。

.

时间: 2024-11-08 14:53:44

记述一次通过跳板机部署内网服务器的相关文章

centos6.5 Open×××服务搭建部署,访问内网服务器

centos6.5 Open×××服务搭建部署,访问内网服务器 1 简介 ×××(Virtual Private Network)直译就是虚拟专用通道,是提供给企业之间或者个人与公司之间安全数据传输的隧道. ? ? Open×××无疑是Linux下开源×××的先锋,提供了良好的性能和友好的用户GUI.该软件最早由James Yonan编写.Open×××允许参与建立×××的单点使用预设的私钥,第三方证书,或者用户名/密码来进行身份验证.它大量使用了OpenSSL加密库,以及SSLv3/TLSv1

站库分离拿内网服务器到拿下目标服务器

0x00 提权环境这是一机油来问我如何脱裤~~~然后就试试提权看了下端口,就开了80和3389Windows 2003 x86既然脱裤,就可想而知肯定有数据库由图可知该例是站库分离,当时我还傻乎乎的拿着sa去执行添加用户命令结果连不上~~~肯定连不上撒!!!好吧,思路有以下几条:一.              不管这配置文件,直接在原服务器上进行提权二.              先利用sa拿下内网服务器然后再拿下原服务器首先试试第一条~~ 0x01 原服务器上提权无常用的第三方软件,只有从溢出

怎样从外网访问内网服务器

假设内网有一个自己的电脑A(运行Win7),希望在家中用另一台电脑B(运行Win7)访问内网资源. 先决条件 1. A机上可访问外网并且可以安装虚拟机. 2. 拥有一个外网的VPS服务器S(运行Debian),可购买BandWagon的廉价服务器(http://bandwagonhost.com/),一年100多元. 原理 从A机发起到S的连接,并保持此连接.以此连接为基础,建立从S到A的隧道.再将S所有到80端口的请求(HTTP请求)通过隧道转发到A机上,由A机作为S机的HTTP代理.外网B机

用静态NAT实现外网PC访问内网服务器

在我们的生产环境中常常处于安全考虑将服务器置于内网环境中,但同时得向外网提供各种服务功能,此时就需要用到NAT技术.下面是我用思科的仿真软件搭建的一个实验环境,实现外网PC访问内网服务器. 先说明一下实验环境: 路由器R0左边为内网环境,右边为外网环境,内网服务器IP地址为192.168.1.2,网关为R0接口地址192.168.1.1,外网PC机IP地址为211.211.211.2,网关为路由器R1接口地址211.211.211.1,现在要求实现外网PC访问内网服务器. 数据配置如下: 路由器

使用iptables给内网服务器做端口映射

iptables filter 表案例 iptables的语法规则iptables -nvL 查看规则iptables -F 清空规则iptables save 保存写入的规则iptables -Z 清空iptables的数据流计数器iptables -A INPUT -s 源IP -p tcp --sprot 来源端口 -d 目标IP --dport 目标端口 -j DROP/ACCEPT 指定放行的数据流和端口iptables -I/-A/-D INPUT -s 源IP -j DROP 添加

ROS Dst-Nat 后内网不能通过公网IP访问内网服务器解决方法

通常企业内部会有很多服务器需要互联网用户访问,这时就需要做Dst-Nat. 但是我们配置完后会 发现内网用户不能通过公网IP访问对应的服务器.其实这时我们再添加一条策略即可搞定. 实例说明: 内网服务器:172.16.0.101 路由器LAN口: 172.16.254.2 公网IP: 106.37.xxx.xxx 外网访问IP假设为 1.1.1.1    内网访问的PC 假设IP为172.16.3.100 配置NAT: 配置完后,外网可以正常访问了.但是内网通过公网IP不可访问. 究其原因: 外

解决为什么内网不能用公网地址访问内网服务器

NAT地址池和服务器地址要与出口IP不同网段,NAT地址池可以和服务器地址在同一网段,也可在不同网段. 对于下文中推论的回答:我认为不会成环,ping NAT地址池的没用到的地址,得不到回应,就没有回去的数据包,怎么会成环呢..... 以下参考下面这个文章,附上本文留存,原文引用链接为: http://www.2cto.com/net/201202/119693.html NAT网络回流现象解释,内网使用服务器的外网IP登陆 hi大家好,今天我们来讨论一个很多人都找不到答案得问题:究竟为什么内网

linux外网服务器跳转内网服务器实现内网访问(iptables)

服务器信息如下 外网服务器:eth0:公网IP eth1:内网IP(192.168.10.205) 公网对外提供服务,内网IP与内部局域网通信. 配置过程: (1)开启iptables service iptables restart   (临时开启) chkconfig  iptables on    (永久开启) (2)配置iptables          (2-1)配置filter选项,使得IP和PORT可以通过防火墙 注意:在filter选项下配置 例如:#18081(tomcat-O

openvpn连接后与服务端内网服务器连接

客户端连接vpn服务端后会获取一个10.8.0.x的地址,而openvpn服务器上面有一个10.8.0.1的地址,此时客户端就能连接服务端了.如果配置文件内没有配置"push "route xx.xx.oo.oo 255.255.255.0""这条,客户端不能通过服务器内网连接服务器,在配置文件中添加此条文件即可.xx.xx.oo.oo为服务器内网网段. 如果想要和同在一个网段的其他服务器通信,有三种方法.1.在需要访问的服务器上面添加一条到10.8.0.0的静态路