#!/usr/bin/perl # index.cgi # Display existing IPsec tunnels require './ipsec-lib.pl'; # Make sure the ipsec command exists if (!&has_command($config{'ipsec'}) || !(($ipsec_version, $ipsec_program) = &get_ipsec_version(\$out))) { &ui_print_header(undef, $text{'index_title'}, "", "intro", 1, 1, 0, &help_search_link("freeswan", "doc", "google")); print "<p>",&text('index_eipsec', "<tt>$config{'ipsec'}</tt>", "@{[&get_webprefix()]}/config.cgi?$module_name"),"<p>\n"; if ($out) { print &text('index_out', "<tt>$config{'ipsec'} --version</tt>"),"\n"; print "<pre>$out</pre>\n"; } } else { &ui_print_header(undef, $text{'index_title'}, "", "intro", 1, 1, 0, &help_search_link("freeswan", "doc", "google"), undef, undef, &text('index_version2', $ipsec_version, $ipsec_program)); # Make sure the config file exists if (!-r $config{'file'}) { print "<p>",&text('index_econfig', "<tt>$config{'file'}</tt>", "@{[&get_webprefix()]}/config.cgi?$module_name"),"<p>\n"; } else { # Check for the host secret if (!&got_secret()) { # No key setup yet .. offer to create one print "<p><b>",&text('index_nokey', "<tt>$config{'secrets'}</tt>"),"</b><br>\n"; print "<center><form action=newkey.cgi>\n"; print "<input type=submit ", "value='$text{'index_newkey'}'>\n"; printf "<input name=host size=20 value='%s'>\n", &get_system_hostname(); print "</form></center>\n"; } else { # Show icons for connections print &ui_subheading($text{'index_header1'}); @conf = &get_config(); @conns = grep { $_->{'name'} eq 'conn' } @conf; if (@conns) { foreach $c (@conns) { push(@links, "edit.cgi?idx=". $c->{'index'}); if ($c->{'value'} eq '%default') { push(@titles, "<i>$text{'index_defconn'}</i>"); $has_default++; } else { push(@titles, &text('index_conn', "<tt>$c->{'value'}</tt>")); push(@start, $c->{'value'}); } push(@icons, "images/conn.gif"); } &icons_table(\@links, \@titles, \@icons); } else { print "<b>$text{'index_none'}</b><p>\n"; } print &ui_link("edit.cgi?new=1",$text{'index_add'}); if (!$has_default) { print " " x 3; print &ui_link("edit.cgi?new=2",$text{'index_adddef'}); } print " " x 3; print "<a href=import_form.cgi>$text{'index_import'}</a>"; print "<p>\n"; # Show icons for various options print &ui_hr(); print &ui_subheading($text{'index_header2'}); @links = ( "edit_config.cgi", "showkey.cgi", "list_secrets.cgi" ); @titles = ( $text{'config_title'}, $text{'showkey_title'}, $text{'secrets_title'} ); @icons = ( "images/config.gif", "images/showkey.gif", "images/secrets.gif" ); if ($ipsec_version =~ /(\d+)/ && $1 >= 2) { @policies = &list_policies(); foreach $p (@policies) { push(@links, "edit_policy.cgi?policy=$p"); push(@titles, $text{'policy_desc_'.$p} || &text('policy_desc', $p)); push(@icons, "images/policy.gif"); } $got_policies = 1; } &icons_table(\@links, \@titles, \@icons, 4); if (!@policies && $got_policies) { print "<b>",&text('index_nopol', "@{[&get_webprefix()]}/config.cgi?$module_name"),"</b><p>\n"; } print &ui_hr(); print "<table width=100%>\n"; # Start connection button if (@start && &is_ipsec_running()) { print "<form action=up.cgi>\n"; print "<td><input type=submit ", "value='$text{'index_up'}'>\n"; print "<select name=conn>\n"; foreach $s (@start) { printf "<option %s>%s</option>\n", $config{'conn'} eq $s ? "selected" : "", $s; } print "</select></td>\n"; print "<td>$text{'index_updesc'}</td>\n"; print "</tr></form>\n"; } # Start/stop/restart ipsec buttons if (&is_ipsec_running()) { print "<form action=restart.cgi><tr>\n"; print "<td><input type=submit ", "value='$text{'index_restart'}'></td>\n"; print "<td>$text{'index_restartdesc'}</td>\n"; print "</tr></form>\n"; print "<form action=stop.cgi><tr>\n"; print "<td><input type=submit ", "value='$text{'index_stop'}'></td>\n"; print "<td>$text{'index_stopdesc'}</td>\n"; print "</tr></form>\n"; } else { print "<form action=start.cgi><tr>\n"; print "<td><input type=submit ", "value='$text{'index_start'}'></td>\n"; print "<td>$text{'index_startdesc'}</td>\n"; print "</tr></form>\n"; } # Show boot-time start button if (&foreign_check("init")) { &foreign_require("init", "init-lib.pl"); $starting = &init::action_status("ipsec"); print "<form action=bootup.cgi>\n"; print "<input type=hidden name=starting ", "value='$starting'>\n"; print "<td nowrap><input type=submit ", "value='$text{'index_boot'}'>\n"; printf "<input type=radio name=boot ". "value=1 %s> %s\n", $starting == 2 ? "checked" : "", $text{'yes'}; printf "<input type=radio name=boot ". "value=0 %s> %s</td>\n", $starting == 2 ? "" : "checked", $text{'no'}; print "<td>$text{'index_bootdesc'}</td>\n"; print "</form></tr>\n"; } print "</table>\n"; } } } &ui_print_footer("/", $text{'index'});
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
help | Folder | 0755 |
|
|
images | Folder | 0755 |
|
|
lang | Folder | 0755 |
|
|
CHANGELOG | File | 239 B | 0644 |
|
backup_config.pl | File | 694 B | 0755 |
|
bootup.cgi | File | 381 B | 0755 |
|
config | File | 241 B | 0644 |
|
config-AlmaLinux-7.0-ALL | File | 235 B | 0644 |
|
config-Amazon-Linux-2-ALL | File | 235 B | 0644 |
|
config-CentOS-Linux-7.0-ALL | File | 235 B | 0644 |
|
config-CentOS-Stream-Linux-8.0-ALL | File | 235 B | 0644 |
|
config-CloudLinux-8.0-ALL | File | 235 B | 0644 |
|
config-Oracle-Linux-8.0-ALL | File | 235 B | 0644 |
|
config-Redhat-Enterprise-Linux-7.0-ALL | File | 235 B | 0644 |
|
config-Rocky-Linux-7.0-ALL | File | 235 B | 0644 |
|
config-Scientific-Linux-7.0-ALL | File | 235 B | 0644 |
|
config-coherent-linux | File | 256 B | 0644 |
|
config-debian-linux | File | 235 B | 0644 |
|
config-mandrake-linux | File | 250 B | 0644 |
|
config-openSUSE-Linux-15.0-ALL | File | 229 B | 0644 |
|
config-openmamba-linux | File | 250 B | 0644 |
|
config-redhat-linux | File | 256 B | 0644 |
|
config-suse-linux-8.2-ALL | File | 235 B | 0644 |
|
config-syno-linux | File | 241 B | 0644 |
|
config-trustix-linux | File | 235 B | 0644 |
|
config.info | File | 342 B | 0644 |
|
config.info.ca | File | 381 B | 0644 |
|
config.info.de | File | 386 B | 0644 |
|
config.info.es | File | 401 B | 0644 |
|
config.info.fr | File | 371 B | 0644 |
|
config.info.nl | File | 388 B | 0644 |
|
config.info.no | File | 357 B | 0644 |
|
edit.cgi | File | 8.25 KB | 0755 |
|
edit_config.cgi | File | 3.6 KB | 0755 |
|
edit_policy.cgi | File | 1.3 KB | 0755 |
|
edit_secret.cgi | File | 2.1 KB | 0755 |
|
export.cgi | File | 934 B | 0755 |
|
export_form.cgi | File | 776 B | 0755 |
|
import.cgi | File | 1.61 KB | 0755 |
|
import_form.cgi | File | 776 B | 0755 |
|
index.cgi | File | 5.21 KB | 0755 |
|
install_check.pl | File | 450 B | 0755 |
|
ipsec-lib.pl | File | 10.33 KB | 0755 |
|
list_secrets.cgi | File | 1.08 KB | 0755 |
|
log_parser.pl | File | 820 B | 0755 |
|
module.info | File | 184 B | 0644 |
|
module.info.af | File | 0 B | 0644 |
|
module.info.af.auto | File | 130 B | 0644 |
|
module.info.ar | File | 0 B | 0644 |
|
module.info.ar.auto | File | 179 B | 0644 |
|
module.info.be | File | 0 B | 0644 |
|
module.info.be.auto | File | 160 B | 0644 |
|
module.info.bg | File | 0 B | 0644 |
|
module.info.bg.auto | File | 169 B | 0644 |
|
module.info.ca | File | 122 B | 0644 |
|
module.info.ca.auto | File | 14 B | 0644 |
|
module.info.cs | File | 29 B | 0644 |
|
module.info.cs.auto | File | 79 B | 0644 |
|
module.info.da | File | 0 B | 0644 |
|
module.info.da.auto | File | 133 B | 0644 |
|
module.info.de | File | 115 B | 0644 |
|
module.info.de.auto | File | 14 B | 0644 |
|
module.info.el | File | 0 B | 0644 |
|
module.info.el.auto | File | 221 B | 0644 |
|
module.info.es | File | 36 B | 0644 |
|
module.info.es.auto | File | 91 B | 0644 |
|
module.info.eu | File | 0 B | 0644 |
|
module.info.eu.auto | File | 136 B | 0644 |
|
module.info.fa | File | 0 B | 0644 |
|
module.info.fa.auto | File | 181 B | 0644 |
|
module.info.fi | File | 0 B | 0644 |
|
module.info.fi.auto | File | 122 B | 0644 |
|
module.info.fr | File | 0 B | 0644 |
|
module.info.fr.auto | File | 134 B | 0644 |
|
module.info.he | File | 0 B | 0644 |
|
module.info.he.auto | File | 129 B | 0644 |
|
module.info.hr | File | 0 B | 0644 |
|
module.info.hr.auto | File | 131 B | 0644 |
|
module.info.hu | File | 0 B | 0644 |
|
module.info.hu.auto | File | 148 B | 0644 |
|
module.info.it | File | 0 B | 0644 |
|
module.info.it.auto | File | 133 B | 0644 |
|
module.info.ja | File | 0 B | 0644 |
|
module.info.ja.auto | File | 164 B | 0644 |
|
module.info.ko | File | 0 B | 0644 |
|
module.info.ko.auto | File | 149 B | 0644 |
|
module.info.lt | File | 0 B | 0644 |
|
module.info.lt.auto | File | 146 B | 0644 |
|
module.info.lv | File | 0 B | 0644 |
|
module.info.lv.auto | File | 121 B | 0644 |
|
module.info.ms | File | 122 B | 0644 |
|
module.info.ms.auto | File | 14 B | 0644 |
|
module.info.mt | File | 0 B | 0644 |
|
module.info.mt.auto | File | 127 B | 0644 |
|
module.info.nl | File | 31 B | 0644 |
|
module.info.nl.auto | File | 88 B | 0644 |
|
module.info.no | File | 32 B | 0644 |
|
module.info.no.auto | File | 100 B | 0644 |
|
module.info.pl | File | 0 B | 0644 |
|
module.info.pl.auto | File | 123 B | 0644 |
|
module.info.pt | File | 0 B | 0644 |
|
module.info.pt.auto | File | 133 B | 0644 |
|
module.info.pt_BR | File | 0 B | 0644 |
|
module.info.pt_BR.auto | File | 142 B | 0644 |
|
module.info.ro | File | 0 B | 0644 |
|
module.info.ro.auto | File | 133 B | 0644 |
|
module.info.ru | File | 0 B | 0644 |
|
module.info.ru.auto | File | 180 B | 0644 |
|
module.info.sk | File | 0 B | 0644 |
|
module.info.sk.auto | File | 112 B | 0644 |
|
module.info.sl | File | 0 B | 0644 |
|
module.info.sl.auto | File | 126 B | 0644 |
|
module.info.sv | File | 0 B | 0644 |
|
module.info.sv.auto | File | 124 B | 0644 |
|
module.info.th | File | 0 B | 0644 |
|
module.info.th.auto | File | 225 B | 0644 |
|
module.info.tr | File | 0 B | 0644 |
|
module.info.tr.auto | File | 134 B | 0644 |
|
module.info.uk | File | 0 B | 0644 |
|
module.info.uk.auto | File | 178 B | 0644 |
|
module.info.ur | File | 0 B | 0644 |
|
module.info.ur.auto | File | 220 B | 0644 |
|
module.info.vi | File | 0 B | 0644 |
|
module.info.vi.auto | File | 131 B | 0644 |
|
module.info.zh | File | 0 B | 0644 |
|
module.info.zh.auto | File | 114 B | 0644 |
|
module.info.zh_TW | File | 0 B | 0644 |
|
module.info.zh_TW.auto | File | 123 B | 0644 |
|
newkey.cgi | File | 388 B | 0755 |
|
restart.cgi | File | 210 B | 0755 |
|
save.cgi | File | 4.8 KB | 0755 |
|
save_config.cgi | File | 1.8 KB | 0755 |
|
save_policy.cgi | File | 717 B | 0755 |
|
save_secret.cgi | File | 1.53 KB | 0755 |
|
showkey.cgi | File | 861 B | 0755 |
|
start.cgi | File | 281 B | 0755 |
|
stop.cgi | File | 243 B | 0755 |
|
up.cgi | File | 783 B | 0755 |
|