Nginx代理TCP服务
利用nginx代理tpc
部署nginx
安装编译所需环境
# yum install -y apr-devel apr-util-devel pcre-devel openssl-devel
添加www用户,用于给nginx服务器运行使用
# useradd -s /sbin/nologin -M www
下载nginx的源码包,编译安装nginx
# cd /usr/local/src/ && wget -c http://nginx.org/download/nginx-1.12.0.tar.gz
解压nginx-1.12.0
# tar -zxvf nginx-1.12.0.tar.gz
官方文档地址
http://nginx.org/en/docs/stream/ngx_stream_core_module.html
切换到nginx的解压目录
# cd nginx-1.12.0/
检测编译环境,编译安装nginx-1.12.0实现代理端口等功能,需要指定--with-stream的编译参数
# ./configure --prefix=/usr/local/nginx-1.12.0 --user=www --group=www --with-http_ssl_module --with-http_stub_status_module --with-file-aio --with-stream
编译安装nginx
# make -j 2 && make install
最佳实现方式,创建软连接
# ln -sv /usr/local/nginx-1.12.0/ /usr/local/nginx
编辑nginx.conf配置文件
# vim /usr/local/nginx-1.12.0/conf/nginx.conf
在配置文件中最外层添加如下内容,代理本机(192.168.1.3)的8888端口,通过8888端口远程链接到192.168.1.5的节点
stream {
upstream tcp_proxy {
hash $remote_addr consistent;
server 192.168.1.5:22 max_fails=3 fail_timeout=30s;
}
server {
listen 8888 so_keepalive=on;
proxy_connect_timeout 10s;
proxy_timeout 300s;
proxy_pass tcp_proxy;
}
}
注意:
so_keepalive=on 设置长链接(如需不用,可以删除)
proxy_timeout 与后端的过期时间
检查配置文件是否正确
# /usr/local/nginx/sbin/nginx -t
启动nginx服务
# /usr/local/nginx/sbin/nginx
效果图,通过nginx实现代理本机的8888端口去远程链接192.168.1.5 22号端口的ssh服务
Nginx代理TCP服务的更多相关文章
- Nginx代理tcp端口实现负载均衡
Nginx代理tcp端口实现负载均衡 1.修改配置文件 vi /etc/nginx/nginx.conf 添加如下配置: stream { ###XXX upstream notify { has ...
- 12、Nginx代理缓存服务
通常情况下缓存是用来减少后端压力, 将压力尽可能的往前推, 减少后端压力,提高网站并发延时 1.缓存常见类型 服务端缓存 代理缓存, 获取服务端内容进行缓存 客户端浏览器缓存 Nginx代理缓存原理 ...
- nginx 代理tcp长连接短连接配置
https://blog.csdn.net/tayinyinyueyue/article/details/78932697 nginx使用ngx_stream_core_module模块代理tcp长连 ...
- nginx代理tcp请求
1.概述 ngx_stream_core_module 这个module在nginx1.90后开始支持.开启nginx的tcp代理支持--with-stream=dynamic --with-stre ...
- Nginx 代理TCP/UDP 端口
Nginx 在1.9版本后新增TCP/UDP 代理 Nginx默认是没有开启TCP/UDP代理.需要在编译Nginx是添加--with-stream进行开启. 编译安装Nginx tar zxf cd ...
- nginx - 反向代理 - 配置文件模板 - nginx 代理tcp的服务 - 部署示意图
danjan01deiMac:~ danjan01$ cat /usr/local/etc/nginx/nginx.conf|grep -v '^$' worker_processes 1; even ...
- nginx代理tcp协议连接mysql
阅读目录 一.mariadb安装及配置 1.1 在192.168.182.155安装mariadb 1.2 配置MariaDB的字符集 1.3 添加用户,设置权限 1.4 防火墙设置 二.nginx ...
- nginx代理TCP端口
1.升级nginx 版本至1.9.0以上 升级流程参考 nginx平滑升级 2.配置编译的时候需要加上 ./configure --prefix=/usr/local/nginx --user=www ...
- Nginx代理后服务端使用remote_addr获取真实IP
直奔主题,在代理服务器的Nginx配置(yourWebsite.conf)的location /中添加: #获取客户端IP proxy_set_header Host $host; proxy_set ...
随机推荐
- Java 泛型在实际开发中的应用
java泛型是对Java语言的类型系统的一种扩展,泛型的本质就是将所操作的数据类型参数化.下面我会由浅入深地介绍Java的泛型. 一:泛型出现的背景 在java代码里,你会经常发现类似下边的代码: p ...
- Spring ContentNegotiatingViewResolver
1. Spring 返回视图采用了ViewResolver,如果一般是jsp的话,可以采用InternalResourceViewResolver. 2.还可以通过ContentNegotiating ...
- Logback 基础知识
1.Logback使用logback 是log4j的替代者,其需要slf4j.其配置文件主要有以下三种1. logback.groovy2. logback-test.xml3. logback.xm ...
- TestFlight使用方法
1 说明 目前IOS版本APP上架前,很少有项目对上架包进行测试,而上架包是人工打包的,很有可能之前的测试包没有问题,可打出的上架包出现问题.苹果市场是有提供对上架包内部测试的,可以对上架包进行测试, ...
- 关于MUI集成微信分享遇到的坑
今天聊一下MUI这个框架吧! 首先,用这个框架也有很长一段时间了,项目不同,涉及到的功能也有不同,之前没有涉及到微信分享相关的内容!今天,遇到了,也解决了,分享出来. 下面是手顺: 1.分享的代码是参 ...
- 分页功能的实现——Jdbc && JSP
@目录 什么是分页 ? 两个子模块功能的问题分析 和 解决方案 有条件查和无条件查询的影响 和 解决方案 项目案例: mysql + commons-dbutils+itcast-tools+Base ...
- (转)spring学习之@ModelAttribute运用详解
@ModelAttribute使用详解 1 @ModelAttribute注释方法 例子(1),(2),(3)类似,被@ModelAttribute注释的方法会在此controller每个方法执行前被 ...
- ionic时间插件ion-datetime-picker
https://github.com/katemihalikova/ion-datetime-picker
- year:2017 month:8 day:1+
2017-08-01 JAVAse 方法的重载:在同一个类中存在一个以上的同名方法,只要他们的参数数量,参数类型,参数顺序(两个相同类型的参数是不行的)这样就构成了方法的重载. 有返回值的方法有三种调 ...
- 设计模式笔记——GoF设计模式汇总
目录 · 总述 · 记忆 · 效果 · 面向对象设计原则 · 创建型模式 · 单例模式(Singleton) · 效果 · 分类 · 代码(饿汉式) · 代码(懒汉式) · 代码(双重检测锁式) · ...