当前位置: 首页 > news >正文

网站安全防护


1.确保环境安全例如近期LNMP投毒事件
2.nginx/php隐藏版本号/关闭报错显示行
3.限制3306端口/phpMyAdmin尽量不用
4.修改指纹例如X-Powered-By/Cookie
5.上线前后进行主机漏扫+网站漏扫
6.系统安装杀毒ClamAV
7.更改后台管理入口
8.安装雷池WAF防护
9.网站使用https协议
10.后台双向认证

yum install opensslmkdir /root/openssl# 服务器,客户端的 openssl.cnf
cp /etc/pki/tls/openssl.cnf /root/openssl/server_openssl.cnf
cp /etc/pki/tls/openssl.cnf /root/openssl/user_openssl.cnf# 修改上述文件
# 1) [ req ] 小节: 取消 req_extensions = v3_req 前面的注释
# 2) [ req_distinguished_name ] 小节: 注释 0.* 开头的内容 
# 3) [ v3_req ] 小节## 服务端extendedKeyUsage=serverAuthubjectAltName = @alt_names[ alt_names ]DNS.1 = admin.dev.com## 客户端extendedKeyUsage=clientAuth# 如果想使用其他目录,修改 /etc/pki/tls/openssl.cnf 的 [ tsa_config1 ] 小节
mkdir /etc/pki/CA/newcerts -p
touch /etc/pki/CA/index.txt
# 如果文件不存在,用以下命令创建
echo '01' > /etc/pki/CA/serial
cd /etc/pki/CA#签发 CA 根证书和二级 CA 证书
# 根证书
openssl genrsa -out ca_root.key 2048
openssl req -x509 -new -key ca_root.key -out ca_root.cer -days 3650 -subj "/C=CN/ST=GD/L=SZ/O=dev/CN=dev-ROOT-CA"
# 二级证书
openssl genrsa -out sub_ca.key 2048
openssl req -new -key sub_ca.key -out sub_ca.csr -subj "/C=CN/ST=GD/L=SZ/O=dev/CN=dev-SUB-CA"
openssl ca -extensions v3_ca -in sub_ca.csr -days 3650 -out sub_ca.cer -cert ca_root.cer -keyfile ca_root.key
#用二级 CA 证书签发服务器证书
openssl genrsa -out server.key 2048
openssl req -new -key server.key -out server.csr -subj "/C=CN/ST=GD/L=SZ/O=dev/CN=admin.dev.com"
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.cer -CA sub_ca.cer -CAkey sub_ca.key -CAcreateserial -extensions v3_req -extfile /root/openssl/server_openssl.cnf
用二级 CA 证书签发客户端证书
penssl genrsa -out user.key 2048
openssl req -new -key user.key -out user.csr -subj "/C=CN/ST=GD/L=SZ/O=dev/CN=admin"
openssl x509 -req -days 365 -in user.csr -signkey user.key -out user.cer -CA sub_ca.cer -CAkey sub_ca.key -CAcreateserial -extensions v3_req -extfile /root/openssl/user_openssl.cnf
#将客户端证书导出为 pkcs12 格式
# 将根证书, 二级证书和用户证书合并
cat ca_root.cer sub_ca.cer user.cer > user_combination.cer
# 用合并证书生成 p12,这样在导入时能同时导入根证书,注意设置导出密码
openssl pkcs12 -export -inkey user.key -in user_combination.cer -out user.p12
##在导出为 pkcs12 时,会提示输入密码,这个密码在将证书导入到 windows 电脑时要进行验证,这样可以避免证书被盗导致的风险#前端nginx配置禁止访问管理后台
server {location = /wp-login.php {return 404;
}
location /wp-admin/ {return 404;
}
location = /admin.php {return 404;
}
location /admin/ {return 404;
}}
#后端nginx配置管理后台双向认证
server {listen 443 ssl;server_name admin.dev.com;ssl_certificate     cert/server.cer;ssl_certificate_key cert/server.key;ssl_session_timeout 5m; ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;ssl_prefer_server_ciphers on;ssl_client_certificate cert/ca_root.cer;ssl_verify_client on; }

http://www.lryc.cn/news/190733.html

相关文章:

  • 腾讯云南京地域怎么样?南京服务器IP测速Ping值延迟
  • Harbor 简介
  • RuntimeError: “LayerNormKernelImpl“ not implemented for ‘Half‘解决方案
  • 《向量数据库指南》——向量数据库与 ANN 算法库的区别
  • JavaScript-es6-新版语法-export-import
  • [elasticsearch]使用postman来查询数据
  • 【小程序练习】文件操作案例
  • flask框架-[实现websocket]:将socketio处理函数部分集中管理,使用类的方式来管理,集中管理socketio处理函数
  • Vue的学习补充
  • vue移动端H5调起手机发送短信(兼容ios和android)
  • spring boot RabbitMq基础教程
  • springboot vue 部署至Rocky(Centos)并自启,本文部署是若依应用
  • Mysql之增删改查
  • 【考研数学】矩阵三大关系的梳理和讨论 | 等价、相似、合同
  • 在 Amazon SageMaker 上使用 ESMFold 语言模型加速蛋白质结构预测
  • node.js知识系列(4)-每天了解一点
  • can not remove .unionfs
  • 微服务 BFF 架构设计
  • 零基础学python之元组
  • 11. SpringBoot项目中参数获取与响应
  • 4+1视图与UML
  • 没用的知识增加了,尝试用文心实现褒义词贬义词快速分类
  • AWS SAP-C02教程3--网络资源
  • 【TensorFlow2 之012】TF2.0 中的 TF 迁移学习
  • mysql面试题46:MySQL中datetime和timestamp的区别
  • 【Spring Boot】RabbitMQ消息队列 — RabbitMQ入门
  • Navicat定时任务
  • 小白必备:简单几步, 使用Cpolar+Emlog在Ubuntu上搭建个人博客网站
  • 封装 Token
  • CloudCompare 二次开发(17)——点云添加均匀分布的随机噪声