Initial commit: Rampart v0.2.0

Multi-layer DDoS protection for Minecraft servers.

- rampart-core: Edge node with XDP/eBPF + Rust L7 filtering
- rampart-manager: REST API with JWT auth, Redis sync
- rampart-cli: CLI tool for operators
- velocity-plugin: Domain check, HMAC verify, server registry, load balancer
- paper-plugin: Auto-registration, heartbeat, HMAC verify
- dashboard: React + Vite web UI for management
This commit is contained in:
loki5512344 2026-07-20 20:53:32 +02:00
commit cf9608ce5d
Signed by: boba
GPG key ID: 253067914055423B
159 changed files with 15341 additions and 0 deletions

View file

@ -0,0 +1,20 @@
FROM rust:1.84-slim-bookworm AS builder
RUN apt-get update && apt-get install -y pkg-config libssl-dev && rm -rf /var/lib/apt/lists/*
WORKDIR /app
COPY Cargo.toml Cargo.lock rustfmt.toml ./
COPY crates/ ./crates/
RUN cargo build --release --bin rampart-core && \
cp target/release/rampart-core /app/rampart-core && \
strip /app/rampart-core
FROM debian:bookworm-slim
RUN apt-get update && apt-get install -y ca-certificates && rm -rf /var/lib/apt/lists/*
COPY --from=builder /app/rampart-core /usr/local/bin/rampart-core
EXPOSE 25565 9090
ENTRYPOINT ["rampart-core"]

View file

@ -0,0 +1,22 @@
FROM eclipse-temurin:21-jre-bookworm
ARG PAPER_VERSION=1.21.4
ARG PAPER_BUILD=latest
RUN apt-get update && apt-get install -y curl && rm -rf /var/lib/apt/lists/*
# Download Paper
RUN curl -fsSLo /opt/paper.jar \
"https://api.papermc.io/v2/projects/paper/versions/${PAPER_VERSION}/builds/${PAPER_BUILD}/downloads/paper-${PAPER_VERSION}-${PAPER_BUILD}.jar" || \
echo "Falling back to direct download..." && \
curl -fsSLo /opt/paper.jar \
"https://papermc.io/api/v2/projects/paper/versions/${PAPER_VERSION}/builds/${PAPER_BUILD}/downloads/paper-${PAPER_VERSION}-${PAPER_BUILD}.jar"
COPY deploy/config/server.properties /opt/server.properties
COPY deploy/config/paper-global.yml /opt/paper-global.yml
COPY plugins/paper/build/libs/rampart-paper-*.jar /opt/plugins/
EXPOSE 25566
WORKDIR /opt
CMD ["java", "-jar", "/opt/paper.jar", "--nogui"]

View file

@ -0,0 +1,20 @@
FROM eclipse-temurin:21-jre-bookworm
ARG VELOCITY_VERSION=3.4.0-SNAPSHOT
ARG VELOCITY_BUILD=latest
RUN apt-get update && apt-get install -y curl && rm -rf /var/lib/apt/lists/*
# Download Velocity
RUN curl -fsSLo /opt/velocity.jar \
"https://api.papermc.io/v2/projects/velocity/versions/${VELOCITY_VERSION}/builds/${VELOCITY_BUILD}/downloads/velocity-${VELOCITY_VERSION}-${VELOCITY_BUILD}.jar" || \
curl -fsSLo /opt/velocity.jar \
"https://versions.velocitypowered.com/download/${VELOCITY_VERSION}.jar"
COPY deploy/config/velocity.toml /opt/velocity.toml
COPY plugins/velocity/build/libs/rampart-velocity-*.jar /opt/plugins/
EXPOSE 25577
WORKDIR /opt
CMD ["java", "-jar", "/opt/velocity.jar", "/opt/velocity.toml"]