基于官方https://hub.docker.com/r/owasp/modsecurity-crs%E9%95%9C%E5%83%8F%E6%9E%84%E5%BB%BA%E3%80%82
临时使用和调试:
console$ docker run -p 80:80 -it -e PARANOIA=4 --rm vshn/modsecurity bash
使用Dockerfile:
DockerfileFROM vshn/modsecurity:3.1 ENV PARANOIA=1 \ ANOMALY_INBOUND=500 \ ANOMALY_OUTBOUND=400 \ PORT=8000 \ BACKEND=http://facade-svc:9000 VOLUME /opt/modsecurity/rules/before-crs VOLUME /opt/modsecurity/rules/after-crs VOLUME /var/log/modsecurity VOLUME /tmp/modsecurity
使用Docker Compose启动ModSecurity和httpbin容器:
consolecd v3.1 docker-compose up
容器运行后,可发送如下请求:
consolecurl -i http://localhost:8080/anything curl -i -H 'Host: vshn.ch' http://localhost:8080/anything curl -i http://localhost:8080/cookies/set/secret/random-value
所有支持的端点可参考httpbin.org。
提供多种环境变量用于配置镜像。
最重要的环境变量如下:
1)
1000)
1000)
8080)
SecRuleEngine配置SecRequestBodyAccess配置SecResponseBodyAccess配置SecResponseBodyLimit配置SecRequestBodyLimit配置SecRequestBodyNoFilesLimit配置SecPcreMatchLimit配置SecPcreMatchLimitRecursion配置SecDefaultAction标签tx.allowed_methods配置tx.allowed_request_content_type配置tx.max_num_args配置tx.arg_name_length配置tx.total_arg_length配置tx.max_file_size配置tx.combined_file_sizes配置SecDebugLog配置SecDebugLogLevel配置SecAuditLogType配置SecAuditLogFormat配置SecAuditLog配置SecAuditLogStorageDir配置默认值请查看Dockerfile。
MaxRequestWorkers配置(mpm_event模块)ServerName配置(默认站点)ServerAdmin配置(默认站点)LogLevel配置(默认站点)ErrorLog配置(默认站点)CustomLog配置(默认站点)CustomLog配置(默认站点)RemoteIPInternalProxy配置(默认站点)X-Forwarded-Proto请求头配置(默认站点)Timeout配置(Apache全局)on)
ProxyPreserveHost配置(默认站点)off)
SSLProxyEngine配置,可选on或off(默认站点)。若需完全验证后端证书(包括主机名),应将PROXY_PRESERVE_HOST设为off。none)
SSLProxyVerify配置,指定证书验证级别(none、optional、require、optional_no_ca)。on)
SSLProxyCheckPeerName配置,可选on或off。是否检查后端证书的主机名。若PROXY_PRESERVE_HOST为on,此值应设为off。/etc/ssl/certs/ca-certificates.crt)
SSLProxyCACertificateFile配置(默认站点)ProxyTimeout配置(默认站点)默认值请查看Dockerfile。
127.0.0.1)
3310)
off)
遵循12-factor应用规范,审计日志、错误日志和访问日志均输出到控制台,由集群日志栈处理:
建议将/tmp/modsecurity挂载到临时存储,如emptyDir卷。相关配置如下:
/tmp/modsecurity/data)
SecDataDir配置/tmp/modsecurity/tmp)
SecTmpDir配置/tmp/modsecurity/upload)
SecUploadDir配置挂载自定义规则:
/opt/modsecurity/rules/before-crs/,规则将在核心规则集(CRS)之前加载。/opt/modsecurity/rules/after-crs/,规则将在CRS之后加载。所有自定义规则文件必须以.conf结尾才能被加载。
本产品包含MaxMind创建的GeoLite2数据,可从[***]
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
不支持 push
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务