声明:本文并非原创,转自华为云帮助中心的分布式缓存服务(DCS)的用户指南。

本文以公网访问华为云分布式缓存服务的Redis缓存为示例,介绍Stunnel客户端在各操作系统下的安装和配置。

Stunnel客户端安装配置(Windows版)

  1. 查看并获取待连接Redis缓存实例的弹性IP地址和端口。

    具体步骤请参见查看缓存信息

  2. 下载Stunnel安装包。从http://www.stunnel.org/downloads.html下载最新版本的Windows版Stunnel安装包(以exe结尾的安装包,例如,stunnel-5.44-win32-installer.exe)到本地Windows设备。
  3. 运行Stunnel安装程序,安装Stunnel客户端。
  4. 配置Stunnel客户端。在任务栏单击图标右键,选择“Edit Configration”,新增如下配置内容,然后保存退出。
    [redis-client]
    client = yes
    CAfile = D:\tmp\dcs\dcs-ca.cer
    accept = 8000
    connect = {弹性IP地址}:{端口}
    以下参数需要根据说明修改,其他参数不用修改:

    • client值固定填yes,表示为Stunnel客户端。
    • CAfile为CA证书,可选。如果需要,请根据查看缓存信息,进入到缓存实例详情页面下载该证书;如果不需要,可不配置,删除此参数。
    • accept为为Stunnel监听端口,可以自定义。Redis客户端访问缓存实例时填写此端口。
    • connect为服务端连接地址,此处填Redis缓存实例的IP地址与端口,即分别替换为步骤1获取的弹性IP地址和端口。
  5. 在任务栏单击图标右键,选择“Reload Configration”。
  6. 打开命令提示符工具cmd.exe,执行以下命令,查看127.0.0.1:8000是否已经被监听。

    netstat -an |find "8000"

    假设客户端的监听端口配置为“8000”。

    返回列表行中显示有“127.0.0.1:8000”,状态为“LISTENING”,表示stunnel客户端正常运行。

Stunnel客户端安装配置(Linux版)

  1. 查看并获取待连接Redis缓存实例的弹性IP地址和端口。

    具体步骤请参见查看缓存信息

  2. 登录本地Linux设备。
  3. 安装stunnel客户端。

    这里主要介绍Stunnel客户端的几种常见安装方法。

     说明:

    推荐使用apt和yum两种安装方式,常见Linux系统,一般至少支持其中一种。

    其他常见系统下的Stunnel客户端安装请参考:

    “Mac下的Stunnel客户端安装”

    1. apt-get方式安装。apt-get管理deb格式的软件包,适用于Debian类操作系统,如Ubuntu。命令如下:

      apt install stunnel 或apt-get install stunnel

      如果命令执行后提示找不到Stunnel,可以尝试执行apt update,更新配置后再安装Stunnel。

    2. yum方式安装。管理rpm格式的软件包,适用于Fedora、CentOS、Red Hat等操作系统。

      yum install stunnel

    3. 其他通用方式安装。Unix系统还可以直接下载Stunnel安装包,编译后安装。前提是需要安装gcc编译环境,以及openssl-devel工具。安装如遇到困难,可参考Stunnel官方网站的帮助

      下载并解压Stunnel后,进入解压目录,执行以下命令编译和安装:

      ./configure;

      make && make install;

  4. 安装成功后,编辑/etc/default/stunnel4,将参数ENABLED设置为1。
     说明:

    不同的Linux系统版本,配置文件名称可能有差异,可在/etc/default/路径下查找该文件。

    ...
    ENABLED=1
    ... 
  5. 打开配置文件。

    stunnel配置文件名为:stunnel.conf。配置文件可以存储在任何路径,在Stunnel启动的时候指定改配置文件即可。

    也可以按照Stunnel默认的方式新增配置文件:

    1. apt-get方式

      路径为/etc/stunnel/stunnel.conf,如果路径不存在或者路径下无配置文件,可新增。

    2. yum方式

      默认路径为/usr/local/stunnel/stunnel.conf,如果路径不存在或者路径下无配置文件,可新增。

    3. 其他通用方式

      路径为/usr/local/stunnel/stunnel.conf,如果路径不存在或者路径下无配置文件,可新增。

     说明:

    如果不确定配置文件应该存储在哪,可以在安装后直接输入stunnel命令,获取文件路径提示。

  6. 在配置文件中新增如下内容,然后保存退出。
    debug = 4
    output = /var/log/stunnel.log
    sslVersion = all
    [redis-client]
    client = yes
    accept = 8000
    connect = {弹性IP地址}:{端口}
    CAfile = /etc/stunnel/dcs-ca.cer
    以下参数需要根据说明修改,其他参数不用修改:

    • client值固定填yes,表示为Stunnel客户端。
    • CAfile为CA证书,可选。如果需要,请根据查看缓存信息,进入到缓存实例详情页面下载该证书;如果不需要,此参数请删除。
    • accept为Stunnel监听端口,可以自定义。Redis客户端访问缓存实例时填写此端口。
    • connect为Stunnel转发地址与端口,此处填Redis缓存实例的IP地址与端口,即分别替换为步骤1获取的弹性IP地址和端口。
  7. 启动stunnel服务。
    1. 使用了Stunnel默认配置文件,则直接执行命令:

      stunnel

    2. 自定义配置文件的路径,则执行命令:

      stunnel /{customdir}/stunnel.conf

      其中/{customdir}/stunnel.conf为自定义存储路径。

    3. Ubuntu还可以使用 service stunnel4 start 或者systemctl start stunnel4。Stunnel4.x的版本,服务/进程名为stunnel4。

    启动后可执行ps -ef|grep stunnel确认进程是否正常运行。

  8. 执行以下命令,查看127.0.0.1:8000是否已经被监听。

    其中,8000替换为6中accept字段配置的Stunnel监听端口。

    netstat -plunt |grep 8000|grep "LISTEN"

    返回列表行中显示有“127.0.0.1:8000”,表示stunnel客户端正常运行。

Stunnel客户端安装和配置的更多相关文章

  1. Centos 6.5 SNMP客户端安装及配置版本net-snmp-5.7.3

    Centos 6.5 SNMP客户端安装及配置SNMP版本:net-snmp-5.7.3.tar.gz1.下载软件cd /usr/local/srcyum -y install gccwget htt ...

  2. Oracle客户端安装及配置

    Oracle客户端安装及配置 1.安装orcale客户端(Oracle_client_10 )选择inst...方式安装(不是管理员方式) 2.在安装路径下新建目录network\admin 然后新建 ...

  3. zabbix_agentd客户端安装与配置(windows操作系统)

    zabbix_agentd客户端安装与配置(windows操作系统)   **********  客户端操作   **********  标注:监控zabbix_agentd客户端安装对象是win s ...

  4. zabbix-agent客户端安装与配置

    zabbix-agent客户端安装与配置 下载abbix-agent客户端源码软件包 解压agent源码包,并且切换到解压目录. [root@localhost ~]# tar -zxf zabbix ...

  5. zabbix_agentd客户端安装与配置(Linux操作系统)

    标注:官网下载zabbix安装包(zabbix安装包里包含了zabbix_agentd客户端安装包,我们只选择zabbix_agentd客户端安装) zbbix官网下载地址:  http://www. ...

  6. linux的客户端安装步骤配置

    现有一个***.tar.gz的客户端软件,现在客户端安装步骤如下 说明:此软件是一个网络客户端认证软件,因为采用虚拟机中的linux主机,所以此主机的网路配置从只能使用Bridge模式,而不能使用NA ...

  7. zabbix客户端安装和配置(linux)

    zabbix源码安装客户端 # tar -xvf zabbix-.tar.gz # mv zabbix- zabbix # cd zabbix # ./configure --prefix=/usr/ ...

  8. oracle客户端安装与配置

    在进行开发时经常需要连接Oracle数据库,一般的场景是Oracle数据库在远程服务器上,本地计算机通过plsql developer来访问. 这就要求在本地安装好plsql developer,但是 ...

  9. Windows Server - SVN 服务器搭建与项目配置、客户端安装与配置

    本教程以Windows Server 2012 R12 为例搭建SVN服务器,安装部署完成后,客户端可通过SVN客户端访问SVN服务器上的项目,也可以访问网上其他SVN服务器上的项目. 一.首先准备三 ...

随机推荐

  1. File常见操作函数

    String Name = File.getName();  //获得文件或文件夹的名称: String parentPath = File.getParent();  //获得文件或文件夹的父目录 ...

  2. win10系统下多python版本部署

    说明:win10,已安装有python3.5.2,为使用新浪云应用(SAE)支持微信公众号后台开发(SAE的python运行环境使用的是2.7.9),需部署python2.7的版本以便本地编辑调试. ...

  3. iOS开发神器InjectionIII

    最近发现了一款适用于iOS开发的神器,希望可以和大家一起分享,同时自己也将有用的东西记录下来,没错就是InjectionIII! 先看一下使用流程: 1.在MAC的App Store里面搜索下载这个工 ...

  4. 06.升级git版本及命令学习

    博客为日常工作学习积累总结: 1.升级git版本: 参考博客:https://blog.csdn.net/yuexiahunone/article/details/78647565由于新的版本可以使用 ...

  5. 针对jquery的ajax中的参数理解

    1. url 发送请求的地址.为空表示当前页. $.ajax({ type: "post", data: studentInfo, contentType: "appli ...

  6. iOS 清理Xcode项目中没有使用到的图片资源和类文件

    接手到一个旧的项目,但是发现里面有太多的无用资源,包括升级app后,一些无用的图片资源并没有被删掉,导致app在打包成ipa包以后,文件变大.手边这个项目IM要更换成环信的IM,之前的一些旧的SDK, ...

  7. React 父子组件和非父子组件传值

      零.this.props     可以接收到 外界的传值 和 此组件标签内部自定义的方法       例:         <one vals={message} sendVal={this ...

  8. CentOS6的/etc/rc.local不执行的问题解决

    小编在一个场景下,希望java -jar abc.jar命令在系统开机自启动是自动执行,于是乎在文件/etc/rc.local中写入nohup java -jar abc.jar &,重启后发 ...

  9. pyhton实现简单的木马程序

    十一的晚上,平时都在写工作的代码,好久没有专门看一些知识了,感觉想刚开始学c一样,搞到半夜 还是<python网络编程基础>,写了小脚本,没有任何结构,一句一句的往下写的,反正是可以实现想 ...

  10. day 10 函数的进阶

    动态传参 (重点)  *    ** 形参  * args在形参位置, *表示不定参数--接受的是位置参数   接受到的位置参数的动态传参:  都是元组 形参的顺序: 位置  *args 默认值  * ...