mirror of
https://github.com/hak5/nano-tetra-modules.git
synced 2025-10-29 16:58:09 +00:00
Add modules to repository
This commit is contained in:
47
Papers/includes/scripts/cfgNginx.py
Executable file
47
Papers/includes/scripts/cfgNginx.py
Executable file
@@ -0,0 +1,47 @@
|
||||
#!/usr/bin/python
|
||||
|
||||
# Author: sud0nick
|
||||
# Date: Jan 2016
|
||||
|
||||
import sys
|
||||
import argparse
|
||||
from cfgHelper import ConfigHelper
|
||||
|
||||
parser = argparse.ArgumentParser(description='Nginx Configuration Tool')
|
||||
parser.add_argument('-k', action='store', dest='keyName', help='Name of the keys to use for SSL configuration')
|
||||
group = parser.add_mutually_exclusive_group(required=True)
|
||||
group.add_argument('--add', action='store_true', dest='addSSL', help='Configure Nginx to use SSL. Requires -k to be set.')
|
||||
group.add_argument('--replace', action='store_true', dest='replaceSSL', help='Replace current SSL certificates. Requires -k to be set.')
|
||||
group.add_argument('--remove', action='store_true', dest='removeSSL', help='Remove SSL configuration from Nginx.')
|
||||
group.add_argument('--getSSLCerts', action='store_true', dest='getSSLCerts', help="Get the current certs being used for SSL in Nginx.")
|
||||
args = parser.parse_args()
|
||||
|
||||
if (args.addSSL and not args.keyName) or (args.replaceSSL and not args.keyName):
|
||||
parser.error("The option selected requires the -k option be provided as well.")
|
||||
|
||||
# Create a new instance of ConfigHelper that points to the
|
||||
# nginx SSL store (default is /etc/nginx/ssl/)
|
||||
helper = ConfigHelper()
|
||||
|
||||
# Add the configuration to the nginx config file
|
||||
if args.addSSL:
|
||||
if not helper.checkSSLCertsExist():
|
||||
print "SSL certs must first be generated"
|
||||
quit()
|
||||
|
||||
if not helper.addSSLConfig(args.keyName):
|
||||
print "An error has occurred while attempting to configure SSL"
|
||||
else:
|
||||
print "Complete"
|
||||
|
||||
elif args.replaceSSL:
|
||||
helper.replaceSSLConfig(args.keyName)
|
||||
print "Complete"
|
||||
|
||||
elif args.removeSSL:
|
||||
helper.removeSSLConfig()
|
||||
print "Complete"
|
||||
|
||||
elif args.getSSLCerts:
|
||||
if len(helper.currentSSLCerts) > 0:
|
||||
print "\n".join(helper.currentSSLCerts)
|
||||
Reference in New Issue
Block a user