Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature: Add support for Nginx plugin #64

Open
1 of 21 tasks
atammy-narmi opened this issue Mar 18, 2024 · 3 comments
Open
1 of 21 tasks

Feature: Add support for Nginx plugin #64

atammy-narmi opened this issue Mar 18, 2024 · 3 comments
Assignees
Labels
enhancement New feature or request help wanted Extra attention is needed prio-low Low Priority

Comments

@atammy-narmi
Copy link
Contributor

atammy-narmi commented Mar 18, 2024

Link to API

https://docs.opnsense.org/development/api/plugins/nginx.html

Description

Only squid proxy seems to have a plugin, I'd like to have nginx support as well.
I'm happy to help with the development as well, will start by making some PRs 😸

Modules

  • nginx_http_server
  • nginx_http_rewrite
  • nginx_upstream
  • nginx_upstream_server
  • nginx_location
  • nginx_security_header
  • nginx_logs
  • nginx_bans
  • nginx_limit_zone
  • nginx_limit_request_connection
  • nginx_credential
  • nginx_cache_path
  • nginx_naxsi_rule
  • nginx_ipacl
  • nginx_sni_fwd
  • nginx_stream_server
  • nginx_syslog_target
  • nginx_tls_finterprint
  • nginx_user_list
  • nginx_error_page
  • nginx_custom_policy
@atammy-narmi atammy-narmi added enhancement New feature or request triage labels Mar 18, 2024
@ansibleguy
Copy link
Owner

ansibleguy commented Mar 18, 2024

Greetings!

I have planned to prioritize other APIs - so I don't think I'll find time in the next few months/this year..

But I am open to helping you implement it yourself!
The developer docs should give you a basic overview of how to do that. But these infos are far from perfect/complete. Feel free to contact me if you have troubles understanding any relations.

We'll need to create multiple modules - one for each functionality the service/API provides.
Of course - you can stick to the ones you practically need.. (I haven't used it yet as I keep my services strictly separated from the firewall itself)

So these may be the modules:

  • nginx_http_server
  • nginx_http_rewrite
  • nginx_upstream
  • nginx_upstream_server
  • nginx_location
  • nginx_security_header
  • nginx_logs
  • nginx_bans
  • nginx_limit_zone
  • nginx_limit_request or nginx_limit_request_connection (?)
  • nginx_credential
  • nginx_cache_path
  • nginx_naxsi_rule
  • nginx_ipacl
  • nginx_sni_fwd
  • nginx_stream_server
  • nginx_syslog_target
  • nginx_tls_finterprint
  • nginx_user_list
  • nginx_error_page
  • nginx_custom_policy

@atammy-narmi
Copy link
Contributor Author

Thanks, I was able to get the upstream_server working, I've also added some tests FWIW.
Will also start working on other modules.

What is the documentation procedure?

@ansibleguy
Copy link
Owner

ansibleguy commented Apr 24, 2024

What is the documentation procedure?

Greetings!

I've pushed the basic docs template.
Please (at least) add the existing module arguments with a little description.

@ansibleguy ansibleguy added the help wanted Extra attention is needed label May 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed prio-low Low Priority
Projects
None yet
Development

No branches or pull requests

2 participants