diff --git a/lib/LUCCDC/Jiujitsu.pm b/lib/LUCCDC/Jiujitsu.pm index 2d198a6..f986390 100644 --- a/lib/LUCCDC/Jiujitsu.pm +++ b/lib/LUCCDC/Jiujitsu.pm @@ -11,6 +11,7 @@ use LUCCDC::Jiujitsu::Commands::stat; use LUCCDC::Jiujitsu::Commands::file; use LUCCDC::Jiujitsu::Commands::downloadshell; use LUCCDC::Jiujitsu::Commands::elk; +use LUCCDC::Jiujitsu::Commands::firewall; # ABSTRACT: CLI to manage Linux # VERSION @@ -30,6 +31,7 @@ my %subcommands = ( 'downloadshell' => \&LUCCDC::Jiujitsu::Commands::downloadshell::run, 'enum' => \&LUCCDC::Jiujitsu::Commands::enum::run, 'file' => \&LUCCDC::Jiujitsu::Commands::file::run, + 'firewall' => \&LUCCDC::Jiujitsu::Commands::firewall::run, 'help' => \&help, 'ports' => \&LUCCDC::Jiujitsu::Commands::ports::run, 'useradd' => \&LUCCDC::Jiujitsu::Commands::useradd::run, diff --git a/lib/LUCCDC/Jiujitsu/Commands/firewall.pm b/lib/LUCCDC/Jiujitsu/Commands/firewall.pm new file mode 100644 index 0000000..7b83479 --- /dev/null +++ b/lib/LUCCDC/Jiujitsu/Commands/firewall.pm @@ -0,0 +1,45 @@ +package LUCCDC::Jiujitsu::Commands::firewall; +use strictures 2; +use LUCCDC::Jiujitsu::Util::Logging; + +sub run{ + print "Hello World!"; + + my $testvar = 'ls'; + print $testvar, "\n"; + my @rules = `iptables -L`; + + my @IPtablesRules= (); + my @NFtablesRules=(); + + @IPtablesRules = `iptables -L`; + @NFtablesRules = `nft list ruleset`; + + if (@IPtablesRules){ + print "@IPtablesRules,\n"; + } + else{ + print "NFtables not in use.\n"; + } + + if (@NFtablesRules){ + print "@NFtablesRules,\n"; + } + else{ + print "NFtables not in use.\n"; + } + + + + + + + + if ( grep { /22/ } @rules ) { + print "SSH rules!\n"; + } + + exit; + +} +1;