1、定义
Stunnel是一个自由的跨平台软件,用于提供全局的TLS/SSL服务。针对本身无法进行TLS或SSL通信的客户端及服务器,Stunnel可提供安全的加密连接。该软件可在许多操作系统下运行,包括Unix-like系统,以及Windows。Stunnel依赖于某个独立的库,如OpenSSL或者SSLeay,以实现TLS或SSL协议。
2、功能
1)针对本身无法进行TLS或SSL通信的客户端及服务器,Stunnel可提供安全的加密连接(基于OpenSSL);
2)针对有访问限制的局域网,Stunnel提供加密的SSL连接解除防火墙和代理的限制直接和远端服务器理论上的任何网络服务连接;
3、与OpenSSL的联系:
Stunnel是基于OpenSSL的,所以他要求已经安装了OpenSSL,并进行了正确的配置。Stunnel是开源的。Stunnel的源代码并非是一个完整的产品,因为它是基于OpenSSL的,编译和运行它,需要有一个SSL库比如OpenSSL。也就是说,Stunnel能支持所有SSL或TLS库所支持的。
4、配置
1)配置文件路径
一般stunnel文件是在/etc/stunnel目录下
2)配置文件修改
①使用vim命令进行文件配置
② 端口配置:
这里配置的是服务器,所以需要再配置文件中说明,告诉他是服务器的,因此client=no。
主要意思是:
[应用服务名称]
accept=指定的端口
connect=目标服务器IP:目标端口
③配置好后,直接输入stunnel即可运行
5、证书
1)stunnel客户方式不需要证书,服务方式需要一个证书文件
2)在生成服务器的证书时,可以直接使用该命令:openssl req -new -x509 -days 365 -nodes -config openssl.cnf -out stunnel.pem -keyout stunnel.pem(ps:在设置证书的信息时common name必须与本机的主机名一致,否则后面无法进行会提示证书出错)