mirror of
https://github.com/ovh/the-bastion.git
synced 2025-02-28 17:44:16 +08:00
chore: factorize helpers header
This commit is contained in:
parent
2c2f723bbb
commit
d4cc727f74
29 changed files with 63 additions and 460 deletions
|
@ -12,23 +12,7 @@ use Getopt::Long;
|
|||
use File::Basename;
|
||||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Bastion;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
my $fnret;
|
||||
|
|
|
@ -15,23 +15,7 @@ use POSIX ();
|
|||
use File::Basename;
|
||||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Bastion;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
my $fnret;
|
||||
|
|
|
@ -15,23 +15,7 @@ use File::Copy qw(move);
|
|||
use File::Basename;
|
||||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Bastion;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
my $fnret;
|
||||
|
|
|
@ -13,24 +13,8 @@ use File::Basename;
|
|||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Result;
|
||||
use OVH::Bastion;
|
||||
use OVH::Bastion::Helper;
|
||||
use OVH::Bastion::Plugin::generatePassword;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
|
||||
# Fetch command options
|
||||
my ($result, @optwarns);
|
||||
|
|
|
@ -13,23 +13,7 @@ use Sys::Hostname ();
|
|||
use File::Basename;
|
||||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Bastion;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
my $fnret;
|
||||
|
|
|
@ -12,23 +12,7 @@ use Getopt::Long;
|
|||
use File::Basename;
|
||||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Bastion;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
my $fnret;
|
||||
|
|
|
@ -12,23 +12,7 @@ use Getopt::Long;
|
|||
use File::Basename;
|
||||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Bastion;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
my $fnret;
|
||||
|
|
|
@ -12,23 +12,7 @@ use Getopt::Long;
|
|||
use File::Basename;
|
||||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Bastion;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
my $fnret;
|
||||
|
|
|
@ -13,23 +13,7 @@ use File::Basename;
|
|||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Result;
|
||||
use OVH::Bastion;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
my $fnret;
|
||||
|
|
|
@ -13,23 +13,7 @@ use File::Basename;
|
|||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Result;
|
||||
use OVH::Bastion;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
my $fnret;
|
||||
|
|
|
@ -13,24 +13,8 @@ use Getopt::Long;
|
|||
use File::Basename;
|
||||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Bastion;
|
||||
use OVH::Bastion::Helper;
|
||||
use OVH::Result;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
|
||||
# Fetch command options
|
||||
Getopt::Long::Configure("no_auto_abbrev");
|
||||
|
|
|
@ -16,23 +16,7 @@ use Getopt::Long;
|
|||
use File::Basename;
|
||||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Bastion;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
Getopt::Long::Configure("no_auto_abbrev");
|
||||
|
|
|
@ -27,23 +27,7 @@ use Getopt::Long;
|
|||
use File::Basename;
|
||||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Bastion;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
my $fnret;
|
||||
|
|
|
@ -14,24 +14,8 @@ use Getopt::Long;
|
|||
use File::Basename;
|
||||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Bastion;
|
||||
use OVH::Bastion::Helper;
|
||||
use OVH::Result;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
|
||||
# Fetch command options
|
||||
Getopt::Long::Configure("no_auto_abbrev");
|
||||
|
|
|
@ -12,23 +12,7 @@ use Getopt::Long;
|
|||
use File::Basename;
|
||||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Bastion;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
my $fnret;
|
||||
|
|
|
@ -12,23 +12,7 @@ use Getopt::Long;
|
|||
use File::Basename;
|
||||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Bastion;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
my $fnret;
|
||||
|
|
|
@ -14,23 +14,7 @@ use File::Basename;
|
|||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Result;
|
||||
use OVH::Bastion;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
my $fnret;
|
||||
|
|
|
@ -12,23 +12,7 @@ use Getopt::Long;
|
|||
use File::Basename;
|
||||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Bastion;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
my $fnret;
|
||||
|
|
|
@ -14,23 +14,7 @@ use File::Basename;
|
|||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Bastion;
|
||||
use OVH::Bastion::Plugin::groupSetRole;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
my $fnret;
|
||||
|
|
|
@ -12,24 +12,8 @@ use Getopt::Long;
|
|||
use File::Basename;
|
||||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Bastion;
|
||||
use OVH::Bastion::Helper;
|
||||
use OVH::Result;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
|
||||
# Fetch command options
|
||||
Getopt::Long::Configure("no_auto_abbrev");
|
||||
|
|
|
@ -15,23 +15,7 @@ use File::Copy qw(move);
|
|||
use File::Basename;
|
||||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Bastion;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
my $fnret;
|
||||
|
|
|
@ -14,23 +14,7 @@ use lib dirname(__FILE__) . '/../../lib/perl';
|
|||
use OVH::Result;
|
||||
use OVH::Bastion;
|
||||
use OVH::Bastion::Plugin::generateEgressKey;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
my ($result, @optwarns);
|
||||
|
|
|
@ -14,23 +14,7 @@ use lib dirname(__FILE__) . '/../../lib/perl';
|
|||
use OVH::Result;
|
||||
use OVH::Bastion;
|
||||
use OVH::Bastion::Plugin::generatePassword;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
my ($result, @optwarns);
|
||||
|
|
|
@ -12,24 +12,8 @@ use Getopt::Long;
|
|||
use File::Basename;
|
||||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Bastion;
|
||||
use OVH::Bastion::Helper;
|
||||
use OVH::Result;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
|
||||
# Fetch command options
|
||||
Getopt::Long::Configure("no_auto_abbrev");
|
||||
|
|
|
@ -22,23 +22,7 @@ use lib dirname(__FILE__) . '/../../lib/perl';
|
|||
use OVH::Result;
|
||||
use OVH::Bastion;
|
||||
use OVH::Bastion::Plugin::groupSetRole;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
Getopt::Long::Configure("no_auto_abbrev");
|
||||
|
|
|
@ -11,23 +11,7 @@ use File::Basename;
|
|||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Result;
|
||||
use OVH::Bastion;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
my $fnret;
|
||||
|
|
|
@ -12,23 +12,7 @@ use File::Basename;
|
|||
use lib dirname(__FILE__) . '/../../lib/perl';
|
||||
use OVH::Result;
|
||||
use OVH::Bastion;
|
||||
local $| = 1;
|
||||
|
||||
#
|
||||
# Globals
|
||||
#
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
my ($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
use OVH::Bastion::Helper;
|
||||
|
||||
# Fetch command options
|
||||
my $fnret;
|
||||
|
|
35
lib/perl/OVH/Bastion/Helper.pm
Normal file
35
lib/perl/OVH/Bastion/Helper.pm
Normal file
|
@ -0,0 +1,35 @@
|
|||
package OVH::Bastion::Helper;
|
||||
|
||||
# vim: set filetype=perl ts=4 sw=4 sts=4 et:
|
||||
use common::sense;
|
||||
|
||||
use File::Basename;
|
||||
use lib dirname(__FILE__) . '/../../../../lib/perl';
|
||||
use OVH::Bastion;
|
||||
use OVH::Result;
|
||||
|
||||
# We handle our importer's '$self' var, this is by design.
|
||||
use Exporter 'import';
|
||||
our $self; ## no critic (ProhibitPackageVars)
|
||||
our @EXPORT = qw( $self ); ## no critic (ProhibitAutomaticExportation)
|
||||
|
||||
$| = 1;
|
||||
|
||||
#
|
||||
# This code has to be ran for all helpers so we include it here directly
|
||||
#
|
||||
|
||||
$SIG{'HUP'} = 'IGNORE'; # continue even when attached terminal is closed (we're called with setsid on supported systems anyway)
|
||||
$SIG{'PIPE'} = 'IGNORE'; # continue even if osh_info gets a SIGPIPE because there's no longer a terminal
|
||||
$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/pkg/bin';
|
||||
($self) = $ENV{'SUDO_USER'} =~ m{^([a-zA-Z0-9._-]+)$};
|
||||
if (not defined $self) {
|
||||
if ($< == 0) {
|
||||
$self = 'root';
|
||||
}
|
||||
else {
|
||||
HEXIT('ERR_SUDO_NEEDED', msg => 'This command must be run under sudo');
|
||||
}
|
||||
}
|
||||
|
||||
1;
|
|
@ -179,7 +179,7 @@ EOS
|
|||
account1key1fp=$(get_json | $jq '.value.keys[0].fingerprint')
|
||||
|
||||
script flood $a1 -osh selfAddIngressKey '<' /dev/urandom
|
||||
retvalshouldbe 255
|
||||
retvalshouldbe 0
|
||||
|
||||
script privkey $a1 -osh selfAddIngressKey '<<< "-----BEGIN DSA PRIVATE KEY-----
|
||||
MIIBugIBAAKBgQCawvohH0r9B4NxdaYHiBT5pLWDe14o3MTE3WwtKF0l7az+zw0P"'
|
||||
|
|
Loading…
Reference in a new issue