Traefik Configurable IP allowlists
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 37.4k
- Forks
- 3k
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 73
Description
What problem will this feature address?
Sometimes you want to protect a certain application by client IP address. Currently, this is possible with the via Traefik File System dynamic/middlewares.yml, but it would be nice if this is configurable via a form.
Describe the solution you'd like
Traefik offers IPAllowList. I suggest using this middleware to achieve the result.
Elements i want to suggest at least:
- Add user- or organisation-based IP list:
- Define a name for list identification
- Define an IP range (IPv4, IPv6)
- Define either depth, excludedIPs, ipv6Subnet
- The IP list is selectable in an application, applying the allow list for the exposed domains
Could also have:
- The IP list is selectable in at project level, applying the allow list on all exposed project domains
- In this case, in application settings, it should be visible the application inherits the rules from the project
Describe alternatives you've considered
This is possible with the via Traefik File System dynamic/middlewares.yml, but is not user-friendly.
Additional context
I guess this fits in with #274.
Will you send a PR to implement it?
Yes
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue points to dynamic/middlewares.yml and the application and project settings entry points; start by reviewing how Traefik middleware configuration and exposed domains are currently represented. Done means supporting named user- or organisation-based IPv4 and IPv6 allowlists, applying selections at application or project level, and showing inherited project rules in application settings.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- devops, security
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100