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

网站改版优化建立互联网网站需要钱嘛

网站改版优化,建立互联网网站需要钱嘛,佛山市网络seo推广公司,温州网站设计哪家公司好长亭科技—雷池(SafeLine)社区版 官方网站:长亭雷池 WAF 社区版 (chaitin.cn) WAF 工作在应用层#xff0c;对基于 HTTP/HTTPS 协议的 Web 系统有着更好的防护效果#xff0c;使其免于受到黑客的攻击 1.1 雷池的搭建 1.1.1 配置需求 操作系统#xff1a;Linux 指令架构对基于 HTTP/HTTPS 协议的 Web 系统有着更好的防护效果使其免于受到黑客的攻击 1.1 雷池的搭建 1.1.1 配置需求 操作系统Linux 指令架构x86_64 查询命令: uname -m 软件依赖Docker 20.10.14 版本以上 查询命令: docker --version 软件依赖Docker Compose 2.0.0 版本以上 查询命令: docker-compose version最小化环境1 核 CPU / 1 GB 内存 / 5 GB 磁盘 查询命令: cat /proc/cpuinfo # 查看 CPU 信息 cat /proc/meminfo # 查看内存信息 df -h # 查看磁盘信息1.1.2 安装方式 在线安装 bash -c $(curl -fsSLk https://waf-ce.chaitin.cn/release/latest/setup.sh)离线安装 如果你的服务器无法连接互联网环境或连接 Docker Hub 网络不稳可以使用镜像包安装方式 这里忽略 Docker 安装的过程 首先下载 雷池社区版镜像包 并传输到需要安装雷池的服务器上执行以下命令加载镜像 cat image.tar.gz | gzip -d | docker load执行以下命令创建并进入雷池安装目录 mkdir -p safeline # 创建 safeline 目录 cd safeline # 进入 safeline 目录下载 编排脚本 并传输到 safeline 目录中 编排脚本: networks:safeline-ce:name: safeline-ce # 定义该子网名称driver: bridge # 定义该子网为桥接模式ipam:driver: defaultconfig:- gateway: ${SUBNET_PREFIX:?SUBNET_PREFIX required}.1 #定义网关为SUBNET_PREFIX.1,若按上文设置此处为172.22.222.1subnet: ${SUBNET_PREFIX}.0/24driver_opts:com.docker.network.bridge.name: safeline-ceservices:postgres:container_name: safeline-postgres # 容器名称restart: always # #容器启动失败或崩溃时自动重启image: postgres:15.2 # 镜像名称volumes: #开启的映射文件夹- ${SAFELINE_DIR}/resources/postgres/data:/var/lib/postgresql/data- /etc/localtime:/etc/localtime:roenvironment: #设置容器启动时的环境变量- POSTGRES_USERsafeline-ce- POSTGRES_PASSWORD${POSTGRES_PASSWORD:?postgres password required}networks: # 容器网络safeline-ce:3ipv4_address: ${SUBNET_PREFIX}.2 cap_drop: # 去除容器中某些不需要的能力- net_rawcommand: [postgres, -c, max_connections200] #设置 postgres 的最大连接数redis:container_name: safeline-redisrestart: alwaysimage: redis:7.0.10volumes:- ${SAFELINE_DIR}/resources/redis/data:/data- /etc/localtime:/etc/localtime:rocommand: redis-server --appendonly yes --requirepass ${REDIS_PASSWORD}networks:safeline-ce:ipv4_address: ${SUBNET_PREFIX}.3cap_drop:- net_rawsysctls:net.core.somaxconn: 511 # 设置内核参数management:container_name: safeline-mgt-apirestart: alwaysimage: chaitin/safeline-mgt-api:${IMAGE_TAG:?image tag required}volumes:- ${SAFELINE_DIR?safeline dir required}/resources/management:/resources/management- ${SAFELINE_DIR}/resources/nginx:/resources/nginx- ${SAFELINE_DIR}/logs:/logs- /etc/localtime:/etc/localtime:roports: # 将容器内部端口映射到宿主机上的端口- ${MGT_PORT:-9443}:1443 # 使用环境变量$MGT_PORT的值作为宿主机的端口,如果MGT_PORT未设置或为空,则默认使用9443environment:- MANAGEMENT_RESOURCES_DIR/resources/management- NGINX_RESOURCES_DIR/resources/nginx- DATABASE_URLpostgres://safeline-ce:${POSTGRES_PASSWORD}safeline-postgres/safeline-ce- MARIO_URLhttp://safeline-mario:3335- DETECTOR_URLhttp://safeline-detector:8001- REDIS_URLredis://:${REDIS_PASSWORD}safeline-redis:6379/0- MANAGEMENT_LOGS_DIR/logs/managementdns: # 设置DNS地址- 119.29.29.29- 223.5.5.5- 180.76.76.76- 1.2.4.8- 114.114.114.114- 8.8.8.8networks:safeline-ce:ipv4_address: ${SUBNET_PREFIX}.4cap_drop:- net_rawdetector:container_name: safeline-detectorrestart: alwaysimage: chaitin/safeline-detector:${IMAGE_TAG}volumes:- ${SAFELINE_DIR}/resources/detector:/resources/detector- ${SAFELINE_DIR}/logs/detector:/logs/detector- /etc/localtime:/etc/localtime:roenvironment:- LOG_DIR/logs/detectornetworks:safeline-ce:ipv4_address: ${SUBNET_PREFIX}.5cap_drop:- net_rawmario:container_name: safeline-mariorestart: alwaysimage: chaitin/safeline-mario:${IMAGE_TAG}volumes:- ${SAFELINE_DIR}/resources/mario:/resources/mario- ${SAFELINE_DIR}/logs/mario:/logs/mario- /etc/localtime:/etc/localtime:roenvironment:- LOG_DIR/logs/mario- GOGC100- DATABASE_URLpostgres://safeline-ce:${POSTGRES_PASSWORD}safeline-postgres/safeline-ce- REDIS_URLredis://:${REDIS_PASSWORD}safeline-redis:6379/0networks:safeline-ce:ipv4_address: ${SUBNET_PREFIX}.6cap_drop:- net_rawtengine:container_name: safeline-tenginerestart: alwaysimage: chaitin/safeline-tengine:${IMAGE_TAG}volumes:- ${SAFELINE_DIR}/resources/nginx:/etc/nginx- ${SAFELINE_DIR}/resources/management:/resources/management- ${SAFELINE_DIR}/resources/detector:/resources/detector- ${SAFELINE_DIR}/logs/nginx:/var/log/nginx- /etc/localtime:/etc/localtime:ro- ${SAFELINE_DIR}/resources/cache:/usr/local/nginx/cache- /etc/resolv.conf:/etc/resolv.confenvironment:- REDIS_URLredis://:${REDIS_PASSWORD}${SUBNET_PREFIX}.3:6379/0 - MGT_ADDR${SUBNET_PREFIX}.4:9002 #配置 mgt-api 的 grpc 服务器地址用于与 mgt-api 容器通信ulimits:nofile: 131072network_mode: host #Tengine 直接使用宿主机网络 执行以下命令生成雷池运行所需的相关环境变量shell echo SAFELINE_DIR$(pwd) .env # 设置当前路径为雷池社区版本的根路径 echo IMAGE_TAGlatest .env # 设置镜像的tag echo MGT_PORT9443 .env # 管理容器服务使用的端口 echo POSTGRES_PASSWORD$(LC_ALLC tr -dc A-Za-z0-9 /dev/urandom | head -c 32) .env # /dev/urandom是一个很长的随机数文本,tr -dc命令用于删除非字母,非数字的字符用于生成随机的postgres密码 echo REDIS_PASSWORD$(LC_ALLC tr -dc A-Za-z0-9 /dev/urandom | head -c 32) .env # 同上用于生成随机的reis密码 echo SUBNET_PREFIX172.22.222 .env # 定义docker 虚拟网卡的子网前缀执行以下命令启动雷池 docker compose up -d 1.1.3 雷池结构和启动配置 1.容器介绍 名称定义详情safeline-mgt-api管理容器接收管理后台行为向其他服务或容器推送消息safeline-detector检测容器执行检测的容器从 Tengine 进入的流量会转发到该节点检测safeline-mario日志容器记录与统计恶意行为的节点safeline-tengine网关转发网关有简单的过滤功能safeline-postgres关系型数据库存储攻击日志、保护站点、黑白名单配置的数据库safeline-redis缓存数据库- 2.容器间的通信如下 对于后台管理人员(admin)可以与safeline-mgt-api直接通信从而管理服务.该节点负责 向Tengine网关容器推送自定义配置并利用Nginx命令进行热部署自定义检测规则(黑名单等)并向检测引擎safeline-detector推送直接读取postgres数据库向后台管理员返回日志统计和当前配置等 而safeline-detector引擎会将safeline-mgt-api节点中定好的规则进行接收 对于用户(User)访问目标域名(解析到waf的IP和端口上反向代理到服务器)请求会达到safeline-tengine中进行简单的过滤然后将请求转到safeline-detector上进行日志检测查看是否符合条件.如果通过限制就会将请求转到后端服务器上然后接收响应返回给用户.如果不符合条件就会将日志输送给safeline-mario,记录与统计恶意行为的节点 1.2 雷池的使用 1.2.1 雷池的登录 ​ 浏览器打开后台管理页面 https://waf-ip:9443。根据界面提示使用 支持 TOTP 的认证软件或者小程序 扫描二维码然后输入动态口令登录 1.2.2 雷池配置的两种方式 1.在单独设备上部署雷池 提供一台独立设备部署雷池 将网站所有流量指向雷池.例如将域名解析到雷池禁止网站服务器上除了雷池之外的访问例如配置防火墙或者将网站服务器放置内网 实验环境: 192.168.65.8 --- www.waf.ct 192.168.65.4 --- www.server.ct编辑雷池端Nginx配置文件 upstream backend_monitor_servers {server 192.168.65.4:80; } server{listen 81;server_name www.waf.ct;location / {limit_req zonefive burst10;proxy_pass http://backend_monitor_servers ;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Host $host;proxy_set_header Host $host;add_header Strict-Transport-Security max-age31536000;}access_log /data/log/nginx/access.log;error_log /data/log/nginx/error.log; }攻击测试: curl -v http://www.waf.ct?id1union select * from dps如果是有域名且具备SSL证书的情况下 2.直接在网站服务器上部署雷池 不推荐这样部署这样部署单机负载更高设备宕机概率更大.非纯净环境下还会提高安装失败的概率故障排查比较困难 如果能接受这些风险雷池也可以直接部署在网站服务器上。你需要 将原本监听 80 或 443/ssl 端口的网站服务改到其他端口让雷池监听设备的 80 或 443/ssl 端口使网站服务仅允许本机访问。例如配置系统防火墙、Iptables 例如: 1.网站登录服务监听端口为80802.修改Waf监听端口 # 其中端口为Waf开启的端口,默认为80和443 # 上游服务器为要守护的域名测试: 在客户端执行命令:curl -H Host: 域名 http://雷池 IP:雷池监听端口 rootWAF:~# curl -H HOST:192.168.65.8 http://192.168.65.8:80 # 若能获取到业务网站的响应并且站点上 “今日访问量” 增加则代表配置成功3.和其他反向代理设备一起部署 ​ 雷池作为反代设备可以在任意位置接入主链路。只要将接入位置的流量指向雷池并在雷池的 “上游服务器” 处填写请求的下一跳服务器地址即可。例如 4.配置后网站无法访问 如果按照上文指引部署雷池、配置了站点但网站仍无法访问建议按照以下步骤排查 明确 “网站无法访问” 的具体表现 如果 502 Bad Gateway tengine 大概率是是雷池的上游服务器配置不正确或者雷池无法访问到上游服务器。请继续按下面步骤排查重点排查步骤 6、7 如果请求能够返回但是十分缓慢 首先确认服务器负载是否正常 在客户端执行命令检查雷池服务器与上游服务器的网络 curl -H Host: SafeLine-IP -vv -o /dev/null -s -w time_namelookup: %{time_namelookup}\ntime_connect: %{time_connect}\ntime_starttransfer: %{time_starttransfer}\ntime_total: %{time_total}\n http://上游服务器地址如果 time_namelookup 时间过大请检查 dns server 配置如果 time_connect 时间过大请检查雷池与上游服务器之间的网络状态如果 time_starttransfer 时间过大请检查上游服务器状态是否出现资源过载情况 如果不是以上情况继续下一步 在客户端执行 curl -H Host: 域名 http://雷池 IP:雷池监听端口 。正常情况下应能获取到业务网站的响应并且站点的 “今日访问量” 1 如果浏览器无法访问但这一步正常获取到响应大概率是因为 测试过程中网站域名还没有切到雷池浏览器测试时访问的是 http(s)://雷池 IP恰好业务服务上有 Host 验证所以拒绝了该请求。这种情况需要修改本机 host把域名解析到雷池 IP再访问 http(s)://域名才能准确测试网站业务做了其他一些特殊处理。例如访问后 301 跳转到了其他地址需要具体排查网站业务的响应内容 如果不能获取到响应继续下一步 在雷池设备上执行 curl -H Host: 域名 http://雷池 IP:雷池监听端口。正常情况下应能获取到业务网站的响应并且站点上 “今日访问量” 1 如果步骤 2 失败而这里成功说明客户端到雷池之间的网络存在问题。请排查网络保证客户端可访问到雷池如果不能获取到响应继续下一步 在雷池设备上执行 curl -H Host: 域名 http://127.0.0.1:雷池监听端口。正常情况下应能获取到业务网站的响应并且站点的 “今日访问量” 1 如果步骤 3 失败而这里成功且 telnet 雷池 IP 雷池监听端口 返回 Unable to connect to remote host: Connection refused大概率是被雷池设备上的防火墙拦截了。可能是操作系统本身的防火墙还有可能是云服务商的防火墙。请根据实际情况逐项排查开放雷池监听端口的访问如果不能获取到响应继续下一步 在雷池设备上执行 netstat -anp | grep 雷池监听端口 确认端口监听情况。正常情况下应该有一个 nginx 进程监听在 0.0.0.0:雷池监听端口。没有的话请通过社群或者 Github issue 提交反馈附上排查过程。有的话继续下一步 在雷池设备上 curl -H Host: 域名 上游服务器地址。正常情况下应能获取到业务网站的响应 如果步骤 4 失败而这里成功请通过社群或者 Github issue 提交反馈附上排查过程如果这步失败说明雷池和上游服务器之间的网络存在问题。请排查网络确保雷池可以访问到上游服务器 1.3 雷池的防护规则 # 最强的防护会将Request和Urlib等请求判定为扫描器会进行拦截这是用Python的threading模块进行cc攻击测试就会将IP进行直接封禁1.4 配置黑名单 黑名单可以根据 源IP路径HostHeaderBody 五种匹配目标进行匹配以下是每种匹配目标的匹配方式 1.配置黑名单为Header 正则匹配 curl -A Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2227.0 Safari/537.36 www.waf.ct1.n 可能会用到的配置 1.n.1 进入某一容器 docker exec -it container_name /bin/bash1.n.2 生成的Nginx配置 Nginx配置生成的文件在 docker exec -it safeline-tengine /bin/bash /etc/nginx/sites-enabled/IF-backend* #每配置一个保护站点就会生成一个这样的文件 /etc/nginx/sites-enabled/generated #心跳健康检查配置 /root/nginx/nginx.conf #与上述两个文件共同构成了 Tengine 的配置Nginx的配置文件在: /etc/nginx Nginx的日志文件默认生成在/var/log/nginx ,且默认不生成access.log日志1.n.3 查看mgt-api的日志 docker exec -it safeline-mgt-api /bin/bash #进入容器后 cat /logs/management/nginx.log cat /logs/management/webserver.log # 直接docker命令访问mgt日志 docker logs -f safeline-mgt-api1.n.4 分析safeline下面的日志文件 rootWAF:/data# cd safeline/ rootWAF:/data/safeline# tree logs logs ├── detector │ └── snserver.log #检测容器的输出日志 ├── management │ ├── nginx.log # Tengine 容器中 nginx 日志输出 │ └── webserver.log # safeline-mgt-api 容器的日志输出 ├── mario │ └── mario.log # 流量日志输出 └── nginx├── access.log # nginx 的访问日志├── error.log # nginx 的错误日志└── tcd.log # tcd 是 Tengine 用于与 safeline-mgt-api 通信的网络代理进程该文件存储了两者的通信日志
http://www.zqtcl.cn/news/16211/

相关文章:

  • 企业做淘宝客网站有哪些wordpress自定义的注册页面
  • 上海工程建设执业资格注册中心网站天元建设集团有限公司商票
  • 网站建设活动海报汽车网站模板免费下载
  • 只有一个人网站开发广州17年seo优化技术电话
  • 做30个精品网站如何在外国网站卖东西
  • 如何防止网站攻击网站建设基础百度百科
  • 长沙设计网站公司黄冈网站建设
  • 西安o2o网站设计公司美团企业邮箱认证怎么弄
  • 企业网站创建需要多种语言吗六安建筑模板厂家10强
  • 怎样做一家网站外国建筑设计网站
  • 网站的优化外包服装网站欣赏
  • cms免费企业网站建设门户网站都需要什么意思
  • 电子商务网站建设项目规划书wordpress授权代码
  • 商务网站建设一万字做企业网站服务器
  • 太原网站快速排名优化公司网站建设的基本流程
  • 网站被降权怎么办做外汇需要关注哪几个网站
  • 做网站公司汉狮上饶做网站建设
  • 安徽两学一做专题网站重庆网站设计制作案例
  • 建设网站的企业邮箱品牌视觉设计
  • 素材网站排行榜前十名建个网站需要多少钱圣宝电动车大架号在哪里
  • wordpress的mime类型简单建优化网站无需技术
  • 有没有专门做翻译的网站仿牌网站优化
  • 网站建设seo优化网站建设发展历程ppt
  • 常州城乡和住房建设厅网站违反建设投诉网站举报
  • 宁波网站建设方案联系方式营销型 网站开发
  • 12306网站为什么做不好使路由器设置虚拟主机
  • 做 爱 网站小视频wordpress 未通过审核应用
  • 广州市公司网站建设公司ip营销的概念
  • 淄博网站建设制作网站建站时间
  • 去哪网网站设计风格湟中网站建设