Skip to content

feat(kube): add NetworkPolicy to restrict runner egress#7753

Merged
h0lybyte merged 1 commit intodevfrom
trunk/arc-runner-netpol-1772918009
Mar 7, 2026
Merged

feat(kube): add NetworkPolicy to restrict runner egress#7753
h0lybyte merged 1 commit intodevfrom
trunk/arc-runner-netpol-1772918009

Conversation

@h0lybyte
Copy link
Member

@h0lybyte h0lybyte commented Mar 7, 2026

Summary

  • Adds egress NetworkPolicy to arc-runners namespace
  • Allows only DNS (53), HTTPS (443), HTTP (80), SSH (22) outbound
  • Blocks runners from reaching internal cluster services on non-standard ports (PostgreSQL 5432, Redis 6379, RCON 25575, etc.)

Why

Self-hosted runners currently have unrestricted network access within the cluster. A compromised workflow could reach internal databases, game servers, or other sensitive services. This policy limits egress to only the ports needed for CI/CD operations.

Risk

Low — purely additive. Only restricts ports that runners shouldn't need. All CI operations (GitHub API, container pulls, package installs, git clone) use standard ports that remain open.

Test plan

  • NetworkPolicy created in arc-runners namespace
  • Trigger a CI workflow that uses arc-runner-set — should complete normally
  • Verify runners can still pull images, install packages, push to registries

🤖 Generated with Claude Code

Restricts arc-runners namespace egress to DNS (53), HTTPS (443),
HTTP (80), and SSH (22). Blocks runners from directly accessing
internal cluster services on non-standard ports like PostgreSQL,
Redis, and RCON.
@github-actions
Copy link
Contributor

github-actions bot commented Mar 7, 2026

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

Scanned Files

None

@h0lybyte h0lybyte merged commit 3d5ccdb into dev Mar 7, 2026
5 checks passed
@h0lybyte h0lybyte deleted the trunk/arc-runner-netpol-1772918009 branch March 7, 2026 21:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant