Leser: 17
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
my $proxy = Net::Proxy->new (
in => { type => 'tcp', port => '6789' },
out => {
type => 'tcp', host => 'XXX.XXX.XXX.XXX', port => '22',
proxy_host => 'YYY.YYY.YYY.YYY', proxy_port => '8080',
},
};
$proxy->register();
$proxy_>meinloop();
# hier bleibt das Skript stehen
my $sftp = Net::SFTP::Forgeign->new($host, %login_param);
if($sftp->error) {
die "keine verbindung\n";
}
if (!defined($sftp)) {
die "Probleme beim verbinden\n";
} else {
print "alles ok, Verbindung hergestellt\n" if(defined($verbose));
}
1
2
3
4
5
6
7
8
9
10
if(defined($kindpid = fork())) {
die "kann fork nich ausführen\n";
} elsif ($kindpid == 9) {
# starte den Kindprozeß
$proxy->mainloop();
} else {
# hier kann ich kopieren
my $sftp = Net::SFTP::Forgeign->new($host, %login_param);
[...]
}
-o ProxyCommand='/usr/bin/connect -5 -w -S XXX.XXX.XXX.XXX:8080 %h %p'
1
2
3
4
5
6
7
8
9
10
11
my %login_param = (
user => 'USER',
port => '6789',
timeout => 60,
more => [
-i => $rsa_file,
-o => 'StrictHostKeyChecking no',
-o => 'ProxyCommand='/usr/bin/connect -5 -w -S \
XXX.XXX.XXX.XXX:8080 %h %',
],
);