mirror of
https://github.com/Erreur32/nginx-proxy-manager-Bash-API.git
synced 2024-12-22 13:32:11 +01:00
This BASH script enables the management of Nginx Proxy Manager through its API.
c3a0ee63b6
BUG fix EXPIRY check |
||
---|---|---|
LICENSE | ||
nginx-proxy-script.png | ||
nginx_proxy_manager_cli.sh | ||
README.md |
Nginx Proxy Manager CLI Script
by Erreur32
🛠️ This BASH script allows you to manage Nginx Proxy Manager via the API.
🔑 it generates and manages the TOKENS automatically and check validity !! no more worries about that ;)
⚙️ It provides functionalities such as creating/deleting proxy hosts, managing users, and displaying configurations and more.
settings:
only edit thoses variables
#### Variables to edit
# Address IP server Nginx (your nginx ip server)
NGINX_IP="192.168.1.1"
# Token creation (user pass) with valid user on npm.
API_USER="your@email.com"
API_PASS="password"
Usage:
./nginx_proxy_manager_cli.sh [OPTIONS]
Options:
-d DOMAIN_NAMES Domain name (required)
-i FORWARD_HOST IP address or domain name of the target server (required)
-p FORWARD_PORT Port of the target server (required)
-s SSL_FORCED Force SSL (true/false, default: false)
-c CACHING_ENABLED Enable caching (true/false, default: false)
-b BLOCK_EXPLOITS Block exploits (true/false, default: true)
-w ALLOW_WEBSOCKET_UPGRADE Allow WebSocket upgrade (true/false, default: false)
-h HTTP2_SUPPORT Support HTTP/2 (true/false, default: true)
-a ADVANCED_CONFIG Advanced configuration (string)
-e LETS_ENCRYPT_AGREE Accept Let's Encrypt (true/false, default: false)
-n DNS_CHALLENGE DNS challenge (true/false, default: false)
--create-user username password Create a user with a username and password
--delete-user username Delete a user by username
--delete-host id Delete a proxy host by ID
--list-hosts List the names of all proxy hosts
--list-hosts-full List all proxy hosts with full details
--list-ssl-certificates List all SSL certificates
--list-users List all users
--search-host hostname Search for a proxy host by domain name
--help Display this help
Examples:
./nginx_proxy_manager_cli.sh -d example.com -i 192.168.1.10 -p 8080 -s true
./nginx_proxy_manager_cli.sh --create-user newuser password123
./nginx_proxy_manager_cli.sh --list-hosts
TODO:
- add setting for ADVANCED configuration in
location / { ... }