2024年8月26日

如何使用端口敲击来保护 Linux 中的 SSH 服务

端口敲击是一种巧妙的技术,它通过仅允许合法用户访问服务器上运行的服务来控制对端口的访问。它的工作原理是,当进行正确的连接尝试顺序时,防火墙会很乐意打开已关闭的端口。 端口敲击背后的逻辑是保护您的 Linux 系统免受自动端口扫描器的攻击,这些扫描器会寻找开放端口。在本指南中,我们将介绍如何安装端口敲击以及如何配置它以保护 SSH 服务。出于演示目的,我们将使用Ubuntu 18.04。 步骤1:安装并配置knockd 首先,登录到您的 Linux 系统并安装knockd守护进程,如图所示。 $ sudo apt install knockd 安装完成后,使用您喜欢的文本编辑器打开knockd.conf配置。这里我们使用vim命令行文本编辑器。 $ sudo vim /etc/knockd.conf 默认配置文件如下所示。 knockd配置文件 在本[ope…
2024年8月26日

SSH 如何建立安全通信

当我们发送敏感信息/信件时,我们希望它对外界保密。因此,我们确保它受到保护,方法是将其密封在信封中,然后使用美国邮政服务 (USPS) 将其发送到目的地。至少,这是我们过去发送信息的方式。我甚至没有参与有关加密和摩尔斯电码的讨论,它们使用了更高级的保密级别。 现在,由于人类已经进化并适应了互联网,我们使用安全连接来交换信息。以前,我们使用 telnet 连接到使用端口 23 的远程服务器。问题是我们通过纯文本发送信息,这意味着任何想要阅读信息的人都可以嗅探网络,信息就会被泄露(相当于他们可以打开通过 USPS 发送的信件并阅读它。) 这个结果并不是我们在发送原始消息时想要的。总得有一种安全的方法将消息发送到远程服务器吧?当然,解决方案是通过安全外壳 (SSH) 发送。 SSH 如何发送加密消息 图像 因此,我希望使用加密消息从客户端到服务器进…
2024年8月26日

Tmate – 与 Linux 用户安全地共享 SSH 终端会话

tmate是tmux (终端多路复用器)的克隆版本,它通过 SSH 连接提供安全、即时且易于使用的终端共享解决方案。它建立在tmux之上;您可以在同一系统上运行这两个终端仿真器。您可以使用 tmate.io 上的官方服务器,也可以托管您自己的 tmate 服务器。 下图显示了tmate的不同组件的简化架构图(从项目网站获得)。 tmate – 简化架构图 Tmate 如何运作? 启动Tmate时,会先通过libssh在后台与tmate.io服务器建立ssh连接,建立连接后会为每个会话生成一个150位的会话令牌,受信任的用户可以使用该令牌访问终端会话。 如何在 Linux 中安装 Tmate 可以使用包管理器从大多数 Linux 发行版的默认存储库中安装Tmate ,如图所示。 在基于Debian和Ubuntu的 Linux 发行版中,使用以下 PPA 安装Tmat…
2024年8月26日

使用脚本为多个远程服务器设置无密码 SSH 登录

基于 SSH 密钥的身份验证(也称为公钥身份验证)允许无密码身份验证,它是一种比密码身份验证更安全、更好的解决方案。SSH无密码登录的一个主要优点(更不用说安全性)是它允许自动化各种跨服务器进程。 相关阅读:如何保护和强化 OpenSSH 服务器 在本文中,我们将演示如何使用 shell 脚本创建 SSH 密钥对并一次将公钥复制到多个远程 Linux 主机。 在 Linux 中创建新的 SSH 密钥 首先,使用ssh- keygen 命令生成 SSH 密钥对(SSH 客户端登录远程 SSH 服务器时用于验证自身身份的私钥/身份密钥以及作为授权密钥存储在运行 SSH 服务器的远程系统上的公钥),如下所示: # ssh-keygen 在 Linux 中生成 SSH 密钥 为多个远程登录创建 Shell 脚本 接下来,创建一个 shell 脚本,帮助将公钥复制到多个远程 Linux 主机。 # vim ~…
2024年8月26日

如何在 Linux 中增加 SSH 连接超时

由于不活动而导致的 SSH 超时可能非常令人恼火。这通常迫使您重新启动连接并重新开始。 值得庆幸的是,您可以轻松增加 SSH 超时限制,即使在某些不活动之后也能保持 SSH 会话处于活动状态。当服务器或客户端向另一个系统发送空数据包以保持会话处于活动状态时,就会发生这种情况。 相关阅读:如何保护和强化 OpenSSH 服务器 现在让我们探讨如何增加 Linux 中的 SSH 连接超时。 增加 SSH 连接超时 在服务器上,转到/etc/ssh/sshd_config配置文件。 $ sudo vi /etc/ssh/sshd_config 滚动并找到以下参数: #ClientAliveInterval #ClientAliveCountMax 该ClientAliveInterval参数指定服务器在向客户端系统发送空数据包以保持连接之前等待的时间(以秒为单位)。 另一…
2024年8月26日

如何修复 Linux 中的“无路由到主机” SSH 错误

SSH是远程连接 Linux 服务器最安全的方式。使用 SSH 时遇到的常见错误之一是“ ssh:连接到主机端口 22:没有到主机的路由”。在这篇短文中,我们将展示如何排除故障并修复此错误。 以下是我们正在讨论的错误的屏幕截图。请注意,端口不一定是端口22,具体取决于您在远程主机上的配置。作为安全措施,系统管理员可以将 SSH 配置为通过其他端口访问。 SSH 没有路由到主机错误 出现此错误的原因有很多种。第一种通常是远程服务器可能已关闭,因此您需要使用ping 命令检查它是否已启动并正在运行。 # ping 192.168.56.100 Ping Linux 服务器 从ping 命令结果来看,服务器已启动并正在运行,这就是它接受 ping 的原因。在这种情况下,错误的原因在于其他原因。 如果您的远程服务器上运行了防火墙服务,则防火墙可能会阻止通过端口22的…
2024年8月26日

如何通过 SSH 使用 Ytalk 设置安全私人聊天服务器

Ytalk是一款免费的多用户聊天程序,其工作原理与 UNIX talk 程序类似。ytalk 的主要优点是它允许多个连接,并且可以同时与任意数量的用户进行通信。 在本文中,我们将解释如何通过SSH使用Ytalk安装和设置私有的、加密的和经过身份验证的聊天服务器,以便每个参与者可以安全、无密码地访问聊天服务器。 另请参阅:ssh-chat – 通过 SSH 与其他 Linux 用户进行群聊/私聊 在 Linux 中安装 Ytalk 和 OpenSSH 服务器 如下所示,使用APT 包管理器安装Ytalk和OpenSSH 服务器。 $ sudo apt-get update $ sudo apt-get install ytalk openssh-server 安装完成后,openbsd-inetd和sshd服务应由安装程序自动启动。您可以检查它们是否已启动并正在运行,如下所示:…
2024年8月26日

如何在 Fedora 上为 SSH 设置双因素身份验证

每天都有很多安全漏洞被报道,我们的数据处于危险之中。尽管 SSH 是一种与 Linux 系统建立远程连接的安全方式,但即使您禁用密码或仅允许通过公钥和私钥进行 SSH 连接,未知用户如果窃取了您的 SSH 密钥,仍然可以访问您的 Linux 计算机。 在本文中,我们将解释如何使用Google Authenticator为Fedora Linux 发行版上的 SSH 设置双因素身份验证 ( 2FA ),通过提供由移动设备上的身份验证器应用程序随机生成的TOTP(基于时间的一次性密码)号码以更安全的方式访问远程 Linux 系统。 另请阅读:如何在 CentOS 和 Debian 中为 SSH 登录设置双因素身份验证 请注意,您可以使用任何与TOTP算法兼容的双向身份验证应用程序来为您的移动设备服务。有许多适用于 Android 或 IOS 的免费应用程序支持TOTP和Googl…
2024年8月26日

通过 Remote-SSH 插件在 VSCode 中设置远程开发

在本文中,我们将了解如何通过remote-ssh插件在 Visual Studio Code 中设置远程开发。对于开发人员来说,选择合适的IDE/IDLE 编辑器确实是一项重要的任务。 Vscode 就是这样的工具之一,它附带了一套很好的软件包,可以让我们的生活变得轻松,并提高开发人员的生产力。如果您尚未配置 vscode,请查看我们关于在 Linux 中设置 vscode的 VScode 安装文章。 为了测试目的,我的 Visual Studio Code 在 Linux Mint 20 上运行,并且我尝试连接在VirtualBox上运行的CentOS 7。 在 VSCode 编辑器中安装 Remote-SSH 进入包管理器并搜索“ Remote SSH ”包,该包由Microsoft拥有。单击“安装”图标以安装该包。 在 VSCode 中安装远程 SSH 附加包“ Remote-…
2024年8月26日

如何在 Linux 上安装 Mosh Shell 作为 SSH 替代品

Mosh是Mobile Shell的缩写,是一个命令行应用程序,用于通过互联网从客户端计算机连接到服务器。它可以用作SSH ,并且比Secure Shell包含更多功能。 它是一个类似于 SSH 的应用程序,但具有附加功能。该应用程序最初由Keith Winstein为类 Unix 操作系统编写,并根据 GNU GPL v3 发布。 Mosh Shell SSH 客户端 Mosh 的功能 它是一个支持漫游的远程终端应用程序。 适用于所有主要的类 UNIX 操作系统,即 Linux、FreeBSD、Solaris、Mac OS X 和 Android。 支持间歇性连接。 提供智能本地回声。 支持用户按键的行编辑。 通过 WiFi、蜂窝网络和长距离链路实现响应式设计和稳健性。 即使 IP 发生变化,仍保持连接。它使用 UDP 代替 TCP(由 SSH 使用)。当连接重置或分配新 IP 时,TCP 会超…