使用 OpenSSH 来保护 3CX 的备份和录音

前段时间我们放出了 v16 update 4 Alpha 升级,其中就包含了新的备份和存档选项,所以在这里我们将介绍如何简单设置 sshd(免费开源的 OpenSSH 进程或服务)。

SSH 是 “Secure Shell” 的缩写,主要用于在不安全的网络上(互联网)两台不受信任的主机进行加密的安全通信。在 AWSMicrosoft Azure 以及谷歌云上部署云端实例,SSH 都是默认安装的。

准备

在开始安装前我们需要准备以下条件:

  • 一台运行 Debian Linux 的服务器或者 PC,要有足够的硬盘来存放备份文件和录音
  • 一个 OpenSSH 服务
  • 一个路由器和防火墙管理的公网 IP
  • 一个转发内部 22 端口主机的 IP

在 Debian 上安装 SSH

我们可以在 Debian 9 和比较新的 X86 架构的 PC 或服务器上安装 OpenSSH,甚至可以在非常小型的树莓派上的 Raspbian Buster 上安装。你只需要打开命令行窗口,并使用 root 或者 sudo 运行下列命令:

安装最新的 OpenSSH 包:

$ sudo apt update
$ sudo apt install openssh-server

将 ssh 服务设置为开启自启动:

$ sudo systemctl enable ssh

启动 ssh 服务:

$ sudo systemctl start ssh

查看 OpenSSH 是否在运行:

$ sudo systemctl status ssh

在本地或者其他 Linux 机器,你可以使用用户名和密码登录:

$ ssh user@server-name-or-ip

在 Windows 上你也可以使用 PuTTY SSH 进行登录:

  • 输入 SSH 服务器的主机名或者 IP 地址
  • 在 “Saved Sessions” 输入一个名字,并点击 “Save” 保存该会话的信息
  • 点击 “Open” 并输入 SSH 服务器的凭证

在互联网上访问你的 SSH 服务器

你需要在路由器或防火墙上打开 SSH 服务器的 22 端口,确保在互联网上可以通过 22 端口访问 SSH 服务器。如果你使用的是动态 IP,你可以使用动态 DNS 服务(DDNS)以确保 FQDN 会随着你的 IP 同步。

⚠注意:只允许你的 IP 访问 SSH 服务器。

一旦将网络配置为允许连接到 SSH 服务器,就可以使用用户凭据验证来自另一个 Internet 主机的连接:

$ ssh user@server-fqdn-or-public-ip

设置 SSH 密钥对

如果想提升 SSH 连接的安全等级,你可以使用 SSH 密钥对来代替密码。你可以创建 SSH 密钥对,这样不用密码就可以登入 OpenSSH 服务器,详情可查看:创建和转换OpenSSH密钥。在配置备份和存档位置时,只需确保在 SSH 服务器上拥有公钥并将私钥上载到 3CX。

就是这样!现在,您可以使用 3CX PBX 在自己的 SSH 服务器上通过 SFTP 执行备份和存档录音。