oxidecomputer / oxidecomputer/omicron

Make firewall rules for externally reachable rack services operator configurable

Open
#9,475 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

api networking
Dominant language
Rust
Stars
572
Forks
97
Avg merge
2d 12h
Merged PRs (30d)
96

Description

When the control plane sets up firewall rules for externally reachable services, they are fixed and conservative. For example, the firewall rules for nexus will allow incoming HTTPS connections, but not incoming ICMP echo requests. This is not a one size fits all problem. Some operators will want more restrictive rules where endpoints are only reachable over the protocols they are providing services on, others will require that service endpoints respond to other types of messages such as ICMP echo requests as this can aid in debugging and is used by some availability monitoring tools. Today end users can control firewall rules for their instances, but operators have no such knobs for services.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no files, tests, or entry points. Start by locating the control-plane code that creates firewall rules for externally reachable rack services and reviewing how operator configuration is exposed. Done means operators can choose appropriate rules for these services, including whether protocols such as ICMP are allowed, with coverage for the resulting behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
api, infrastructure, networking
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.