**

Windows系统Stunnel使用简介

**
一、什么是Stunnel
Stunnel是一个代理,可以运行在多种UNIX和Windows操作系统之上。用于向现有客户机和服务器添加TLS加密功能,而不需要对程序代码进行任何更改。它的体系结构针对安全性、可移植性和可伸缩性(包括负载平衡)进行了优化,使其适合于大型部署。
二、Stunnel的功能
1.针对本身无法进行TLS或SSL通信的客户端及服务器,Stunnel可提供安全的加密连接(基于OpenSSL);
2.针对有访问限制的局域网,Stunnel提供加密的SSL连接解除防火墙和代理的限制直接和远端服务器理论上的任何网络服务连接。一般局域网都会开放443端口用于加密的HTTP连接,我们可以利用这点用Stunnel和远程端口443创建SSL连接,防火墙和代理会认为这个连接是HTTPS连接而允许通过。
三、Stunnel和OpenSSL的关系
Stunnel是基于OpenSSL的,所以他要求已经安装了OpenSSL,并进行了正确的配置。Stunnel是开源的。Stunnel的源代码并非是一个完整的产品,因为它是基于OpenSSL的,编译和运行它,需要有一个SSL库比如OpenSSL。也就是说,Stunnel能支持所有SSL或TLS库所支持的。
四、Openssl生成安全证书

  1. 生成安全证书的方法有以下三种:
    (1)Stunnel安装程序自带的(stunnel\stunnel.pem)
    (2)OpenSSL成生的安全证书
    (3)从CA处购买的安全证书
    一般来说不推荐方法一,因为通用性的Stunnel安全证书不能提供任何安全保证,因为人人都可以下载获得。而最安全的第三种方法需要花费不少金钱,因此这里我们使用方法二,在不花钱的情况下得到最佳的安全性。
  2. 用Openssl生成安全证书
    (1) 打开stunnel\bin\openssl.exe
    (2) 输入命令:req –new –x509 –days 365 –nodes –config openssl.cnf –out stunnel.pem –keyout stunnel.pem
    Stunnel.pem是自定义生成的安全证书的名字,其他各个参数的意义如下
    ◆ -new:生成新的密匙
    ◆ -x509:生成X509安全证书
    ◆ -days 365:有效期1年
    ◆ -nodes:不设置密码
    ◆ -out:生成的文件名
    ◆ -keyout:存放密匙的文件名

(3)自定义证书
Country Name (2 letter code) [GB]: 国家代码 PL, UK, US, CA…
State or Province Name (full name) [Berkshire]: 省
Locality Name (eg, city) [Newbury]: 市
Organization Name (eg, company) [My Company Ltd]: 公司、组织名称
Organizational Unit Name (eg, section) []:部门名称
Common Name (eg, your name or your server’s hostname) []:Common Name (FQDN) 应该是运行 stunnel 机器的主机名。如果你能通过不同的主机名访问这台机器,有些 SSL 客户会警告这个主机的证书有问题,所以最好是使它和用户访问的主机名匹配。
Email Address []:邮箱地址
五、Stunnel的使用
1.下载安装stunnel
1.stunnel官方Windows版本下载地址:https://www.stunnel.org/downloads.html。
2.选择”stunnel-X.XX-installer.exe“并且安装到一个“可写”的位置,因为Windows Vista/7/8系统里如果安装到C:\Program Files或者C:\Program Files (x86),会无法写入配置、日志或者不方便放置用户的证书,因此建议安装到其他地方。
2.配置stunnel (文件:stunnel\config\stunnel.conf)
1.必须
指定证书文件:
Cert = stunnel.pem 密文
Key = stunnel.pem 自验证文件
这个证书文件就是客户端Stunnel和服务端Stunnel互相验证的“密码”,请务必妥善保存。只有有这个证书的双方才可以通过SSL加密通信,第三方将无法看到任何信息。

客户端模式:
client= no ;关闭stunnel的客户端模式
client= yes;开启stunnel的客户端模式

配置服务项:
Client端:
[http2ssl] ;应用服务名称
accept = 8080 //这里为浏览器代理的http端口
connect = 服务器地址:10086 //这里的端口为上面服务器设置的连接端口

[socks2ssl] ;应用服务名称
accept = 8092 ; 这里为浏览器代理的socks端口
connect = 10.243.141.7:7071 ; 远程服务器的IP地址和端口

Server端:
[http2ssl] ;应用服务名称
accept = 10086 ;这里为stunnel客户端连接的http端口
connect = 127.0.0.1:8080 ;这里为服务器的http端口

[socks2ssl] ;应用服务名称
accept = 7071 ; 这里为stunnel客户端连接的socks端口
connect = 127.0.0.1:8092 ; 本地服务器的IP地址和端口
CApath =
2.其他:
output = stunnel.log ; 指定的日志文件
taskbar=yes ;是否在系统栏显示图标
CAfile为CA证书,不需要,可不配置。
debug = 7 ; 初次使用建议debug level设置为7,调试正常后,可以修改为默认的5或更小的数字。
verify:验证级别;
(1)-表示如果客户提供安全证书则验证安全证书?
(2)-表示客户必须提供安全证书并验证安全证书,此模式适合于从CA处购买的安全证书?
(3)-表示客户必须提供安全证书并根本本地CAPath和CRLpath来验证证书是否合法。
保存配置文件后。双击安装目录里的stunnel.exe就开始运行了,如果一切正常,双击运行后不会有窗口出现,而是 在系统托盘栏出现一个stunnel的图标。右键点击这个图标可以查看程序日志、重启服务、退出等操作。如果出现错误,可以查看日志文件排查问题。测试正 常后,就可以配置Windows启动后自动运行“C:…\stunnel\bin\stunnel.exe”,这样就不用去管它了。

Windows系统Stunnel使用简介相关推荐

  1. Windows操作系统各版本的历史 Windows系统历史版本简介

    30年间Windows系统有哪些版本?还记得你第一次了解到Windows操作系统存在的时候是哪一年吗?这些操作系统又有哪些特点呢?隐约知道计算机变得越来越小了吗--现在笔者将通过收集的资料,为各位细细 ...

  2. Windows系统下使用protobuf:protobuf的简介、安装、使用方法之详细攻略

    Windows系统下使用protobuf:protobuf的简介.安装.使用方法之详细攻略 目录 protobuf的简介 protobuf的安装 protobuf的使用方法 protobuf的简介 P ...

  3. 计算机系统窗口,事业单位备考计算机基础知识:Windows系统窗口简介

    Windows 系统窗口简介 标题栏:空白,在其他应用窗口中可显示当前打开文件的名称和应用软件名称.在其最右边有三个按钮分别成为"最小化","最大化",&quo ...

  4. Redis进阶实践之三如何在Windows系统上安装安装Redis

    一.Redis的简介 Redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset( ...

  5. windows系统下的Qt安装

    Qt Creator下载和安装(详细教程) 简介 Qt是跨平台的图形开发库,目前由Digia全资子公司 Qt Company 独立运营,官方网址:  http://www.qt.io/  也可以访问Q ...

  6. 用1天快速上手org-mode(windows系统)

    Table of Contents 1. 选择Emacs的理由--Org-mode 1.1. 现状(基于本人现有软件的使用) 1.2. 理念(够用才好) 1.3. 学习过程(少走弯路) 2. 快速安装 ...

  7. php输出mysql错误日志_PHP_PHP中把错误日志保存在系统日志中(Windows系统),【将错误记录到系统日志中】 - phpStudy...

    PHP中把错误日志保存在系统日志中(Windows系统) [将错误记录到系统日志中] 在 php.ini 中将 error_log 设置为: error_log = syslog 或者在运行时使用 i ...

  8. Cmder命令行工具在Windows系统中的配置

    一.Cmder简介 Cmder:一款用于Windows系统中,可增强传统cmd命令行工具的控制台模拟器(类似于Linux系统中的终端控制窗口) 特点: 无需安装,解压即用 可使用较多Linux命令,如 ...

  9. TF之Windows:Windows系统下设置Tensorflow运行方式为GPU加速运行的详细攻略

    TF之Windows:Windows系统下设置Tensorflow运行方式为GPU加速运行的详细攻略 目录 软件环境 1.第一步安装好CUDA软件程序 2.第二步安装好tensorflow-gpu库 ...

最新文章

  1. 第一个简单的DEMO
  2. linux运行python乱码_linux下python中文乱码解决方案详解
  3. BOOST_VMD_ASSERT宏相关的测试程序
  4. Pixhawk-姿态解算-互补滤波
  5. 在Sql Server 2005使用公用表表达式CTE简化复杂的查询语句
  6. Linux特殊权限分析(第二版)
  7. 统计学习方法笔记(李航)———第五章(决策树)
  8. 项目应用EasyUI_Tab控件全部关闭
  9. Atitit redis使用场合总结 使用场景 目录 1.1. 3. Session 存储 1 1、 配置数据查询 1 2. 排行榜应用,取TOP N操作 1 1.2.     1、查找最
  10. 兄弟打印机内存已满清零方法_打印机是如何清零的?兄弟打印机清零方法
  11. 深度剖析华为的管理哲学(建议收藏)
  12. java vo 什么意思_在Java中VO , PO , BO , QO, DAO ,POJO是什么意思
  13. web、ftp上传区别
  14. 前端js拼接Json字符串
  15. Adobe Illustrator Mac使用教程
  16. 候补购票进一步提升旅客的购票体验
  17. HBuilder X 中使用模拟器进行App开发
  18. CSS基础(新手入门教程)
  19. 查看TensorFlow checkpoint文件中的变量名和对应值
  20. android使用popupwindow仿微信点赞功能

热门文章

  1. 蚂蚁森林版本更新,大家喜欢吗
  2. java-谢尔宾斯基地毯
  3. access2013数据库实验笔记_二级Access数据库备考笔记之使用查询向导
  4. led灯接线分火线零线吗?接反会怎样
  5. 华为p50什么时候上市
  6. Windows中查看PowerShell版本和virbox版本,vagrant 版本
  7. java uml类图教程_Java利器之UML类图详解
  8. 如何使用Teams Toolkit高效创建一个App
  9. 计算机二级C语言笔记
  10. springboot实现日志追踪