我在校园里遇到了一台本地服务器,所有打开的端口和关联服务都是(在获得所需权限后,我进行了完整的端口扫描(80 http
、8080 tomcat
、8009 ajp13
、8140 puppet
。该服务器是远程管理的,AFSIK远程完成的任务是检索数据、更新web应用程序。
我想到的第一个问题是,在没有任何打开端口(如telnet
或SSH
(的情况下,如何远程访问和管理服务器?
在阅读了几篇文章后,我了解了端口*8140 puppet*
及其功能,可以远程更新和管理应用程序,尤其是当有多个服务器具有相同的应用程序时。
但我仍然不明白他们是如何从服务器中检索数据的。会不会是通过木偶?木偶还有其他我不懂的功能吗?
如果答案是是,那么有了pupet
,我们是否需要SSL
或Telnet
,这可能会给我们带来安全问题。
我想到的第一个问题是,在没有任何打开端口(如telnet或SSH(的情况下,如何远程访问和管理服务器?
这很难说,但也许它不是传统意义上的远程管理。它可能通过Puppet进行管理,这将涉及到它定期向远程服务器发出请求,并根据响应更新自己,但在出现故障时,仍需要某种方式进行维护。对于有问题的机器来说,这可能意味着在需要时登录其物理控制台。
另一方面,可能是通过基于web的管理控制台执行一些远程管理。开放端口的阵列可能与此一致,但这似乎令人怀疑,因为我预计这样的服务只能通过HTTPS公开,而且没有一个开放端口是传统上与HTTPS服务相关的。
在任何情况下,请注意,端口8140上的侦听并不能说明机器是否通过远程Puppet服务器进行管理。相反,它表明这台机器本身可能是一台Puppet服务器。
但我仍然不明白他们是如何从服务器检索数据的。会不会是通过木偶?
Puppet客户端以通常的网络服务方式从Puppet服务器检索数据。其标准服务器端口为8140。客户端在该端口连接到服务器,识别自身并提供关于其当前配置的信息,并接收"0";目录";描述应该如何配置它。Puppet客户端随后根据需要更新其机器,以匹配目录中的描述。
木偶还有其他我不了解的功能吗?
很难判断你对Puppet的了解。我倾向于猜测,实际上你对它有很多不了解,但我不确定其中有多少与你感兴趣的特定领域有关。
如果答案是YES,那么拥有
pupet
[原文如此],我们是否需要SSL
或Telnet
,这可能会给我们带来安全问题。
Puppet从一开始就是为了安全而设计的。Puppet客户端和服务器通过加密证书相互识别,并采用加密安全通信。木偶的使用并没有引入任何不安全的沟通渠道的需求,因为这将根据今天和历史的标准来判断。