Blob


1 #!/usr/bin/perl
3 use strict;
4 use warnings;
6 # Read from filename and return array of lines without trailing newlines
7 sub readarray {
8 my ($filename) = @_;
9 open(my $fh, '<', $filename) or die "Could not read file '$filename' $!";
10 chomp(my @lines = <$fh>);
11 close $fh;
12 return @lines;
13 }
15 # Read from filename and return as string
16 sub readstr {
17 my ($filename) = @_;
18 open my $fh, '<', $filename or die "Could not read file '$filename' $!";
19 my $str = do { local $/; <$fh> };
20 close $fh;
21 return $str;
22 }
23 my $username = "jrmu";
24 my $password = "TrophyCantaloupeWaterfall";
25 my $server = "host.lecturify.net";
26 my $ircserver = "irc.lecturify.net";
27 my $ircchannel = "#wheel";
28 my $ip4 = "38.87.162.96";
29 my $ip6 = "2602:fccf:1:1096::";
30 my $sshfingerprints =
31 "ssh-keygen -E md5 -lf /etc/ssh/ssh_host_dsa_key.pub
32 ssh-keygen -E md5 -lf /etc/ssh/ssh_host_ecdsa_key.pub
33 ssh-keygen -E md5 -lf /etc/ssh/ssh_host_ed25519_key.pub
34 ssh-keygen -E md5 -lf /etc/ssh/ssh_host_rsa_key.pub
35 ssh-keygen -lf /etc/ssh/ssh_host_dsa_key.pub
36 ssh-keygen -lf /etc/ssh/ssh_host_ecdsa_key.pub
37 ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub
38 ssh-keygen -lf /etc/ssh/ssh_host_rsa_key.pub";
40 foreach my $line (readarray("vpses")) {
41 if ($line =~ /^(.*) (.*)$/) {
42 print "\$ ssh $1\@$1.$server , password $2\n";
43 }
44 }
45 my $line = readstr("mailtemplate");
46 $line =~ s/\$USERNAME/$username/g;
47 $line =~ s/\$PASSWORD/$password/g;
48 $line =~ s/\$SERVER/$server/g;
49 $line =~ s/\$IRCSERVER/$ircserver/g;
50 $line =~ s/\$IRCCHANNEL/$ircchannel/g;
51 $line =~ s/\$IP4/$ip4/g;
52 $line =~ s/\$IP6/$ip6/g;
53 $line =~ s/\$SSHFINGERPRINTS/$sshfingerprints/g;
54 print $line;