在*尼克斯系统配置时远程控制监听非标准端口,我是否也应该进行编辑/etc/services
以反映这一点。
我认为应该这样做,因此使用它的工具(例如联邦快递) 将识别 ssh 的正确端口,但我在文档和教程中很少看到对此的提及。
那么编辑是好做法还是坏做法/etc/services
?如果不是,为什么?
答案1
我认为在这种情况下进行编辑是没有意义的/etc/services
。世界不会随你改变 ssh 端口,并且所有在你的机器上查找服务名称到端口号的程序都会得到错误的 ssh 端口。
如果有的话,为您的非标准 ssh 端口添加自己的条目可能更有意义,例如myssh <yourport>/tcp
如果您想要一个可以使用的服务名称。
那么,显然存在一个长期的争论:除了减少日志垃圾邮件之外,改变端口来“隐藏”服务是否真的有任何实际用途。
答案2
该文件/etc/services
包含IANA 指定端口号,并且没有任何技术要求来修改该文件以便能够在非标准端口上运行服务。当您想要非默认端口时,通常您可以在服务配置文件中或使用启动选项以数字方式设置该端口号。
当非标准端口未在启动脚本或服务器配置文件中明确设置,而是从修改后的文件中获取时,我也很难诊断为什么服务没有监听其默认端口/etc/services
。
如果您确实更改/etc/services
以反映您的非标准端口号,请不要使用已建立的服务名称(例如ssh
在您的自定义端口上),因为这可能会在从您的系统连接到其他系统时中断连接。
当其他主机的 TCP/IP 端口 22 处于打开状态时,您将很难诊断为什么ssh otherhost
会突然无法连接……。
答案3
我认为更改 /etc/ssh/sshd_config 中 ssh 监听的端口以避免可能的攻击并不是一个坏习惯。就像之前回答的那样,更改 /etc/services 上的描述完全没有必要。