diff --git a/config/bash_completion.d/wo_auto.rc b/config/bash_completion.d/wo_auto.rc index b0ffd54..db3df87 100644 --- a/config/bash_completion.d/wo_auto.rc +++ b/config/bash_completion.d/wo_auto.rc @@ -74,7 +74,7 @@ _wo_complete() # HANDLE EVERYTHING AFTER THE THIRD LEVEL NAMESPACE "install" | "purge" | "remove" ) COMPREPLY=( $(compgen \ - -W "--recommended --web --admin --security --nginx --php --php73 --mysql --wpcli --phpmyadmin --adminer --utils --redis --phpredisadmin --composer --netdata --fail2ban --dashboard --proftpd --clamav --mysqlclient --mysqltuner --extplorer --all" \ + -W "--recommended --web --admin --security --nginx --php --php73 --mysql --wpcli --phpmyadmin --adminer --utils --redis --phpredisadmin --composer --netdata --fail2ban --dashboard --proftpd --clamav --mysqlclient --mysqltuner --extplorer --all --force" \ -- $cur) ) ;; "upgrade" ) diff --git a/install b/install index d559a9a..9df4add 100755 --- a/install +++ b/install @@ -877,7 +877,7 @@ else wo_lib_echo "WordOps (wo) installed successfully" echo wo_lib_echo "To enable bash-completion, just use the command:" - wo_lib_echo_info "bash" + wo_lib_echo_info "bash -l" echo wo_lib_echo "To install WordOps recommended stacks, you can use the command:" wo_lib_echo_info "wo stack install" diff --git a/wo/cli/plugins/secure.py b/wo/cli/plugins/secure.py index ec3d916..3a073a6 100644 --- a/wo/cli/plugins/secure.py +++ b/wo/cli/plugins/secure.py @@ -11,6 +11,7 @@ from wo.core.services import WOService from wo.core.shellexec import WOShellExec from wo.core.variables import WOVariables from wo.core.random import RANDOM +from wo.core.template import WOTemplate def wo_secure_hook(app): @@ -33,6 +34,13 @@ class WOSecureController(CementBaseController): dict(help='set backend port', action='store_true')), (['--ip'], dict(help='set backend whitelisted ip', action='store_true')), + (['--ssh-port'], dict( + help='set custom ssh port', action='store_true')), + (['--ssh-strict'], dict(help='harden ssh security', + action='store_true')), + (['--ufw'], + dict(help='setup and configure ufw firewall', + action='store_true')), (['user_input'], dict(help='user input', nargs='?', default=None)), (['user_pass'],