在百度云服务器上搭建集群时的安全设置
程序员文章站
2022-07-03 15:20:42
...
在将本地虚拟机上的hadoop集群搬到百度云服务器后,发现总是有很多不明ip地址登录导我的服务器中,由于在本地都是关闭了防火墙,但是在实际部署中,这样太不安全了。 所以我花了两小时搞了一下集群的防火墙设置和禁止ssh密码登录
防火墙开启和端口开放
防火墙开启
我用的centos7,具体方法可百度
#centos7启动防火墙
systemctl start firewalld.service
#centos7停止防火墙/关闭防火墙
systemctl stop firewalld.service
#centos7重启防火墙
systemctl restart firewalld.service
#设置开机启用防火墙
systemctl enable firewalld.service
#设置开机不启动防火墙
systemctl disable firewalld.service
关于hadoop和spark体系常用的端口
使用命令开放默认端口。这里就不解释了,需要的小伙伴们看这篇:centos 7 firewall(防火墙)开放端口/删除端口/查看端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=9000/tcp --permanent
firewall-cmd --zone=public --add-port=50010/tcp --permanent
firewall-cmd --zone=public --add-port=50075/tcp --permanent
firewall-cmd --zone=public --add-port=50475/tcp --permanent
firewall-cmd --zone=public --add-port=50020/tcp --permanent
firewall-cmd --zone=public --add-port=50020/tcp --permanent
firewall-cmd --zone=public --add-port=50070/tcp --permanent
firewall-cmd --zone=public --add-port=50470/tcp --permanent
firewall-cmd --zone=public --add-port=8020/tcp --permanent
firewall-cmd --zone=public --add-port=8485/tcp --permanent
firewall-cmd --zone=public --add-port=8480/tcp --permanent
firewall-cmd --zone=public --add-port=8019/tcp --permanent
firewall-cmd --zone=public --add-port=8032/tcp --permanent
firewall-cmd --zone=public --add-port=8030/tcp --permanent
firewall-cmd --zone=public --add-port=8031/tcp --permanent
firewall-cmd --zone=public --add-port=8088/tcp --permanent
firewall-cmd --zone=public --add-port=8040/tcp --permanent
firewall-cmd --zone=public --add-port=8042/tcp --permanent
firewall-cmd --zone=public --add-port=8041/tcp --permanent
firewall-cmd --zone=public --add-port=10020/tcp --permanent
firewall-cmd --zone=public --add-port=19888/tcp --permanent
firewall-cmd --zone=public --add-port=60000/tcp --permanent
firewall-cmd --zone=public --add-port=60010/tcp --permanent
firewall-cmd --zone=public --add-port=60020/tcp --permanent
firewall-cmd --zone=public --add-port=60030/tcp --permanent
firewall-cmd --zone=public --add-port=2181/tcp --permanent
firewall-cmd --zone=public --add-port=2888/tcp --permanent
firewall-cmd --zone=public --add-port=3888/tcp --permanent
firewall-cmd --zone=public --add-port=9083/tcp --permanent
firewall-cmd --zone=public --add-port=10000/tcp --permanent
#spark默认端口
firewall-cmd --zone=public --add-port=8020/tcp --permanent
firewall-cmd --zone=public --add-port=8088/tcp --permanent
firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --zone=public --add-port=7077/tcp --permanent
firewall-cmd --zone=public --add-port=8081/tcp --permanent
firewall-cmd --zone=public --add-port=9083/tcp --permanent
firewall-cmd --zone=public --add-port=18080/tcp --permanent
firewall-cmd --zone=public --add-port=4040/tcp --permanent
firewall-cmd --zone=public --add-port=9083/tcp --permanent
firewall-cmd --zone=public --add-port=60010/tcp --permanent
firewall-cmd --zone=public --add-port=6379/tcp --permanent
firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --zone=public --add-port=9092/tcp --permanent
关于端口的整理,请移步原文:Hadoop默认端口应用一览
Spark部分:几个重要的端口汇总
配置公钥及禁止密码登录
-
windows端
打开cmd, 输入ssh-******生成公钥和私钥,如下图
一路回车即可,然后根据图中的提示,找到公钥保存路径,将公钥上传到服务器。如图
windows端的操作告一段落了。 -
linux服务器端
将公钥追加到 /root/.ssh/authorized_keys文件中
cat id_rsa.pub >> .ssh/authorized_keys
最后设置设置ssh禁止密码登录:
关于ssh设置的问题,请移步这篇文章,很清晰!ssh登录安全设置
最后重启ssh服务就打工告成了
systemctl restart sshd.service
再尝试就发现不能用密码登录了,而只能使用公钥登录!
***注意***在重启服务时要保证使用公钥是能够登陆的哦!
推荐阅读