如何在 OPNsense 上启用和启动 SSH 服务器
OpenSSH 是一种工具,旨在使用 SSH 协议为远程设备提供安全的远程登录。 SSH 利用高级加密技术在客户端和服务器计算机之间进行数据传输、远程登录和文件传输。这种安全级别将消除网络中的窃听者、劫持者和其他类型的攻击者。
设置先决条件
在开始阅读本文之前,您必须满足以下要求:
- 已安装 OPNsense 服务器
- 您的本地设备应该能够访问 OPNsense Web 仪表板
- 您拥有 OPNsense 登录帐户,该帐户是内置 admins 组的成员。
在 OPNsense 上启用 OpenSSH 服务
OPNsense 被认为是最好的开源防火墙和路由解决方案之一,可用于家庭或中小型公司。
我们有一篇关于如何安装 OPNsense 的单独文章:如何在 Proxmox VE 上安装 OPNSense 防火墙。防火墙启动并运行后,登录 Web 仪表板。
进入仪表板后,导航至系统–> 管理–> Secure Shell。
勾选启用 OpenSSH 服务器复选框,并允许 root 用户登录。您可以选择启用密码身份验证方法,但这对我来说将被禁用,因为我更喜欢基于密钥的身份验证机制。
我们建议您允许 SSH 服务仅在 LAN 或任何其他不暴露于外界的 VLAN 网络上侦听。
使用SSH公钥登录
SSH 协议支持多种身份验证方法。最常用且最安全的交互式和自动连接是公钥身份验证。您可以阅读此文档来了解有关公钥认证方法的更多信息。
SSH 公钥的默认路径是 ~/.ssh
。您可以通过列出此目录中的内容来确认您是否拥有密钥。
$ ls -1 ~/.ssh
config
id_rsa
id_rsa.pub
known_hosts
known_hosts.old
您的公钥名为id_rsa.pub。如果您的计算机中没有,则使用以下命令在基于 Linux/Unix 的系统上生成它。
$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/jmutai/.ssh/id_rsa):
Created directory '/home/jmutai/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/jmutai/.ssh/id_rsa
Your public key has been saved in /home/jmutai/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:bgcrnow9O7wKbgeOdJ6kO2CnwPvpW5kGY84rMDv+DPY jmutai@josphat-devops2
The key's randomart image is:
+---[RSA 3072]----+
| |
| |
| |
| |
|. + S |
|=+=+o o. o |
|*BX+.*. + . |
|=B*+*=++ . |
|.=OE+.B= |
+----[SHA256]-----+
您需要复制文件中的内容以便在 OPNsense 中使用。
cat ~/.ssh/id_rsa.pub
在 macOS 上,您可以使用 pbcopy 将内容复制到剪贴板。
pbcopy <~/.ssh/id_rsa.pub
Linux用户可以使用xclip。
xclip -sel clip <~/.ssh/id_rsa.pub
接下来转到 OPNsense Web 控制台,然后找到系统–> 用户部分。使用铅笔图标选择要编辑的用户。
粘贴所选用户的复制密钥。在我们的示例中,用户是root。
完成后保存更改。
测试 SSH 进入 OPNsense
最后一步是测试从我们的本地计算机到 OPNsense 的 SSH 连接。
SSH 的命令语法是。
$ ssh username@OPNsenseIP
Windows 用户可以尝试适用于 Windows 系统的最佳 SSH、Telnet 和串行客户端应用程序一文中的工具之一。
$ ssh [email
Warning: Permanently added '192.168.1.1' (ED25519) to the list of known hosts.
Last login: Thu Jan 25 01:05:07 2024 from 192.168.1.151
----------------------------------------------
| Hello, this is OPNsense 23.7 | @@@@@@@@@@@@@@@
| | @@@@ @@@@
| Website: https://opnsense.org/ | @@@" ///@@@
| Handbook: https://docs.opnsense.org/ | )))))))) ((((((((
| Forums: https://forum.opnsense.org/ | @@@/// "@@@
| Code: https://github.com/opnsense | @@@@ @@@@
| Twitter: https://twitter.com/opnsense | @@@@@@@@@@@@@@@
----------------------------------------------
*** fw01.example.io: OPNsense 23.7.12 ***
GuestWifi (vlan020) -> v4: 172.20.40.1/24
IoTDevices (vlan021) -> v4: 172.20.41.1/24
LAN (igb1) -> v4: 192.168.1.1/24
PrivateServers (vlan030) -> v4: 172.20.30.1/24
WAN (igb0) -> v4: a.b.c.d/24
HTTPS: SHA256 66 1B 87 B8 43 2C 15 45 05 57 05 1E 5E FF BB BD
AC A6 DF 50 C9 73 FC A6 D5 88 29 10 A4 16 7B 29
SSH: SHA256 lmQRFUxZjpwargrS5JII5m57XW04q8gE4ZHIrO3Ub0I (ECDSA)
SSH: SHA256 H3emXepr/oufi2zVoVRBWCt5iJM+JTVjtReBpBOlPUc (ED25519)
SSH: SHA256 +vgBRjGF6QyimDHDr9Dcq7aZqxuZGUlEdi//XEVLy8E (RSA)
0) Logout 7) Ping host
1) Assign interfaces 8) Shell
2) Set interface IP address 9) pfTop
3) Reset the root password 10) Firewall log
4) Reset to factory defaults 11) Reload all services
5) Power off system 12) Update from console
6) Reboot system 13) Restore a backup
Enter an option:
我们可以尝试执行一个操作来确认此操作是否有效。例如“12) 从控制台更新“
Enter an option: 12
Fetching change log information, please wait... done
This will automatically fetch all available updates and apply them.
Proceed with this action? [y/N]: y
Updating OPNsense repository catalogue...
OPNsense repository is up to date.
All repositories are up to date.
Updating OPNsense repository catalogue...
.....
这是我们在 OPNsense 上启用 OpenSSH 服务器并且能够访问它的验证。 OpenSSH 客户端程序称为 ssh,可在大多数基于 Linux 和 Unix 的系统上使用。 Windows 用户可能需要安装 PuTTY 或 MobaXterm 等提供 ssh 客户端功能的工具。
类似文章:
- 如何在 OPNsense 上安装和配置 Tailscale 客户端
- 如何在 Docker 容器中使用 UI 运行 Headscale
更新于:6个月前
相关文章
- 【说站】如何在mysql表中进行导入
- 【说站】python如何在二维图像上进行卷积
- 【说站】SKlearn如何在python安装?
- 【说站】python Task如何在协程调用
- 【说站】java如何在表格添加水印
- 【说站】python变量如何在作用域使用
- 【说站】Python如何在列表中添加新值
- 【说站】Java如何在PDF添加注释
- 【说站】java软引用如何在浏览器使用
- macOS 使用 SSH 连接服务器
- 如何在 JavaScript 中使用正则表达式删除 HTML 标签?
- VSCode 插件 Remote SSH 连接远程服务器
- 购买阿里云服务器、安装宝塔面板、放开安全组端口
- SSH 公钥免密登录
- PHP之内置web服务器
- 银河麒麟V10刚安装SSH连接被拒绝
- 如何正确安装IIS服务器
- Apache报错:无法使用可靠的服务器域名
- C#的网站通过Windows性能计数器监测服务器的性能
- linux的shell脚本中如何在一个字符串中查找指定字符串是否存在