OpenSSH安全加固
1、最小化安装CentOS操作系统:rpm总包数低于500,不同版本有所变化(CentOS8会高一些)。
2、安装semanage命令,将变更的ssh_port添加selinux策略白名单# CentOS7- yum -y install policycoreutils-python # CenTOS8 yum -y install policycoreutils-python-utils semanage port -a -t ssh_port_t 22002 -p tcp
3、防火墙添加例外
firewall-cmd --add-port 22002/tcp --permanent firewall-cmd --reload
4、修改openssh配置文件:修改默认Port,不允许Root直接登录访问,访问限制策略制定:只允许192.168.1.0/23源地址访问用户user01
vi /etc/ssh/sshd_config
#Port 22
Port 22002
#PermitRootLogin yes
PermitRootLogin no
#PasswordAuthentication yes
PasswordAuthentication no
Match Address 192.168.1.*,192.168.2.0/24 User user01
PasswordAuthentication yes注:Match策略支持IPv6:
Match Address fd88::/64 User user01
PasswordAuthentication yes5、执行history -c清空操作痕迹
隐藏OpenSSH版本号,参见《隐藏服务版本,避免被网络扫描》
Jetty中间件安全加固
修复“SSL/TLS协议信息泄露漏洞(CVE-2016-2183)”,修改jetty/jetty.xml,增加<Set name="IncludeCipherSuites">配置,当然<Item>取值可按照自己需要配置,这里只是简单去掉了DES/3DES Ciphers。
<Call name="addConnector"> <Arg> <New class="org.eclipse.jetty.server.ssl.SslSelectChannelConnector"> <Set name="Port">8443</Set> …… <Set name="IncludeCipherSuites"> <Array type="java.lang.String"> <Item>TLS_DHE_RSA_WITH_AES_128_CBC_SHA256</Item> <Item>TLS_DHE_RSA_WITH_AES_128_CBC_SHA</Item> <Item>TLS_DHE_RSA_WITH_AES_128_GCM_SHA256</Item> <Item>TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA</Item> <Item>TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256</Item> <Item>TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256</Item> <Item>TLS_RSA_WITH_AES_128_CBC_SHA</Item> <Item>TLS_RSA_WITH_AES_128_CBC_SHA256</Item> <Item>TLS_RSA_WITH_AES_128_GCM_SHA256</Item> </Array> </Set> </New> </Arg> </Call>
隐藏Jetty版本号,参见《隐藏服务版本,避免被网络扫描》
修复“服务器支持 TLS Client-initiated 重协商攻击(CVE-2011-1473)”:
jetty/jetty.xml。
<!--Set name="allowRenegotiate">true</Set-->
<Set name="allowRenegotiate">false</Set>