#!/usr/bin/perl -w use Net::FTP; #Zufallswert bei Aufruf ermitteln my $zufall = int (10000 + rand 99999); # Vorhandener Kunde? print "\nVerfügt der Kunde schon über eine Cert-ID?\n"; chomp ($abfrage = ); if ($abfrage eq "ja") { &bestand; } else { &neukunde; } sub bestand { print "\nBitte geben Sie die vorhandene Cert-ID ein:\n"; #array bzw. hash wird durchsucht und Kundenname ausgegeben chomp ($bestandsid = ); open CERTDB, "CERTDB"; @kunde = ; %kunde = @kunde; # Abfrage der Zertifikatsdateiname print "\nBitte geben Sie den Dateinamen des Zertifikats an,\n"; print "welches hochgeladen werden soll:"; chomp ($dateiname = ); $ftp = Net::FTP->new("localhost", Debug => 0) or die "Verbindung fehlgeschlagen: $@"; $ftp->login("ftp","ftp") or die "Anmeldung gescheitert ", $ftp->message; # #$ftp->mkdir("$zufall") # #or die "Verzeichniserstellung gescheitert ", $ftp->message; $ftp->cwd("/$bestandsid") or die "Kann Verzeichnis nicht betreten ", $ftp->message; $ftp->put("$dateiname") or die "Upload gescheitert ", $ftp->message; $ftp->quit; } sub neukunde { print "\nGeneriere Cert-ID für Neukunden...\n"; print "Bitte geben Sie den Namen des Kunden an, welcher in Zukunft\n"; print "mit der Cert-ID verknüpft werden soll: "; chomp ($neukunde = ); $kunde{"$neukunde"} = $zufall; print "\n -> $neukunde erhaellt Cert-ID $zufall\n"; print "\nKundenverzeichnis wird auf dem Server erstellt\n"; #print $kunde{"$neukunde"}; @kunde = %kunde; #Wir schreiben die Kundeninfos in eine Datei open CERTDB, ">>CERTDB"; print CERTDB "@kunde"; close CERTDB; # Abfrage der Zertifikatsdateiname print "\nBitte geben Sie den Dateinamen des Zertifikats an,\n"; print "welches hochgeladen werden soll:"; chomp ($dateiname = ); $ftp = Net::FTP->new("localhost", Debug => 0) or die "Verbindung fehlgeschlagen: $@"; $ftp->login("ftp","ftp") or die "Anmeldung gescheitert ", $ftp->message; $ftp->mkdir("$zufall") or die "Verzeichniserstellung gescheitert ", $ftp->message; $ftp->cwd("/$zufall") or die "Kann Verzeichnis nicht betreten ", $ftp->message; $ftp->put("$dateiname") or die "Upload gescheitert ", $ftp->message; $ftp->quit; }