最近公司要求给售后培训安全加固的一些东西,自己也就随手整理了一些
1 、操作系统加固
取最新的OS系统,这些系统都是使用Nessue扫描后,对于中高的漏洞都打过补丁的,如果现网扫描出来还是有操作系统的漏洞,根据扫描报告下载对于的补丁包并进行安装
yum install kernel
yum install kernel-tools
yum install python-perf
2 、数据库加固
使用公司提供的数据库安装包安装,对外提供的安装包都是使用Nessue扫描过,并修复了中高级的漏洞,但是由于对于新出现的漏洞,我们只有通过网络去查这个漏洞的描述,存在哪些版本上,如何修复,如果漏洞没有补丁或者补丁需要企业用户才可以下载,我们可以尝试换一个业务数据库或者升级我们的数据库版本
3、防火墙开启(内外网映射)
For CentOS 6.8
iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT
vim /etc/sysconfig/iptables
# 加入如下代码,比着两葫芦画瓢 :)
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
或者命令行输入:
iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT
iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT
# 查看防火墙状态
service iptables status
# 停止防火墙
service iptables stop
# 启动防火墙
service iptables start
# 重启防火墙
service iptables restart
# 永久关闭防火墙
chkconfig iptables off
# 永久关闭后重启
chkconfig iptables on
For CentOS 7.2
在命令行执行如下命令
firewall-cmd --state #查看默认防火墙状态(关闭后显示not running,开启后显示running)
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
systemctl start firewalld.service #开启防火墙
systemctl enable firewalld.service #开机开启防火墙
firewall-cmd --zone=public(作用域) --add-port=80/tcp(端口和访问类型) --permanent(永久生效) #开启80端口
firewall-cmd --zone= public --remove-port=80/tcp --permanent #删除80端口
firewall-cmd --list-ports #查看已开放的端口(默认不开放任何端口)
当我们修改了某些配置之后(尤其是配置文件的修改),firewall并不会立即生效。可以通过两种方式来激活最新配置
systemctl restart firewalld和 firewall-cmd --reload两种方式,前一种是重启firewalld服务,建议使用后一种“重载配置文件”。
4、修改应用软件默认端口
、UE 涉及到的端口信息 端口号 功能说明 22 SSH 端口(防火墙允许端口已经默认添加) 5432 PostgreSQL 3306 BMS Mysql 数据库 7098 presto-server-0.169 61616、8161 apache-activemq-5.14.3 2181 zookeeper 9092 KAFKA 6379 redis-4.0.2 8080、8005、8009、8443 analystui/analystrunner/dac/viewer/arcgis/geoserver/gims
MySQL 53307 MySQL 服务端口 对 Tomcat 服务器开放 Tomcat 18460 HTTP 端口 对所有客户端开放 18461 HTTPS 端口 对所有客户端开放 18462 Tomcat Ajp 端口 对 Tomcat 服务器开放 postgresql 53401 postgresql 数据端口 对 Tomcat 服务器开放 非必须
presto 48286 SAE 查询引擎服务端口 对 Tomcat 服务器开放 redis 57084 redis 端口 对 Tomcat 服务器开放 非必须 kafka 9192 kafka 端口 对 Tomcat 服务器开放 zookeeper 2281 zookeeper 端口 对 Tomcat 服务器开放 H2 49099 H2 数据库端口号 对 Tomcat 服务器开放 H2 页面访问 8000 H2 数据库浏览器访问端口 号 对 Tomcat 服务器开放 nginx 8184 nginx 端口 对 Tomcat 服务器开放
5、登陆密码,数据库用户密码设置
6、依赖jar包版本过低
客户使用dependency_check等工具扫描出来依赖的jar包版本过低,这个只有找开发人员,因为我们不确定替换了最新的jar包后,是否影响我们的web服务,需要替换后验证基本功能无误