机构间对接:Nginx+防火墙+停火区方案

摘要

机构之间的信息系统对接,有多种成熟的技术方案。
例如交易级别的web service、vpn、专线等方式,文件级别通过ftp协议等。
但是,由于机构内部的安全网络,以及物理位置上的差异,实现信息系统的对接,实际上还需要网络结构上的设计。

1、网络结构

两个机构对接的网络链路为:
机构1<——>机构2
机构1:服务系统1 + 内部网络设备1 + 网关设备1
机构2:服务系统2 + 内部网络设备2 + 网关设备2

2、网关设备的连接

此时要实现对接,第一步是实现机构间的互联,即两个网关设备的连接。

  1. 实现两个网关设备的连接,对简单直接的方法就是两个设备间用网络线路物理上连接,很显然,如果两地相隔较远,其成本会很多高,是不太现实的。
  2. 还有呢就是租用三大运营商的网络线路,为两个机构之间实现互联搭建专有线路,只需要支付给运营商相应的费用即可。
  3. 再就是通过互联网,利用vpn技术搭建机构通信的隧道,也能实现两个机构间的安全通信,但是目前看vpn其实不是很稳定。
  4. 利用互联网对接的技术还有很多,例如webservice、socket等等,总之方案还是挺多的

3、数据传输链路

机构内部服务设备——防火墙——停火区设备——防火墙——网关设备——互联网络——网关设备——防火墙——停火区设备——防火墙——机构内部服务设备
基于vpn的通信中,一般有两种隧道技术。
通过vpn网关实现机构之间的互联
通过服务转发中间件实现请求的跨网转发

4、nginx

nginx可以通过开启监听端口来实现请求的接收
向nginx发送请求:

http://127.0.0.1:60

nginx转发该请求到127.0.0.2:

location / {
	Proxy_pass http://127.0.0.2:61/api;
}

其中nginx可以部署在特定区域,以实现跨网无法直接请求的问题。

5、附网络调试命令

  • 检查两台IP之间网络是否联通:
ping 127.0.0.1,用于检测是否具备通信的基础
  • 检查端口是否开启监听(发布服务):
netstat -an | grep 20,用于检测当前端口是否发布了服务
  • 检测是否可以与对方端口进行通信:
telnet 127.0.0.1 20
  • 模拟开启端口监听:
nc -l 20

如果未发布服务,telnet是不通的,但此时并不能证明端口不通,因此可用此命令模拟开启监听

  • windows环境查看端口监听:
netstat -ano | findstr :20
  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,我知道你的问题了。针对你的问题,我可以给你一些简单的部署步骤: 1.安装nginx和PHP 在CentOS 6.8中安装nginx和PHP的方式如下: ``` sudo yum install nginx sudo yum install php-fpm ``` 2.配置nginx 在配置nginx之前,你需要备份一下默认的nginx配置文件。备份命令如下: ``` sudo cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak ``` 然后,你可以通过编辑/etc/nginx/nginx.conf文件来配置nginx。 下面是一个简单的nginx配置示例,可以将它添加到/etc/nginx/nginx.conf文件中: ``` user nginx; worker_processes auto; error_log /var/log/nginx/error.log; pid /run/nginx.pid; events { worker_connections 1024; } http { include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; keepalive_timeout 65; include /etc/nginx/conf.d/*.conf; server { listen 80; server_name localhost; root /usr/share/nginx/html; index index.php index.html index.htm; location / { try_files $uri $uri/ /index.php; } location ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } } ``` 在这个示例配置中,我们将nginx的根目录设置为/usr/share/nginx/html,并且将index.php添加到默认文档列表中。同时,我们还配置了一个location块,用于处理PHP文件。 3.配置PHP 在配置PHP之前,你需要备份一下默认的php-fpm配置文件。备份命令如下: ``` sudo cp /etc/php-fpm.d/www.conf /etc/php-fpm.d/www.conf.bak ``` 然后,你可以通过编辑/etc/php-fpm.d/www.conf文件来配置PHP。 下面是一个简单的PHP配置示例,可以将它添加到/etc/php-fpm.d/www.conf文件中: ``` [www] user = nginx group = nginx listen = /var/run/php-fpm/php-fpm.sock listen.owner = nginx listen.group = nginx pm = dynamic pm.max_children = 50 pm.start_servers = 5 pm.min_spare_servers = 5 pm.max_spare_servers = 35 ``` 在这个示例配置中,我们将PHP-FPM的用户和组设置为nginx,并将PHP-FPM的监听套接字设置为/var/run/php-fpm/php-fpm.sock。 4.重启服务 完成配置后,你需要重启nginx和php-fpm服务,以使配置生效。重启命令如下: ``` sudo systemctl restart nginx sudo systemctl restart php-fpm ``` 到这里,就完成了nginx+PHP的简单部署。同时,为了进一步提升性能,你可以使用Nginx+PHP+FastCGI加速模式。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值