我目前正在学习安装 Kippo SSH。从教程中,它说我应该将 SSH 端口从 22 重新配置为不同的端口(在本例中为 3389)。所以现在每当我尝试从客户端进行 SSH 连接时,它都会连接到端口 3389。
从教程来看,这背后的原因是“我们不希望 Kippo 具有 root 访问权限”。
我的问题是,从端口 22 和端口 3389 运行 SSH 有什么区别?
我目前正在学习安装 Kippo SSH。从教程中,它说我应该将 SSH 端口从 22 重新配置为不同的端口(在本例中为 3389)。所以现在每当我尝试从客户端进行 SSH 连接时,它都会连接到端口 3389。
从教程来看,这背后的原因是“我们不希望 Kippo 具有 root 访问权限”。
我的问题是,从端口 22 和端口 3389 运行 SSH 有什么区别?
如果要打开低于 1024 的端口,大多数服务器都需要 root 访问权限。
请参阅:https ://www.w3.org/Daemon/User/Installation/PrivilegedPorts.html
为了绑定到低于 1024 的端口(特权端口),进程必须具有 root 访问权限。通过使其绑定到 3389 不需要 root 访问。
我看到这样做的原因之一是减少来自密码扫描程序的日志垃圾邮件。然后,如果有人试图暴力破解密码,您就会知道这是有针对性的尝试,而不是偷偷摸摸。
通过将 SSH 重定向到非标准端口——你让黑客的生活变得更加困难——因为他们不会 100% 确定你使用哪个端口来访问你的系统。
端口 22 - 如您所知,它是默认端口。但是,如果您已将其更改为非标准端口...我现在需要使用 Nmap 或其他工具进行端口扫描,以尝试检测 ssh 服务器现在正在侦听的位置 - 这增加了您的 IDS(入侵检测系统)检测到这种类型的恶意行为——并且可以让您开始采取反措施(例如拒绝目标的 IP 地址)。
虽然确实要创建低于 1024 的侦听端口,但您需要 root 访问权限 - sshd(ssh 守护进程 [服务器])将在引导时启动,仅此一项不会阻止 priv/non-priv 用户访问ssh 进程。
如果您希望为 root 停止 ssh - 这总是一件好事。然后是 ssh.config(根据所使用的操作系统,它的名称会有所变化 - 但是请查看 /etc/ssh/ )
控制 root 帐户是否可以登录的值是
这个值而 不是端口号 - 顺便说一下,它是使用一个值配置的,例如
是如何限制的。
SSH 是一种奇妙、灵活和安全的通信机制——但前提是正确理解和使用。
一般来说,有人可能想要在高端口上运行 SSH 侦听的主要原因有两个:
此外,如果 NAT 设备位于运行 SSH 的多台服务器前面,它无法将端口 22 映射到所有服务器,因此在这种情况下,它可能会被配置为,例如,将外部端口 10022 重定向到内部服务 192.0.2.10 :22 和外部端口 11022 到 192.0.2.11:22。
但是,在 Kippo 的情况下,您要安装的是“SSH 蜜罐”,该程序应该看起来像可用系统上的 SSH 命令行,但实际上响应缓慢并且没有任何用处。您想在常规 SSH 端口 (22) 和常用的高端口 (2222) 上运行它;实际上,在高端口上以用户身份运行它然后使用
iptables
将低端口重定向到同一主机上的高端口更容易。也可以使用 netcat (nc
) 或 xinetd 来设置重定向。为了让 Kippo 监听低端口(直接或通过重定向),常规系统 SSH 守护程序不能已经在那里监听。此外,为了让你的蜜罐更可信,你不希望系统守护进程监听另一个“公共”开放端口。
从安全的角度来看,掷骰子选择那个备用端口是最有效的,但是 RDP 不太可能在典型的 Linux 服务器上进行监听,所以如果你已经记住了那个端口号,使用它可能会很有趣。其他“有趣”的选择可能是 5190 (AOL) 或 1214 (KaZAA)。