安全改进
绑定设置
如果您安装了这个文档的系统,那么在默认情况下,会有一些组件监听端口在所有地址上绑定。为了提高系统安全级别,我们建议您更改默认设置。
rabbitmq
推荐您绑定在本机回送地址 (127.0.0.1) 上。
编辑文件/etc/rabbitmq/rabbitmq.config
, 删除{"::1", 5672}
, 作如下修改[ { rabbit, [ { tcp_listeners, [{"127.0.0.1", 5672}] } ] } ]
postgresql
默认绑定在本机回送地址 (127.0.0.1) 上,不建议更改默认设置。
confluent
默认绑定在本机回送地址 (127.0.0.1) 上,不建议更改默认设置。
influxdb
推荐您绑定在本机回送地址 (127.0.0.1) 上。
编辑文件/etc/influxdb/config.toml
, 在[http]
区域中释放被注释掉的#bind-address=":8086"
一行并把它更改为bind-address="127.0.0.1:8086"
, 举例如下[http] # Determines whether HTTP endpoint is enabled. # enabled = true # The bind address used by the HTTP service. bind-address = "127.0.0.1:8086"
lico-core
建议绑定在 Internal 地址上。但是如果集群中没有登录节点,并且 lico-portal 与 lico-core 安装在同一个节点时,那么建议您绑定在本机回送地址 (127.0.0.1) 上。
编辑文件/etc/lico/supervisor.d/antilles.ini
, 更改在[program:confluent_proxy]
区域块中的命令参数,将"--bind :18080"
修改为"--bind <INTELNAL IP>:18080"
, 举例如下[program:confluent_proxy] command=/usr/bin/gunicorn --paste /etc/lico/confluent-proxy.ini --bind 172.20.0.14:18080 --log-config /etc/lico/confluent-proxy.ini --workers 1 --threads 50 --timeout 3600 --worker-class gevent --keep-alive 65 --log-level info --access-logfile - --error-logfile - --capture-output
lico-ganalia-mond
本机回送地址 (127.0.0.1) 是仅被信任的默认地址,不建议更改默认设置。
lico-confluent-proxy
建议绑定在 Internal 地址上。但是如果集群中没有登录节点,并且 lico-portal 与 lico-confluent-proxy 安装在同一个节点时,那么建议您绑定在本机回送地址 (127.0.0.1) 上。
编辑文件/etc/lico/supervisor.d/confluent-proxy.ini
, 更改在[program:confluent_proxy]
区域块中的命令参数,将"--bind :18081"
修改为"--bind <INTELNAL IP>:18081"
, 举例如下[program:confluent_proxy] command=/usr/bin/gunicorn --paste /etc/lico/confluent-proxy.ini --bind 172.20.0.14:18081 --log-config /etc/lico/confluent-proxy.ini --workers 1 --threads 50 --timeout 3600 --worker-class gevent --keep-alive 65 --log-level info --access-logfile - --error-logfile - --capture-output
lico-vnc-proxy
建议绑定在 Internal 地址上。但是如果集群中没有登录节点,并且 lico-portal 与 lico-vnc-proxy 安装在同一个节点时,那么建议您绑定在本机回送地址 (127.0.0.1) 上。
编辑文件/etc/lico/supervisor.d/vncproxy.ini
, 更改在[program:vncproxy]
区域块中的命令参数,将"--bind :18083"
修改为"--bind <INTELNAL IP>:18083"
, 举例如下[program:vncproxy] command=/usr/bin/gunicorn --paste /etc/lico/vnc-proxy.ini –bind 172.20.0.14:18083 --log-config /etc/lico/vnc-proxy.ini --workers 1 --timeout 3600 --worker-class gevent --keep-alive 65 --log-level info --access-logfile - --error-logfile - --capture-output ...... [program:websockify] command=/usr/bin/websockify 18082 --token-plugin=JSONTokenApi --token-source='http://172.20.0.14:18083/lookup?token=%s'
lico-wechat-agent
建议绑定在 Internal 地址上。但是如果集群中没有登录节点,并且 lico-portal 与 lico-wechat-agent 安装在同一个节点时,那么建议您绑定在本机回送地址 (127.0.0.1) 上。
编辑文件/etc/sysconfig/lico-wechat-agent
, 更改GUNICORN_CMD_ARGS
的命令参数, 将"--bind :18090"
修改为"--bind <INTELNAL IP>:18090"
, 举例如下# lico-wechat-agent environment file GUNICORN_CMD_ARGS= \ --bind 172.20.0.14:18090 \ --log-config /etc/lico/wechat-agent.ini \ --workers 1 \ --threads 4 \ --worker-class gevent \ --timeout 3600 \ --keep-alive 65 \ --log-level info \ --access-logfile - \ --error-logfile - \ --capture-output True
lico-mail-agent
建议绑定在 Internal 地址上。但是如果集群中没有登录节点,并且 lico-portal 与 lico-wechat-agent 安装在同一个节点时,那么建议您绑定在本机回送地址 (127.0.0.1) 上。
编辑文件/etc/sysconfig/lico-mail-agent
, 更改GUNICORN_CMD_ARGS
的命令参数, 将"--bind :18091"
修改为"--bind <INTELNAL IP>:18091"
, 举例如下# lico-wechat-agent environment file GUNICORN_CMD_ARGS= \ --bind 172.20.0.14:18091 \ --log-config /etc/lico/mail-agent.ini \ --workers 1 \ --threads 4 \ --worker-class gevent \ --timeout 3600 \ --keep-alive 65 \ --log-level info \ --access-logfile - \ --error-logfile - \ --capture-output True
lico-sms-agent
建议绑定在 Internal 地址上。但是如果集群中没有登录节点,并且 lico-portal 与 lico-mail-agent 安装在同一个节点时,那么建议您绑定在本机回送地址 (127.0.0.1) 上。
编辑文件/etc/sysconfig/lico-sms-agent
, 更改GUNICORN_CMD_ARGS
的命令参数, 将"--bind :18092"
修改为"--bind <INTELNAL IP>:18092"
, 举例如下# lico-sms-agent environment file GUNICORN_CMD_ARGS= \ --bind 172.20.0.14:18092 \ --log-config /etc/lico/sms-agent.ini \ --workers 1 \ --timeout 3600 \ --keep-alive 65 \ --log-level info \ --access-logfile - \ --error-logfile - \ --capture-output True
防火墙设置
- 考虑到系统的安全性,我们建议您在管理节点和登录节点上启用防火墙。如果您安装了集群并安装了 LiCO,请按照下面的步骤来设置您的防火墙。我们建议您参考官方的防火墙设置文档来自行设置。你可以浏览以下的官方文件:运行以下命令来安装和启用防火墙
$ sduo yum install -y firewalld $ sudo systemctl enable firewalld $ sudo systemctl start firewalld
管理节点
运行以下命令,将角色添加到公共区域# Add SSH service port $ sudo firewall-cmd --zone=public --add-port=22/tcp --permanent # Add httpd service port $ sudo firewall-cmd --zone=public --add-port=80/tcp --permanent # Add NFS service port $ sudo firewall-cmd --zone=public --add-port=2049/tcp --permanent # Add Ganglia gmond port $ sudo firewall-cmd --zone=public --add-port=8649/udp --permanent # Add Slurm slurmctld port $ sudo firewall-cmd --zone=public --add-port=6817/tcp --permanent # Add OpenLDAP slapd port $ sudo firewall-cmd --zone=public --add-port=636/tcp --permanent $ sudo firewall-cmd --zone=public --add-port=389/tcp --permanent # Add lico-confluent-proxy port $ sudo firewall-cmd --zone=public --add-port=18081/tcp --permanent # Add lico-core port $ sudo firewall-cmd --zone=public --add-port=18080/tcp --permanent # Add TensorBoard random binding port range $ sudo firewall-cmd --zone=public --add-port=20000-25000/tcp --permanent
运行以下命令将内部网络接口添加到公共区域$ sudo firewall-cmd --zone=public --add-interface=eth0 --permanent $ sudo firewall-cmd --zone=public --add-interface=eth1 --permanent
Note
eth0 和 eth1 应该是您的内部和外部网络接口。
运行以下命令来启用角色$ sudo firewall-cmd --complete-reload
登陆节点
运行以下命令,将角色添加到公共区域# Add SSH service port $ sudo firewall-cmd --zone=public --add-port=22/tcp --permanent # Add Nginx service port, you can adjust 8443 to your setting $ sudo firewall-cmd --zone=public --add-port=8443/tcp --permanent
运行以下命令将内部网络接口添加到公共区域$ sudo firewall-cmd --zone=public --add-interface=eth0 --permanent $ sudo firewall-cmd --zone=public --add-interface=eth1 --permanent
Note
eth0 和 eth1 应该是您的内部和外部网络接口。
运行以下命令来启用角色$ sudo firewall-cmd --complete-reload
- 考虑到系统的安全性,我们建议您在管理节点和登录节点上启用防火墙。如果您安装了集群并安装了 LiCO,请按照下面的步骤来设置您的防火墙。我们建议您参考官方的防火墙设置文档来自行设置。你可以浏览以下的官方文件:运行以下命令运行 YaST2
$ sudo yast
选择 Security and Users > Firewall
管理节点
选择 Allowed Services:
使用 External Zone 方式来设置 Allowed Services for Selected Zone点击 Advanced, 在对话框中进行如下设置:在 TCP Ports 一行添加 20000:25000 2049 22 80 389 636 6817 18080 18081在 UDP Ports 一行添加 8649Note
TCP/22
: ssh 服务端口TCP/80
: httpd 服务端口TCP/2049
: nfs 服务端口TCP/6817
: slurm slurmctld 端口TCP/636, 389
: openldap slapd 端口TCP/18081
: lico-confluent-proxy 端口TCP/18080
: lico-core 端口TCP/20000:25000
: TensorBoard 随机绑定端口范围UDP/8649
: ganglia gmond 端口选择 Interfaces:
将 eth0 和 eth1 设置为使用 External ZoneNote
eth0 和 eth1 应该是您的内部和外部网络接口
选择 Start-Up:
设置 Service Start 的方式为 Enable Firewall Automatic Starting点击 Save Settings and Restart Firewall Now退出 YaST登陆节点
选择 Allowed Services:
使用 External Zone 方式来设置 Allowed Services for Selected Zone点击 Advanced, 在对话框中进行如下设置:在 TCP Ports 一行添加 8443 22Note
TCP/22
: ssh 服务端口TCP/8443
: nginx 服务端口选择 Interfaces:
将 eth0 和 eth1 设置为使用 External ZoneNote
eth0 和 eth1 应该是您的内部和外部网络接口
选择 Start-Up:
设置 Service Start 的方式为 Enable Firewall Automatic Starting点击 Save Settings and Restart Firewall Now退出 YaST