-
2022-01-13 17:12:45
背景:
nginx配置注意事项:
1. 由于当时是直接使用的 服务器中的nginx,并没有注意 nginx.conf第一行中的user
user root;
2. 自定义.conf 内容
upstream tomcat { #tomcat集群 server 192.168.10.x:8080; } server { listen 8181; #自定义监听端口 server_name localhost; location /dest/ { #前端打包后的文件 root /u01/isi/zh/; index index.html; } location /testwx { #后端项目名称 proxy_pass http://tomcat/zh_sys1; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_cookie_path /zh_sys1 /testwx; #cookie 的 path 与地址栏上的 path 不一致 #浏览器就不会接受这个 cookie,无法传入 JSESSIONID 的 cookie #导致登录验证失败 } }
3. 访问地址
更多相关内容 -
ASP+易语言网络验证收费系统带客户端代理端管理端非飘零网络验证
2015-04-07 15:56:33ASP+易语言网络验证收费系统带客户端代理端管理端非飘零网络验证 -
Nginx代理同域名前后端分离项目的完整步骤
2021-01-08 23:52:24前后端分离项目,前后端共用一个域名。通过域名后的 url 前缀来区别前后端项目。 以 vue + php 项目为例。直接上 server 模块的 nginx 配置。 server { listen 80; #listen [::]:80 default_server ipv6only=on;... -
zabbix代理端及agent端的部署 zabbix—proxy部署
2019-03-14 16:48:48zabbix代理端zabbix—proxy的部署,这里采用zabbix4.0.4版本 一.首先安装这五个rpm包 二. 代理端也需要建一个数据库,用来与server端同步数据用,如果服务器上已经安装了mysql数据,则直接在里面创建数据库即可...zabbix代理端zabbix—proxy的部署,这里采用zabbix4.0.4版本
一.首先安装这五个rpm包
二. 代理端也需要建一个数据库,用来与server端同步数据用,如果服务器上已经安装了mysql数据,则直接在里面创建数据库即可,如果没有安装请先安装mysql数据库服务
create database zabbix_proxy character set utf8; 创建zabbix_proxy数据库 grant all on zabbix_proxy.* to zabbix@localhost identified by 'zabbix'; 授予zabbix用户本地密码登录的权限 flosh privileges; 刷新权限
三.解压zabbix-proxy数据库建表文件,执行建表文件
cd /usr/share/doc/zabbix-proxy-mysql-4.0.4/ gunzip schema.sql.gz mysql -uzabbix -pzabbix zabbix_proxy < schema.sql 导入建表脚本并执行
四.数据库表建好后开始修改zabbix-proxy配置文件,配置文件在/etc/zabbix/zabbix_proxy.conf
Server=192.168.4.10 zabbix服务端的IP ServerPort=10051 默认配置 Hostname=HDZabbixproxy 代理的名字,服务端的代理名字要和这里保持一致 LogFile= 日志目录默认 LogFileSize=0 指定日志输出级别默认 DBHost=localhost 数据库IP,如果在同一台机器就填localhost可以 DBName=zabbix_peoxy 数据库名 DBUser=zabbix 数据库用户名 DBPassword 数据库密码 DBSocket=/tmp/mariadb.sock socket文件 DBPort=3306 数据库连接端口 DataSenderFrequency=5 与zabbix服务端同步数据的时间间隔,这里设置为5秒
注:如果设置为被动式的话,需要将ProxyMode参数置为1,Server参数就设置为允许采集信息的主机IP,可以多个用,号分割
然后systemctl start zabbix-proxy.service启动,执行netstat -anpt|grep zabbix,可以看到,10051端口已经监听,这台上面还装了agent所以有10050端口被监听
五.在服务端配置此代理
这里我们选在主动式,代理名称要与上面配置文件里的名称一致,填写代理的IP地址
六.然后安装zabbix-agent,并配置文件,agent只需修改serverIP就可以
rpm -ivh zabbix-agent-4.0.4-1.el7.x86_64.rpm
Server=192.168.4.10 zabbix-proxy端IP ServerActive=192.168.4.10 zabbix-proxy端IP Hostname=web 主机名,server的主机名要与这里配置一致 端口不修改默认10050
七. 启动systemctl start zabbix-agent.service,然后再server端配置主机及监控项
主机名与配置文件里一直,可见的名称随便配,群组可以自己建,agent代理接口写agent端的IP
选择proxy代理
等一会,可以看到proxy端的日志显示有数据上传同步
现在就可以添加监控项,监控项我们下一节再说
-
基于W5500的嵌入式SNMP代理端实现
2015-04-01 11:31:39管理系统中就要有管理者和被管理者,网管协议定义它为管理站和代理端,它们通过管理信息库 MIB 进行接口统一,实现数据的通信。 MIB 可以认为是一个被管理对象的集合,每个对象规定了能够被管理进程查询和设置...
一 实验背景
最近一个做焊接设备的朋友想在焊机上添加监控的新功能,实时获取焊机的温度、功耗等参数,还可简单控制,实现对集群焊接设备的网络化管理。而这个朋友不想在开发管理系统上花太多精力,想找一个开源的管理软件来实现他的需求。这让我想到了简单邮件管理协议SNMP,它生来就是为搞网络管理服务的。能广泛兼容各网络设备,一经推出就得到了广泛的应用和支持,几乎所有的网络设备生产厂家都实现了对SNMP的支持,大多数网络管理系统和平台也都是基于SNMP的。事实上,目前SNMP已成为网络管理领域中的工业标准,我国国家广电总局就要求通信领域的标准网络设备都必须支持SNMP协议。SNMP代理端实际占用系统资源少,在单片机上运行是没有问题的。于是我想到用手头的WIZnet-W5500评估板实现了SNMP代理端,给他提供一个参考。
二 SNMP基础普及
在实现SNMP代理端之前,我们先了解一下SNMP的基本知识。管理系统中就要有管理者和被管理者,网管协议定义它为管理站和代理端,它们通过管理信息库MIB进行接口统一,实现数据的通信。
MIB可以认为是一个被管理对象的集合,每个对象规定了能够被管理进程查询和设置的信息,同时都有自己的名字我们称之为对象标识符,简称OID,它的命名方法跟DNS树形结构命名类似,通过OID就能知道这个设备所属的领域和厂家,如MIB中有一个节点{1.3.6.1.4.1},即enterprises,代表企业,它以下的节点都为企业型的。如IBM为{1.3.6.1.4.1.2},Cisco为{1.3.6.1.4.1.9}等。任何一个公司、学校只要用电子邮件发往iana-mib@isi.edu进行申请即可获得一个结点名。这样就可以定义自己的产品的OID,使它能用SNMP进行管理。
为了操作管理数据库MIB,如图1所示:SNMP规定了5种协议SNMP报文,用来在管理进程和代理之间的交换。1 get-request;2 get-next-request;3 set-request;4 get-response;5trap。前面的3种操作是由管理进程向代理进程发出的get/set操作,双方都使用UDP161端口。第4个是对前三种操作的回应,用UDP161端口,第5个代理进程主动发出的报文,通知管理进程有某些事情发生,使用UDP162端口。
图1 SNMP的5种报文操作
图2是封装成UDP数据报的5种操作的SNMP报文格式。可见一个SNMP报文共有三个部分组成,即公共SNMP首部、get/set首部或trap首部、变量绑定。
图2 SNMP报文格式
三 SNMP嵌入式系统实现方法
了解了SNMP协议之后,下面就让我们通过WIZnet W5500EVB做一个嵌入式SNMP代理端的简单实验。
1.实验目的:建立一个SNMP代理端
2.硬件环境
单片机:STM32F103RC,256K字节Flash,48K字节SRAM
以太网控制器:W5500,SPI接口与单片机相连
电源:USB供电
硬件外设:板载LED
3.开发工具: IAR V5.14(版本不一样,需要稍加改动)
4.测试软件:串口调试助手,Net-SNMP(可从网络下载)
软件部分是实现简单网络管理协议SNMP的关键,下面就以程序流程图的形式看看我们是如何实现的。
图3为主程序流程图,我们可以看出程序首先进行单片机系统软硬件初始化,然后初始化W5500,配置了IP地址、MAC地址、和网关。
图3主程序流程图
配置完毕后就是代理端主动发送SNMP Trap报文了,发送SNMP Trap报文的过程比较简单,主要就是安装Trap报文格式对发送数据进行打包即可,需要注意的是数据包要根据ASN.1中的BER编码方式(格式类型/长度/值)进行编码。打包完毕后,开启UDP Socket,本地端口为162,然后向管理的162端口发送Trap包。接下来就进入一个循环,等待解析SNMP管理站发来Request数据包,边解析,边准备要回复的数据包,下图为代理端解析管理站发来的GET/SET请求,并准备Response数据包的流程图。
图4代理端解析Request程序流程图
通过图4流程图我们可以看到,整个过程是严格按照SNMP协议一步步进行解析判断的。需要说明的是,也是先根据SNMP编码方式进行解码,再进行比较和判断。我们知道SNMP中MIB联系管理站和代理端的关键,解析程序到最后查询的便是MIB中的对象,在此我们给出定义MIB对象的结构体:
typedef struct {
uint8 oidlen;
uint8 oid[MAX_OID];
uint8 dataType;
uint8 dataLen;
union {
uint8octetstring[MAX_STRING];
uint32 intval;
} u;
void(*getfunction)(void *, uint8 *);
void(*setfunction)(int32);
} dataEntryType;
通过该结构体的定义我们可以知道MIB对象的几个部分:OID ,数据类型,数据长度,数据,get函数,set函数,本方案MIB中定义的一个控制LED动作的一个对象:{8, {0x2b, 6, 1, 4, 1, 0, 2, 0},SNMPDTYPE_INTEGER, 4,{""}, NULL, setWIZnetLed}
其中8为OID长度,0x2b是ASN.1中“1.3”的缩写,即:1*40+3=0x2b。整个OID其实为1.3.6.1.4.1.0.2.0。该对象的set函数为setWIZnetLed:
void setWIZnetLed(int32 val){
wiznetLedStatus =val;// W5500-EVB
if (wiznetLedStatus==0 )GPIO_SetBits(GPIOA, LED3); // STM32
elseGPIO_ResetBits(GPIOA, LED3);
}
此为函数名,同样也为函数的指针,在解析SET函数过程中有一句代码:snmpData[id].setfunction(snmpData[id].u.intval);就是执行了该函数,其中snmpData[id].u.intval为从set Request当中解析到的绑定变量值。
整个MIB就是由上述格式的对象组成,让可以自己定义对象的OID变量及对象的函数,当管理站向该对象发送请求时,就可以执行相应函数,从而完成你所需要让SNMP完成的管理和控制。
完整源程序下载:http://pan.baidu.com/s/1qWmHpTE
四测试SNMP代理端
下面以PC机为SNMP管理站,讲述如何测试我们实现的SNMP代理端。
1.在电脑中安装Net-SNMP软件。Net-SNMP是一个免费的、开放源码的SNMP实现方式。按默认选型安装软件后,点击Windows开始——>运行 输入“ CMD ”,点击确认,进入DC命令环境,输入“ cd \usr\bin”,此路径即安装的Net—SNMP默认路径,在此路径下可执行SNMP命令。
2.修改PC本地连接IP地址。控制面板——>网络和Internet——>网络连接,点击本地连接选择属性,设置PC为静态IP(与W5500在同一网段),设置完成后点击确定,本例中我们设定PC机ip为192.168.1.110,SNMP代理端IP为192.168.1.111,默认网关都为192.168.1.1。
3.接着用网线把PC和W5500EVB连接,打开串口软件,选择正确的COM口并打开串口,以获取调试信息。
4.下载编译好的代码并复位W5500EVB,我们发现板子上有一排LED,最右边这个LED就是我们要查询并且控制的。如图5所示,现在这个LED是亮的。
图5最右边LED亮
5.在刚才打开的Net—SNMP默认路径下可以输入指令,如图所示输入“snmpget -v 1 -cpublic 192.168.1.111 .1.3.6.1.4.1.0.1.0 ”回车,查询到“LED On”,符合板子现在亮的情况。
6.再输入“snmpset -v 1 -cpublic 192.168.1.111 .1.3.6.1.4.1.0.2.0 i 0”回车,结合这个OID对象的set函数分析可知,该条命令是置STM32的LED3对应引脚为高,即关闭LED。如图6观察板子上的LED3,可见已灭。
图6最右边LED灭
7.如图7再次输入第5步的snmpget指令,可以查询到状态为“LED Off”。
图7 Net-SNMP工具测试SNMP协议
通过以上步骤可以看出SNMP Agent已经运行,当然要实现一个复杂的网络管理功能还需要Net—SNMP中很多其他指令在此不一一列举。
五总结
本文给出了基于W5500的嵌入式系统SNMP的设计与实现方案,并展示了如何用Net-SNMP调试工具进行简单控制的方法。随着物联网事业的发展,越来越多的嵌入式设备都将拥有联网功能,相信SNMP协议的作用将越来越重要。除了智能家居,在当下物联网时代,想必还有其他应用也会遇到类似问题,希望本文能对做网络设备开发的朋友有所帮助。
-
微信PC端全局代理抓不到数据包的问题
2021-04-13 09:20:14微信PC端全局代理抓不到数据包的问题 1.问题 之前抓取微信公众号、小程序数据包一直使用模拟器、手机配置代理。偶然发现微信PC端超级方便,配置了全局代理,Burp也配置好了,结果只能抓取到微信公众号数据包,抓不...微信PC端全局代理抓不到数据包的问题
1.问题
之前抓取微信公众号、小程序数据包一直使用模拟器、手机配置代理。偶然发现微信PC端超级方便,配置了全局代理,Burp也配置好了,结果只能抓取到微信公众号数据包,抓不到小程序数据包,提示网络异常。
第一反应,肯定是证书的问题,但是浏览器明明已经导入证书。。。。为什么还是不行??经过一番折腾,最后成功解决。
2.解决办法
下载Burp证书后,导入到浏览器,但是要注意,不要选择“个人”,要选择“受信任的根证书颁发机构”。
成功抓取到数据包,可以愉快的玩耍了。
-
上海瀚宇代理高功率光纤端帽
2015-12-29 20:07:46上海瀚宇代理高功率光纤端帽参数。需要请看 -
Nginx反向代理实现前后端分离
2020-04-28 19:20:09Nginx反向代理实现前后端分离 前后端分离就是让前后端专注于做自己的实现 自己写过简单的Web小案例,即便是这样,在前后端不分离的情况下,虽然基本语法都懂,但是实现起来还是相当繁琐,前端依赖后端传来的数据,... -
向日葵代理版(带单人版服务器)
2022-03-02 13:53:13实际上真正的向日葵远程代理服务器对控制端及被控端一概视为连接端,通过连接端发来的远端控制码和认证码,在代理服务器上找到指定的被控端IP地址。这里面包含更多的技术点,如何快速的查找出指定主机IP地址,以及... -
linux配置nginx代理前后端(亲测可用)
2022-01-24 17:43:39# 第一种代理前端的方式 location /substation { alias /opt/static/substation; index index.html index.htm; } # 第二种 location /watcon { root /opt/static; try_files $uri $uri/ /watcon/index.html; index... -
前后端分离-使用Nginx代理
2018-09-18 21:48:49前后端分离部署-使用Nginx代理安装Nginx1.访问官网: http://nginx.org/en/download.html 就可以下载了2.直接解压下载文件3.启动Nginx4.引入自定义配置文件5. 编写自定义配置文件,实现反向代理最后,Nginx其实也可以... -
【2017年10月更新】响应式税务筹划代理公司登记代理网站织梦模板(自适应手机端)
2017-10-26 23:04:18【2017年10月更新】响应式税务筹划代理公司登记代理网站织梦模板(自适应手机端) -
whistle手机端代理使用配置
2020-07-30 11:22:43whistle手机端调试使用教程 npm全局安装 安装node ,安装node后直接使用npm命令; 安装whistle,使用命令全局安装:npm install -g whistle,第一次安装后以后可直接使用;...手机端设置代理 1.手机连接电脑热点 -
Charles | 轻松代理PC端
2019-09-24 18:55:49Charles其实是一款代理服务器,通过过将自己设置成系统(电脑或者浏览器)的网络访问代理服务器,然后截取请求和请求结果达到分析抓包的目的。该软件是用Java写的,能够在Windows,Mac,Linux上使用。安装Charles的... -
IIS8反向代理,前后端分离部署解决方案
2019-08-09 12:40:35前言:该文章希望给IIS使用者分享前后端分离部署时,跨域请求的解决方案(反向代理),我们所说的反向代理,意在代理数据请求,静态资源还是原始站点,当然也可以使用CDN服务。一些较大的电商网站会采用这种形式,... -
VUE前后端分离 跨域访问后端接口 宝塔Nginx设置反向代理
2021-10-29 17:52:13宝塔配置反向代理 前后端分离 Nginx设置反向代理 访问后端端口 -
如何设置代理(手机端与Pc端)
2018-06-13 15:20:21测试中代理的目的:它的功能就是用户与Web服务器之间的一个中转站,当用户访问测试网站时,软件通过代理功能来访问目标网站,使软件能够截获用户和服务器之间的通信。例如jmeter,charles手机长按wifi网络,然后修改... -
VUE使用代理实现前后端代码联调
2020-06-07 20:46:57现在很多公司都比较流行前后端开发分离,比如前端开发是一波人,后端开发是另一波人。这样可以更好体现术业有专攻以及提升整体项目的效率。使用常规的HTML/JS/CSS等开发还好办,大家可以在同一个环境里协同开发。但... -
nginx配置反向代理前后端分离项目(配置两个转发)
2019-07-09 11:39:56本文重点讲术springboot +vue前后端分离nginx如何配置两个代理 一、通常SpringBoot与vue 进行前后端分离,主要有两种方式: 1.打包(npm run build命令)vue项目出来的dist文件夹拷贝到springboot项目的static文件... -
java实现代理服务器,接收客户端连接,发送到对应服务器
2017-10-13 18:45:24全栈工程师开发手册 (作者:栾鹏) java教程全解 java实现代理服务器,接收客户端连接,发送到对应服务器...//代理服务器,接收客户数据,发送到另一个服务器 public class MyProxyServer { public static voi -
linux nginx部署vue项目 前后端代理配置vue2.6
2021-12-30 15:19:11linux nginx 部署vue项目 前后代理配置vue2.6 http { include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' ... -
Socks代理是什么?PC端怎么使用Socks5代理?
2020-07-07 17:29:49之前给大家介绍过代理IP是什么以及它的作用。代理服务器英文全称是Proxy Server,其功能就是代理网络用户去取得网络信息,形象的说:它是网络信息的中转站。最常用的代理莫过于HTTP代理与Socks代理,那么什么是Socks... -
DDoS攻击
2019-10-16 15:32:40在半自动化的攻击中,DDoS攻击属于主控端一代理端的攻击模型,攻击者用自动化的Scripts来扫描,主控端的机器对主控端和代理端之间进行协商攻击的类型、受害者的地址、何时发起攻击等信息由进行详细记录。 3、自动化... -
webpack 反向代理解决前后端分离跨域问题
2018-08-09 17:33:09这算是第一次实打实遇到跨域问题,之前做的东西都是用后台MVC框架进行渲染前端页面,加上之前准备面试题都只是知道个大概是个什么东西,这才在这次的前后端分离练习中遇到了这个问题。 具体啥是跨域问题,... -
Freeproxy 一个代理服务器端软件
2013-11-06 15:41:47一个功能全面的代理服务器端软件,设置完成后就可以通过其就是代理访问 -
vue如何配置反向代理(前后端联调,解决跨域)
2020-10-23 17:24:55vue配置反向代理 前后端联调 解决跨域 -
用Proxifier只代理PC端部分软件
2020-03-08 21:21:11mitmproxy监测,proxifier代理部分软件 proxifier下载 1、添加代理信息 (1)打开cmd窗口使用ipconfig命令:查询ipv4地址 (2)打开Proxifier>配置文件>代理服务器:添加ipv4地址、端口、类型 2、配置... -
Nginx配置前后端分离项目代理--解决跨域问题
2019-01-17 23:00:22最近刚接触到前后端分离项目,遇到跨域问题,想到使用Nginx反向代理可以解决,于是查了一些资料,简单地设置了一下。 我的项目前端是vue.js,后端是springboot+SSM。 当然,这个配置跟使用了什么项目无关,仅跟两个... -
trans-proxy:实现简单透明代理功能
2021-05-18 12:52:17[代理服务程序]获取[客户端]要访问的[目的端],由[代理服务程序]与[目的端]进行通信 [代理服务程序]将[客户端]发送的请求数据重新发送给[目的端] [代理服务程序]将[目的端]发送的响应数据发送给[目的端] 技术思考 ... -
前后端分离项目的nginx多个静态站点和反向代理实践
2019-08-08 10:01:059090 (Vue项目管理端) 8888(Vue项目用户端) 7000(注册服务器) 7010(网关) 7011(系统模块微服务) 7012(项目模块微服务) 访问流程是调用网关,通过网关接口实现了转发到各个微服务,如 xx:7010/module-...