为什么要在其他端口上运行SSH


31

我目前正在学习有关安装Kippo SSH的知识。在本教程中,它说我应该将SSH端口从22重新配置为另一个端口(在本例中为3389)。因此,现在每当我尝试从客户端进行SSH时,它将连接到端口3389。

在本教程中,其背后的原因是“我们不希望Kippo具有root访问权限”。

我的问题是,从端口22与端口3389运行SSH有什么区别?


8
SSH中没有重定向的概念,因此我有点不清楚您在问什么。(我不知道这是因为不清楚您正在遵循的教程,还是因为您在写问题时忽略了一些基本信息。)
kasperd

4
这不是一个答案,但值得一提:TCP端口3389通常用于RDP。可能是3389被选中,试图被正在扫描远程访问的人发现。
TOOGAM


您正在看哪一本教程... 这个这个或其他东西?
大卫,

@david我使用了本教程youtube.com/watch?v=OyBiIjrVXgk
Adam

Answers:


52

如果要打开小于1024的端口,则大多数服务器都需要root访问。

低于1024的TCP / IP端口号是特殊的,因为不允许普通用户在其上运行服务器。这是一项安全措施,因为如果您在这些端口之一上连接到服务,则可以确定您拥有真实的东西,而不是某些黑客为您提供的伪造品。

请参阅:https//www.w3.org/Daemon/User/Installation/PrivilegedPorts.html


1
我觉得这个问题与这个答案很相关:superuser.com/questions/710253/…(由于阅读了答案,人们可​​能会问自己这个问题)
Score_Under 16'Jan

29

从端口22和端口3389运行SSH有什么区别?

为了绑定到低于1024的端口(特权端口),进程必须具有root用户访问权限。通过绑定到3389,不需要根访问。


21

我这样做的原因之一是,减少了来自密码扫描程序的日志垃圾邮件。然后,如果有人尝试暴力破解密码,您就会知道这是有针对性的尝试,而不是开车闯入。


8

通过将SSH重定向到非标准端口-您使黑客的生活更加困难-因为他们无法100%确定您使用哪个端口访问系统。

端口22-如您所知是默认端口。但是,如果您已将其更改为非标准端口...现在,我需要使用Nmap或其他工具进行端口扫描,以尝试检测ssh服务器正在侦听的位置 -这增加了您的IDS(入侵检测系统)来检测这种恶意行为-并可以使您开始采取对策(例如拒绝目标的IP地址)。

创建低于1024的侦听端口,您确实需要root用户访问权限-sshd(ssh守护程序[服务器])将在启动时启动,并且仅此一项并不能阻止priv / non-priv用户访问ssh进程。

如果您希望停止ssh的root-这总是一件好事。然后是ssh.config(根据所使用的操作系统,其名称略有变化-但是请在/ etc / ssh /中查看)

控制根帐户是否可以登录的值是

#PermitRootLogin no

此值而 不是端口号-顺便说一下,它是使用诸如

#Port 22

是如何限制的。

Ssh是一种出色,灵活且安全的通信机制-但前提是必须正确理解和正确使用它。


允许您以root用户身份登录的ssh与需要root访问权限的ssh守护程序本身之间存在区别,它可以打开特权端口。问题与这两个中的第二个有关,而不与第一个有关。
Mike Scott

3

通常,有人可能要在高端口上运行SSH侦听的主要原因有两个:

  • 由于它不是“标准”端口,因此随机尝试闯入(僵尸网络)的可能性较小
  • 如果端口号超过1024,则SSH守护程序的“ root特权”要少一些,因此需要信任

此外,如果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)。


1
如果不了解(或查找)Kippo是什么,为什么ssh守护进程不能成为root 并没有任何意义:如果它想以任何用户身份进行身份验证,则必须保留一些权限才能成为其他用户。但是这个答案很清楚为什么不以root用户身份运行很重要。
chexum
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.