2 # InspIRCd -- Internet Relay Chat Daemon
4 # Copyright (C) 2007 Dennis Friis <peavey@inspircd.org>
5 # Copyright (C) 2007 Craig Edwards <craigedwards@brainbox.cc>
7 # This file is part of InspIRCd. InspIRCd is free software: you can
8 # redistribute it and/or modify it under the terms of the GNU General Public
9 # License as published by the Free Software Foundation, version 2.
11 # This program is distributed in the hope that it will be useful, but WITHOUT
12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
13 # FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
16 # You should have received a copy of the GNU General Public License
17 # along with this program. If not, see <http://www.gnu.org/licenses/>.
21 package make::opensslcert;
26 use warnings FATAL => qw(all);
28 use Exporter 'import';
30 our @EXPORT = qw(make_openssl_cert);
33 sub make_openssl_cert()
35 open (FH, ">openssl.template");
36 my $org = promptstring_s("Please enter the organization name", "My IRC Network");
37 my $unit = promptstring_s("Please enter the unit Name", "Server Admins");
38 my $country = promptstring_s("Please enter your country (two letter code)", "US");
39 my $state = promptstring_s("Please enter your state or locality name", "Alaska");
40 my $city = promptstring_s("Please enter your city", "Factory Town");
41 my $email = promptstring_s("Please enter a contact email address", "oompa\@loompa.com");
42 my $commonname = promptstring_s("Please enter the common name (domain name) of the irc server", "example.inspircd.org");
54 my $time = promptstring_s("Please enter the number of days that this certificate is valid for","365");
56 system("cat openssl.template | openssl req -x509 -nodes -newkey rsa:1024 -keyout key.pem -out cert.pem -days $time 2>/dev/null");
57 system("openssl dhparam -out dhparams.pem 1024");
58 unlink("openssl.template");