我可以更改kubernetes节点的ssh端口吗?

时间:2018-02-06 19:11:23

标签: kubernetes azure-kubernetes

我在Azure(ACS)中使用Kubernetes,并想知道是否可以更改节点VM上的SSH端口。我想防止对默认SSH端口(端口22)的暴力攻击,但我不想破坏任何群集内通信机制。如果这会产生任何不同,我会很乐意使用acs-engine。

1 个答案:

答案 0 :(得分:0)

最重要的是,我同意JonahB的100%认为将节点暴露在狂野的互联网上是一种不必要的风险。 我甚至不愿意把它放在一个“答案”框中,因为它更像是一个肮脏的黑客,但它太多的字符不适合评论;那说:

理论上,你可以利用这样一个事实:kubelet使用远程控制API几乎可以直接进入这些机器上的Linux内核。部署到群集中的DaemonSet可以是volumeMount /var/lib/dbus,然后使用systemd控件套接字关闭sshd.service,然后更新DS(或单独的一个)可以重新启动ssh对于您选择的节点,如果您确实需要ssh in。或者volumeMount /etc/ssh,请更改配置,然后使用相同的控件套接字重新启动sshd.service。

我使用了一个非常类似的技巧,使用volumeMount和go-systemd库在节点上配置新的systemd服务;巧合的是,我碰巧在回答类似这一问题时发布了systemd daemon-reload部分的要点。