]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/commitdiff
Hinzugefügt:
authorms <ms@ea5c0bd1-69bd-2848-81d8-4f18e57aeed8>
Tue, 6 Jun 2006 19:12:22 +0000 (19:12 +0000)
committerms <ms@ea5c0bd1-69bd-2848-81d8-4f18e57aeed8>
Tue, 6 Jun 2006 19:12:22 +0000 (19:12 +0000)
  * Morningreconnect Script
Geändert:
  * Neue Spamassassin Version. 3.1.3
  * Interface umfangreich bearbeitet in Layout und angezeigten Texten.
  * DHCP-Leases-Error gefixt
  * lq-Graph pingt nun nach www.heise.de
  * IP-Anzeige für PPPoE/DSL gefixt.
  * Connectionstate vom IPCop übernommen.

git-svn-id: http://svn.ipfire.org/svn/ipfire/trunk@164 ea5c0bd1-69bd-2848-81d8-4f18e57aeed8

43 files changed:
config/cfgroot/header.pl
html/cgi-bin/aliases.cgi
html/cgi-bin/backup.cgi
html/cgi-bin/changepw.cgi
html/cgi-bin/connections.cgi
html/cgi-bin/credits.cgi
html/cgi-bin/ddns.cgi
html/cgi-bin/dhcp.cgi
html/cgi-bin/dial.cgi
html/cgi-bin/dmzholes.cgi
html/cgi-bin/fwhits.cgi
html/cgi-bin/graphs.cgi
html/cgi-bin/gui.cgi
html/cgi-bin/hosts.cgi
html/cgi-bin/ids.cgi
html/cgi-bin/index.cgi
html/cgi-bin/ipinfo.cgi
html/cgi-bin/logs.cgi/config.dat
html/cgi-bin/logs.cgi/firewalllog.dat
html/cgi-bin/logs.cgi/ids.dat
html/cgi-bin/logs.cgi/log.dat
html/cgi-bin/logs.cgi/proxylog.dat
html/cgi-bin/logs.cgi/summary.dat
html/cgi-bin/modem.cgi
html/cgi-bin/netstatus.cgi
html/cgi-bin/optionsfw.cgi
html/cgi-bin/pakfire.cgi
html/cgi-bin/portfw.cgi
html/cgi-bin/pppsetup.cgi
html/cgi-bin/proxygraphs.cgi
html/cgi-bin/remote.cgi
html/cgi-bin/shaping.cgi
html/cgi-bin/shutdown.cgi
html/cgi-bin/status.cgi
html/cgi-bin/upload.cgi
html/cgi-bin/vpnmain.cgi
html/cgi-bin/wireless.cgi
html/cgi-bin/xtaccess.cgi
langs/de/cgi-bin/de.pl
lfs/spamassassin
src/rc.d/rc.sysinit
src/scripts/makegraphs
src/scripts/morningreconnect [new file with mode: 0644]

index d07a2133a415188c7c6d69f7ebdef5ec4eee6f14..04ed281d58962737885428ebd5d5cc492d48aec9 100644 (file)
@@ -189,9 +189,9 @@ sub genmenu {
                                'enabled' => 1,
                                };
     $substatus->{'06.fwhits'} = {
-                                 'caption' => 'Firewallhits',
+                                 'caption' => 'Firewall-Diagramme',
                                  'uri' => '/cgi-bin/fwhits.cgi',
-                                 'title' => "IPFire Firewallhits",
+                                 'title' => "Firewall-Diagramme",
                                 'enabled' => 1,
                                  };
     $substatus->{'07.connections'} = {
@@ -290,7 +290,7 @@ sub genmenu {
     $subservices->{'06.ids'} = {'caption' => $tr{'intrusion detection'},
                                'enabled' => 1,
                                'uri' => '/cgi-bin/ids.cgi',
-                               'title' => "$tr{'intrusion detection system'} (Snort)",
+                               'title' => "$tr{'intrusion detection system'}",
                                };
 
 
@@ -320,7 +320,7 @@ sub genmenu {
     $subfirewall->{'04.dmz'} = {
                                'caption' => $tr{'ssdmz pinholes'},
                                'uri' => '/cgi-bin/dmzholes.cgi',
-                               'title' => "$tr{'ssdmz pinhole'}",
+                               'title' => "$tr{'dmz pinhole configuration'}",
                                'enabled' => 1,
                                 };
     $subfirewall->{'05.outgoing'} = {
@@ -351,7 +351,7 @@ sub genmenu {
                                 };
     $sublogs->{'03.proxy'} = {'caption' => $tr{'proxy logs'},
                                 'uri' => '/cgi-bin/logs.cgi/proxylog.dat',
-                                'title' => "$tr{'proxy log'}",
+                                'title' => "$tr{'proxy logs'}",
                                 'enabled' => 1
                                 };
     $sublogs->{'04.firewall'} = {'caption' => $tr{'firewall logs'},
@@ -377,7 +377,7 @@ sub genmenu {
                                };
     $sublogs->{'09.system'} = {'caption' => $tr{'system logs'},
                                'uri' => '/cgi-bin/logs.cgi/log.dat',
-                               'title' => "$tr{'system log'}",
+                               'title' => "$tr{'system logs'}",
                                'enabled' => 1
                                };
     $sublogs->{'10.userlog'} = {'caption' => $tr{'user proxy logs'},
@@ -388,19 +388,19 @@ sub genmenu {
 
     my %subipfirehash = ();
     my $subipfire = \%subipfirehash;
-    $subipfire->{'01.pakfire'} = {'caption' => $tr{'pakfire'},
+    $subipfire->{'01.pakfire'} = {'caption' => 'Pakfire',
                                  'uri' => '/cgi-bin/pakfire.cgi',
-                                 'title' => "$tr{'paketmanager'}",
+                                 'title' => "Pakfire",
                                  'enabled' => 1,
                                  };
-    $subipfire->{'02.asterisk'} = {'caption' => $tr{'asterisk'},
+    $subipfire->{'02.asterisk'} = {'caption' => 'Asterisk',
                                  'uri' => '/cgi-bin/asterisk.cgi',
-                                 'title' => "$tr{'asterisk'}",
+                                 'title' => "Asterisk",
                                  'enabled' => 1,
                                  };
-    $subipfire->{'02.samba'} = {'caption' => $tr{'samba'},
+    $subipfire->{'02.samba'} = {'caption' => 'Samba',
                                  'uri' => '/cgi-bin/samba.cgi',
-                                 'title' => "$tr{'samba'}",
+                                 'title' => "Samba",
                                  'enabled' => 1,
                                  };
     $subipfire->{'99.help'} = {'caption' => $tr{'help'},
@@ -1235,33 +1235,125 @@ sub cleanhtml
        $outstring =~ s/>/&gt;/g;
        return $outstring;
 }
+
 sub connectionstatus
 {
-        my $status;
-        opendir UPLINKS, "/var/ipfire/uplinks" or die "Cannot read uplinks: $!";
-                foreach my $uplink (sort grep !/^\./, readdir UPLINKS) {
-                    if ( -f "${swroot}/uplinks/${uplink}/active") {
-                        if ( ! $status ) {
-                                $timestr = &age("${swroot}/uplinks/${uplink}/active");
-                                $status = "$tr{'connected'}: $uplink (<span class='ipcop_StatusBigRed'>$timestr</span>) ";
-                        } else {
-                                $timestr = &age("${swroot}/uplinks/${uplink}/active");
-                                $status = "$status , $uplink (<span class='ipcop_StatusBigRed'>$timestr</span>) ";
-                        }
-                    } elsif ( -f "${swroot}/uplinks/${uplink}/connecting") {
-                        if ( ! $status ) {
-                                $status = "$tr{'connecting'} $uplink";
-                        } else {
-                                $status = "$status , $tr{'connecting'} $uplink (<span class='ipcop_StatusBigRed'>$timestr</span>) ";
-                        }
-                    }
-                    $lines++;
-                }
-                closedir(UPLINKS);
-                if ( ! $status ) {
-                        $status = "$tr{'idle'}";
-                }
-                $connstate = "<span class='ipcop_StatusBig'>$status</span>";
+    my %pppsettings = ();
+    my %netsettings = ();
+    my $iface='';
+
+    $pppsettings{'PROFILENAME'} = 'None';
+    &General::readhash("${General::swroot}/ppp/settings", \%pppsettings);
+    &General::readhash("${General::swroot}/ethernet/settings", \%netsettings);
+
+    my $profileused='';
+    if ( ! ( $netsettings{'CONFIG_TYPE'} =~ /^(2|3|6|7)$/ && $netsettings{'RED_TYPE'} =~ /^(DHCP|STATIC)$/ ) ) {
+       $profileused="- $pppsettings{'PROFILENAME'}";
+    }
+
+    if ( ( $pppsettings{'METHOD'} eq 'DHCP' && $netsettings{'RED_TYPE'} ne 'PPTP') 
+                                               || $netsettings{'RED_TYPE'} eq 'DHCP' ) {
+               if (open(IFACE, "${General::swroot}/red/iface")) {
+                       $iface = <IFACE>;
+                       close IFACE;
+                       chomp ($iface);
+                       $iface =~ /([a-zA-Z0-9]*)/; $iface = $1;
+               }
+    }
+
+    my ($timestr, $connstate);
+    if ($netsettings{'CONFIG_TYPE'} =~ /^(0|1|4|5)$/ &&  $pppsettings{'TYPE'} =~ /^isdn/) {
+       # Count ISDN channels
+       my ($idmap, $chmap, $drmap, $usage, $flags, $phone);
+       my @phonenumbers;
+       my $count=0;
+
+       open (FILE, "/dev/isdninfo");
+
+       $idmap = <FILE>; chop $idmap;
+       $chmap = <FILE>; chop $chmap;
+       $drmap = <FILE>; chop $drmap;
+       $usage = <FILE>; chop $usage;
+       $flags = <FILE>; chop $flags;
+       $phone = <FILE>; chop $phone;
+
+       $phone =~ s/^phone(\s*):(\s*)//;
+
+       @phonenumbers = split / /, $phone;
+
+       foreach (@phonenumbers) {
+               if ($_ ne '???') {
+                       $count++;
+               }
+       }
+       close (FILE);
+
+       ## Connection status
+       my $number;
+       if ($count == 0) {
+               $number = 'none!';
+       } elsif ($count == 1) {
+               $number = 'single';
+       } else {
+               $number = 'dual';
+       }
+
+       if (-e "${General::swroot}/red/active") {
+               $timestr = &General::age("${General::swroot}/red/active");
+               $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'connected'} - $number channel (<span class='ipcop_StatusBigRed'>$timestr</span>) $profileused</span>";
+       } else {
+               if ($count == 0) {
+                       if (-e "${General::swroot}/red/dial-on-demand") {
+                               $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'dod waiting'} $profileused</span>";
+                       } else {
+                               $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'idle'} $profileused</span>";
+                       }
+               } else {
+                       $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'connecting'} $profileused</span>";
+               }
+       }
+    } elsif ($netsettings{'RED_TYPE'} eq "STATIC" || $pppsettings {'METHOD'} eq 'STATIC') {
+       if (-e "${General::swroot}/red/active") {
+               $timestr = &General::age("${General::swroot}/red/active");
+               $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'connected'} (<span class='ipcop_StatusBigRed'>$timestr</span>) $profileused</span>";
+       } else {
+               $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'idle'} $profileused</span>";
+       }
+    } elsif ( ( (-e "${General::swroot}/dhcpc/dhcpcd-$iface.pid") && $netsettings{'RED_TYPE'} ne 'PPTP' ) || 
+       !system("/bin/ps -ef | /bin/grep -q '[p]ppd'") || !system("/bin/ps -ef | /bin/grep -q '[c]onnectioncheck'")) {
+       if (-e "${General::swroot}/red/active") {
+               $timestr = &General::age("${General::swroot}/red/active");
+               if ($pppsettings{'TYPE'} =~ /^(modem|bewanadsl|conexantpciadsl|eagleusbadsl)$/) {
+                       my $speed;
+                       if ($pppsettings{'TYPE'} eq 'modem') {
+                               open(CONNECTLOG, "/var/log/connect.log");
+                               while (<CONNECTLOG>) {
+                                       if (/CONNECT/) {
+                                               $speed = (split / /)[6];
+                                       }
+                               }
+                               close (CONNECTLOG);
+                       } elsif ($pppsettings{'TYPE'} eq 'bewanadsl') {
+                               $speed = `/usr/bin/unicorn_status | /bin/grep Rate | /usr/bin/cut -f2 -d ':'`;
+                       } elsif ($pppsettings{'TYPE'} eq 'conexantpciadsl') {
+                               $speed = `/bin/cat /proc/net/atm/CnxAdsl:* | /bin/grep 'Line Rates' | /bin/sed -e 's+Line Rates:   Receive+Rx+' -e 's+Transmit+Tx+'`;
+                       } elsif ($pppsettings{'TYPE'} eq 'eagleusbadsl') {
+                               $speed = `/usr/sbin/eaglestat | /bin/grep Rate`;
+                       }
+                       $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'connected'} (<span class='ipcop_StatusBigRed'>$timestr</span>) $profileused (\@$speed)</span>";
+               } else {
+                       $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'connected'} (<span class='ipcop_StatusBigRed'>$timestr</span>) $profileused</span>";
+               }
+       } else {
+               if (-e "${General::swroot}/red/dial-on-demand") {
+                   $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'dod waiting'} $profileused</span>";
+               } else {
+                   $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'connecting'} $profileused</span>";
+               }
+       }
+    } else {
+       $connstate = "<span class='ipcop_StatusBig'>$Lang::tr{'idle'} $profileused</span>";
+    }
     return $connstate;
 }
 
@@ -1392,7 +1484,7 @@ sub PrintActualLeases
 END
     ;
 
-    open(LEASES,"/var/lib/dhcp/dhcpd.leases") or die "Can't open dhcpd.leases";
+    open(LEASES,"/var/state/dhcp/dhcpd.leases") or die "Can't open dhcpd.leases";
     while ($line = <LEASES>) {
        next if( $line =~ /^\s*#/ );
        chomp($line);
index d32d842f7054e965b926e194ddd271d71bf91f59..b75a0159f979eb7ba56b88f405d52c0e53240a1f 100644 (file)
@@ -17,7 +17,7 @@ use strict;
 #use Carp ();
 #local $SIG{__WARN__} = \&Carp::cluck;
 
-require 'CONFIG_ROOT/general-functions.pl';    # replace CONFIG_ROOT with /var/ipfire in case of manual install
+require '/var/ipfire/general-functions.pl';    # replace /var/ipfire with /var/ipfire in case of manual install
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index eab30eb8e481e355b731f6f9f018cd256d0d0f1d..0948b7751a7df41affb359e8b17c3957b07fb796 100644 (file)
@@ -22,7 +22,7 @@ use strict;
 use File::Copy;
 use Sys::Hostname;
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 09a1bcc83081f968a1e795691197bce0f58c056b..037a8a543fad7371183e0c1076317284edc131e2 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 9a0f2ac98c97b56ea27c0890d1cee9ff24c7ca15..43927f553ae4fae5cd26ab48fe624c8f152647fd 100644 (file)
@@ -23,7 +23,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 895a870d20eb73b7aaf5791eb3a479f71d2a421e..0fdbdc25b1494d161d622cba88d95ee2e8caf1ca 100644 (file)
@@ -13,7 +13,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
@@ -36,6 +36,8 @@ Projektleiter - Michael Tremer
 (<a href='mailto:m.s.tremer\@gmail.com'>m.s.tremer\@gmail.com</a>)<br />
 Projektmitglied &amp; Sponsor - Detlef Lampart
 (<a href='mailto:info\@delaco.de'>info\@delaco.de</a>)<br />
+Projektmitglied &amp; Developer - Heiner Irgendwas...
+(<a href='mailto:email\@fehlt.com'>email\@fehlt.com</a>)<br />
 Projektmitglied &amp; Supporter - Silvio Rechenbach
 (<a href='mailto:sr\@tne.de'>sr\@tne.de</a>)<br />
 Sponsor - Karsten Rechenbach
index 3e6d549cd5d9022c84007bf21a1fe13b754ea087..1de2d909ef01d58e9a8b719842c265e370fcead3 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 11fbb6a187cd60767ac941d1cca3c6ddf5759a93..f09b35f063e79d9dd72682e13f2b33687845c406 100644 (file)
@@ -25,7 +25,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 #workaround to suppress a warning when a variable is used only once
index 67b40b038a5baab9843601f92519cfa57856794f..8f4a51f487d9630f7a2fc8eaaf43d60f7c9a82ba 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 5421284aff9cf362821ac159d58e4d19e1257d0e..26275ae802da289042805971911f127bf95035fd 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 3b209ee478c263c8d3022781636eddd3f3af6496..58da565773281fbd1674e6d394b1761508cbddd8 100755 (executable)
@@ -28,43 +28,43 @@ my $graphdir = "/home/httpd/html/graphs";
 my @LOCALCHECK=();
 my $errormessage="";
 
-&Header::openpage('firewall graphs', 1, ' <META HTTP-EQUIV="Refresh" CONTENT="300"> <META HTTP-EQUIV="Cache-Control" content="no-cache"> <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> ');
+&Header::openpage($Lang::tr{'firewall graphs'}, 1, ' <META HTTP-EQUIV="Refresh" CONTENT="300"> <META HTTP-EQUIV="Cache-Control" content="no-cache"> <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> ');
 
 &Header::openbigbox('100%', 'left', '', $errormessage);
 print <<END;
 <table width="100%" align="center">
        <tr>
                <td align="left">
-                       <a href=/cgi-bin/fwhits.cgi?graph=line>show lines</a>
+                       <a href=/cgi-bin/fwhits.cgi?graph=line>$Lang::tr{'show lines'}</a>
                        &nbsp;
-                       <a href=/cgi-bin/fwhits.cgi?graph=area>show areas</a>
+                       <a href=/cgi-bin/fwhits.cgi?graph=area>$Lang::tr{'show areas'}</a>
                </td>
        </tr>
 </table>
 END
 if ($cgigraphs[1] eq "line") {
-               &Header::openbox('100%', 'center', "daily firewallhits");
+               &Header::openbox('100%', 'center', $Lang::tr{"daily firewallhits"});
                my $ftime = localtime((stat("$graphdir/firewallhits-day-line.png"))[9]);
                print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
                print "<img src='/graphs/firewallhits-day-line.png' border='0' />";
                print "<br />\n";
                &Header::closebox();
 
-               &Header::openbox('100%', 'center', "weekly firewallhits");
+               &Header::openbox('100%', 'center', $Lang::tr{"weekly firewallhits"});
                my $ftime = localtime((stat("$graphdir/firewallhits-week-line.png"))[9]);
                print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
                print "<img src='/graphs/firewallhits-week-line.png' border='0' />";
                print "<br />\n";
                &Header::closebox();
 
-               &Header::openbox('100%', 'center', "monthly firewallhits");
+               &Header::openbox('100%', 'center', $Lang::tr{"monthly firewallhits"});
                my $ftime = localtime((stat("$graphdir/firewallhits-month-line.png"))[9]);
                print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
                print "<img src='/graphs/firewallhits-month-line.png' border='0' />";
                print "<br />\n";
                &Header::closebox();
 
-               &Header::openbox('100%', 'center', "yearly firewallhits");
+               &Header::openbox('100%', 'center', $Lang::tr{"yearly firewallhits"});
                my $ftime = localtime((stat("$graphdir/firewallhits-year-line.png"))[9]);
                print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
                print "<img src='/graphs/firewallhits-year-line.png' border='0' />";
@@ -73,28 +73,28 @@ if ($cgigraphs[1] eq "line") {
 }
 else
 {
-               &Header::openbox('100%', 'center', "daily firewallhits");
+               &Header::openbox('100%', 'center', $Lang::tr{"daily firewallhits"});
                my $ftime = localtime((stat("$graphdir/firewallhits-day-area.png"))[9]);
                print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
                print "<img src='/graphs/firewallhits-day-area.png' border='0' />";
                print "<br />\n";
                &Header::closebox();
 
-               &Header::openbox('100%', 'center', "weekly firewallhits");
+               &Header::openbox('100%', 'center', $Lang::tr{"weekly firewallhits"});
                my $ftime = localtime((stat("$graphdir/firewallhits-week-area.png"))[9]);
                print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
                print "<img src='/graphs/firewallhits-week-area.png' border='0' />";
                print "<br />\n";
                &Header::closebox();
 
-               &Header::openbox('100%', 'center', "monthly firewallhits");
+               &Header::openbox('100%', 'center', $Lang::tr{"monthly firewallhits"});
                my $ftime = localtime((stat("$graphdir/firewallhits-month-area.png"))[9]);
                print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
                print "<img src='/graphs/firewallhits-month-area.png' border='0' />";
                print "<br />\n";
                &Header::closebox();
 
-               &Header::openbox('100%', 'center', "yearly firewallhits");
+               &Header::openbox('100%', 'center', $Lang::tr{"yearly firewallhits"});
                my $ftime = localtime((stat("$graphdir/firewallhits-year-area.png"))[9]);
                print "<center><b>$Lang::tr{'the statistics were last updated at'}: $ftime</b></center><br />\n";
                print "<img src='/graphs/firewallhits-year-area.png' border='0' />";
index 8f590d35cb2752d7f7d82cf3a2271c04d906c09b..a29459671f107f073a5dee7a2f88590b8e203eda 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 991a31fceb21d6daaa7d40bd489ad410fda073e3..6d7c1010e739c7413e62798d7f052eecc867c174 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 7d68028157aa2fafbbc1945aa132621a1d10d62e..531eceed2b5cb5ec72e3aaf0df2f83ed712f589e 100644 (file)
@@ -17,7 +17,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index df5f1c700320a29a33983c47e7455d25c9e4a700..dee7cfc729aaad798e596f79a51b798ff6752f00 100644 (file)
@@ -18,7 +18,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 9233628df3b4813862419f957174d9c996b9458f..8d7af10c49e006ffc01111258b1688b4929a00e8 100644 (file)
@@ -67,21 +67,17 @@ my $dialButtonDisabled = "disabled='disabled'";
 &Header::openbigbox('', 'center');
 &Header::openbox('100%', 'center', &Header::cleanhtml(`/bin/uname -n`,"y"));
 
-if ( ( $pppsettings{'VALID'} eq 'yes'&& $modemsettings{'VALID'} eq 'yes' ) || ( $netsettings{'CONFIG_TYPE'} =~ /^(2|3|6|7)$/ && $netsettings{'RED_TYPE'} =~ /^(DHCP|STATIC)$/ )) {
-       if ($connstate =~ /$Lang::tr{'connected'}/) {
-           if ($ddnssettings{'BEHINDROUTER'} eq 'FETCH_IP') {
-               if (open(IPADDR,"${General::swroot}/ddns/ipcache")) {
-                   $ipaddr = <IPADDR>;
-                   close IPADDR;
-                   chomp ($ipaddr);
-               }
-           }
-           if (open(IPADDR,"${General::swroot}/red/local-ipaddress")) {
-               my $ipaddr = <IPADDR>;
-               close IPADDR;
-               chomp ($ipaddr);
-           }
-        }
+if ( ( $pppsettings{'VALID'} eq 'yes' && $modemsettings{'VALID'} eq 'yes' ) || ( $netsettings{'CONFIG_TYPE'} =~ /^(2|3|6|7)$/ && $netsettings{'RED_TYPE'} =~ /^(DHCP|STATIC)$/ )) {
+       if (open(IPADDR,"${General::swroot}/ddns/ipcache")) {
+           $ipaddr = <IPADDR>;
+           close IPADDR;
+           chomp ($ipaddr);
+       }
+       if (open(IPADDR,"${General::swroot}/red/local-ipaddress")) {
+           my $ipaddr = <IPADDR>;
+           close IPADDR;
+           chomp ($ipaddr);
+       }
 } elsif ($modemsettings{'VALID'} eq 'no') {
        print "$Lang::tr{'modem settings have errors'}\n </b></font>\n";
 } else {
index 258fff323ff0e9be34bce70e3daec568d669a0ea..fbf652244f4091b3e5c27f2a93dbce9db221f02a 100644 (file)
@@ -18,7 +18,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 7ad2eb85ee5e76ab3422932de89b63db08ecfce1..43bc3bcdbd0f1850f5e4734fe4e8f9d47670abf6 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index b48b009a535d1e8213fc51baefb34bf5db636759..3857f7d8e8ed6f231805eef80b9925655e64dc01 100644 (file)
@@ -20,7 +20,7 @@ use Getopt::Std;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index aa76202f388e00055fa001a64825d1b8630d1546..23d80424b138ee472c14903c3a4c1b68101353c0 100644 (file)
@@ -18,7 +18,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 854bad4688a2c649a4e746520efe850ce1239380..e2eaa849912b70a9109d9ab1f46837f79028159a 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
@@ -250,7 +250,7 @@ if ($cgiparams{'ACTION'} eq $Lang::tr{'export'})
 
 &Header::showhttpheaders();
 
-&Header::openpage($Lang::tr{'firewall log'}, 1, '');
+&Header::openpage($Lang::tr{'system logs'}, 1, '');
 
 &Header::openbigbox('100%', 'left', '', $errormessage);
 
index 70208b9eda6d7bf8ac18b015fce36635ff86930d..9c0176fa50e3ef2305616e1e6353044cdc885c87 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 273a862cf04cdcec6008b5c8dbcff11f6b964d28..1efe8b71f9532dd9de2fe5f8b71b9415f43f54bb 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index bb75a69865b0e2af076df106b955ebd41df9d167..4d053746d8c364652f4cd825d48f669cfdc07ae6 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 8cad1fbf5c5802b6d9c1f412fc89df9a21b3f753..bde5bf2a7078ac5bf29e8f0a4b6ee14b41c993fb 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 775f51ffef0c4292fef33e1614539a66fd3a8cb4..5e1dcebc4f0d50af404e09ced032c0c84598bdd7 100644 (file)
@@ -16,7 +16,7 @@
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 41845e4fbda10d9c5f886991608b58392848bfbd..84662a84cf0f3850ebca24592d277c70233dbc63 100644 (file)
@@ -17,7 +17,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
@@ -50,7 +50,7 @@ $checked{'AUTOUPD'}{'off'} = '';
 $checked{'AUTOUPD'}{'on'} = '';
 $checked{'AUTOUPD'}{$pakfiresettings{'AUTOUPD'}} = "checked='checked'";
 
-&Header::openpage($Lang::tr{'pakfire configuration'}, 1, $refresh);
+&Header::openpage($Lang::tr{'pakfire configuration'}, 1);
 
 &Header::openbigbox('100%', 'left', '', $errormessage);
 
index bd3333b1e5cb5b6aca35eedad57d5ac392ed4556..91ccbf5d32e2bd18706179c1ebd00b9e7dde0ead 100644 (file)
@@ -30,7 +30,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index aca632bdcb8972335cdb4bfc38ff5cf883559b0a..93098add92c34598d71cbbfd9a99b776ee3164d9 100644 (file)
@@ -19,7 +19,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 406fe9b620f0d4b5aa955ae69a981c20648a26cc..459af0651cdecd91484f7fef063fa01bfa531456 100644 (file)
@@ -11,7 +11,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index ec4424d246fb63155e3686ac6433f9c90c6d37b7..78f714f03c916a1edd95ca538975cc47d3d7b3c3 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 75b9451b4f0e50dc90a46bfb0ef0612c60c82df0..9ea446dfa769fab09e4e8725f9e95086b5060dce 100644 (file)
@@ -13,7 +13,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index cd0ace7d3fd1243c4ae0894df45a919c2262151c..79717e27f1831064a1d08afd2f863ae3cfc549b1 100644 (file)
@@ -13,7 +13,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index ac560f84eb4cb3ae436ecb9b74f74d3cb59ff2f2..b195106f47b20b842868f95590f8aac0a794f0b1 100644 (file)
@@ -15,7 +15,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
@@ -41,7 +41,7 @@ my %servicenames =
        $Lang::tr{'secure shell server'} => 'sshd',
        $Lang::tr{'vpn'} => 'pluto',
        $Lang::tr{'web proxy'} => 'squid',
-       $Lang::tr{'openvpn'} => 'openvpn'
+       'OpenVPN' => 'openvpn'
 );
 
 my $iface = '';
index 6bc955ec7604ee475327b69019f6dfa29a947a59..e2394cbd02dcab8bd6b0e79da34b0d854203b803 100644 (file)
@@ -16,7 +16,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 2a30d03c29a442027fd8bcd4770e09adb794a80c..28f5b15708416469c672cc82015ef574fda66c70 100644 (file)
@@ -30,7 +30,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index d73df7034b1f3833b1784d7f7ecc610acb946f38..3964835cdde4666920fa5bfd7ef66b8e1fdb5800 100644 (file)
@@ -17,7 +17,7 @@ use Time::Local;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index 0ba807504e434bccdd8b065cb81e8744818bf1d3..67f20a7a4ed5173283a40a7922fa5f02be1bdf28 100644 (file)
@@ -16,7 +16,7 @@ use strict;
 #use warnings;
 #use CGI::Carp 'fatalsToBrowser';
 
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
 require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
index cc522995c6173dc2356f30178f1d9181f63ca6d6..4e5ec8eed3b42ceeb89ca6b7320cbbfa7ce5c83e 100644 (file)
 %tr, 
 
 'a ca certificate with this name already exists' => 'Ein CA-Zertifikat mit diesem Namen existiert bereits.', 
-'access allowed' => 'Zugriff erlaubt von:', 
+'access allowed' => 'Zugriff erlaubt von', 
 'access refused with this oinkcode' => 'Zugriff mit diesem Oink Code verweigert', 
 'a connection with this common name already exists' => 'Eine Verbindung mit diesem gemeinsamen Namen existiert bereits.', 
 'a connection with this name already exists' => 'Eine Verbindung mit diesem Namen existiert bereits.', 
 'action' => 'Aktion', 
-'add a host' => 'Host hinzufügen:', 
-'add a new rule' => 'Neue Regel hinzufügen:', 
+'add a host' => 'Host hinzufügen', 
+'add a new rule' => 'Neue Regel hinzufügen', 
 'add device' => 'Gerät hinzufügen', 
 'added from dhcp lease list' => 'hinzugefügt von der DHCP Zuordnungsliste', 
 'add' => 'Hinzufügen', 
 'add network' => 'Netzwerk hinzufügen', 
-'add new alias' => 'Neue Alias-Adresse hinzufügen:', 
+'add new alias' => 'Neue Alias-Adresse hinzufügen', 
 'add new lease' => 'Neue Zuordnung definieren', 
 'add service' => 'Dienst hinzufügen', 
 'add xtaccess' => 'Externen Zugang hinzugefügt', 
-'administrator user password' => 'Passwort für Benutzer &quot;admin&quot;:', 
+'administrator user password' => 'Passwort für Benutzer &quot;admin&quot;', 
 'admin user password has been changed' => 'Passwort für Benutzer admin wurde geändert.', 
 'adsl settings' => 'ADSL-Einstellungen', 
 'advanced' => 'Erweitert', 
-'again' => 'Wiederholung:', 
-'alcatelusb help' => 'Um das Speedtouch USB Modem zu verwenden, müssen Sie die Firmware in Ihre IPFire Box hochladen. Bitte laden sie das <b>Embedded Firmware</b> Paket von speedtouch.com herunter, entpacken es und laden dann die passende Datei für Ihr Modem hoch: KQD6_3.xxx für Revisionsnummern <4 oder ZZZL_3.xxx für Rev.=4 mittels des unten angegebenen Formulars.', 
+'again' => 'Wiederholung', 
+'alcatelusb help' => 'Um das Speedtouch USB Modem zu verwenden, müssen Sie die Firmware in Ihre IPFire Box hochladen. Bitte laden sie das <b>Embedded Firmware</b> Paket von speedtouch.com herunter, entpacken es und laden dann die passende Datei für Ihr Modem hoch KQD6_3.xxx für Revisionsnummern <4 oder ZZZL_3.xxx für Rev.=4 mittels des unten angegebenen Formulars.', 
 'alcatelusb upload' => 'Speedtouch USB Firmware hochladen', 
 'aliases' => 'Aliase', 
 'aliases not active' => 'Aliase-Adresse wird erst aktiviert, wenn Ihr ROTES Interface STATISCH ist', 
 'april' => 'April', 
 'archive not exist' => 'Konfigurationsarchiv existiert nicht', 
 'are you sure' => 'Sind Sie sicher?', 
-'arp table entries' => 'Einträge der ARP-Tabelle:', 
+'arp table entries' => 'Einträge der ARP-Tabelle', 
 'august' => 'August', 
-'authentication' => 'Authentifizierung:', 
+'authentication' => 'Authentifizierung', 
 'automatic' => 'Automatisch', 
-'available updates' => 'Verfügbare Updates:', 
+'available updates' => 'Verfügbare Updates', 
 'average' => 'Durchschnitt', 
 'avoid dod' => 'Benutzen Sie diese Option nicht mit Dial on Demand! Wird hautpsächlich verwendet, wenn ihr IPFire sich hinter einem Router befindet. Ihre ROTE IP muß sich innerhalb eines der drei reservierten Netzwerkbereiche befinden z.B. 10/8, 172.16/12, 192.168/16.', 
 'backup config floppy' => 'Backup-Konfiguration - Diskette', 
-'backup configuration' => 'Backup-Konfiguration:', 
+'backup configuration' => 'Backup-Konfiguration', 
 'backup' => 'Datensicherung', 
 'backupprofile' => 'Falls die Wiederverbindung scheitert, auf Profil umschalten', 
 'backup sets' => 'Datensicherungssätze', 
 'bad characters in script field' => 'Nicht erlaubte Zeichen im Skriptnamen', 
 'bad characters in the telephone number field' => 'Nicht erlaubte(s) Zeichen im Feld Telefonnummer.', 
 'bad destination range' => 'Der erste Wert des Zielportbereichs ist größer oder gleich dem zweiten Wert.', 
-'bad ignore filter' => 'Falscher &quot;Ignorieren&quot;-Filter:', 
+'bad ignore filter' => 'Falscher &quot;Ignorieren&quot;-Filter', 
 'bad return code' => 'Das Hilfsprogramm hat einen Fehlercode gemeldet', 
 'bad source range' => 'Der erste Wert des Quellportbereich ist größer oder gleich dem zweiten Wert.', 
 'beep when ppp connects or disconnects' => 'Piepen, wenn IPFire verbindet oder trennt', 
-'behind a proxy' => 'Hinter einem Proxy:', 
+'behind a proxy' => 'Hinter einem Proxy', 
 'bewan adsl pci st' => 'Bewan ADSL PCI ST', 
 'bewan adsl usb' => 'Bewan ADSL USB', 
 'blue access' => 'Zugriff auf Blau', 
@@ -98,7 +98,7 @@
 'cached memory' => 'Cache Speicher', 
 'cached' => 'zwischengespeichert', 
 'cache management' => 'Cache Verwaltung', 
-'cache size' => 'Cache-Größe (MB):', 
+'cache size' => 'Cache-Größe (MB)', 
 'ca name' => 'CA Name', 
 'cancel' => 'Abbrechen', 
 'cannot enable both nat traversal and compression' => 'NAT Traversal und Kompression können nicht gleichzeitig aktiviert sein.', 
 'clock has not been synchronized' => 'Die Uhr wurde nicht synchronisiert', 
 'clock last synchronized at' => 'Die Uhr wurde zuletzt synchronisiert um', 
 'common name' => 'Gemeinsamer Name', 
-'compression' => 'Kompression:', 
-'computer to modem rate' => 'Übertragungsrate zwischen Computer und Modem:', 
-'concentrator name' => 'Name des Konzentrators:', 
+'compression' => 'Kompression', 
+'computer to modem rate' => 'Übertragungsrate zwischen Computer und Modem', 
+'concentrator name' => 'Name des Konzentrators', 
 'confirmation' => 'Bestätigung', 
 'connected' => 'Verbunden', 
 'connecting' => 'Baue Verbindung auf...', 
 'connection debugging' => 'Verbindungs-Debugging', 
 'connections are associated with this ca.  deleting the ca will delete these connections as well.' => 'Es sind noch Verbindungen mit dieser CA verknüpft.  Das Löschen dieser CA wird diese Verbindungen ebenfalls löschen.', 
-'connection status and controlc' => 'Verbindungsstatus und -kontrolle:', 
+'connection status and controlc' => 'Verbindungsstatus und -kontrolle', 
 'connections' => 'Verbindungen', 
 'connection tracking' => 'IPTables-Verbindungsverfolgung', 
 'connection type is invalid' => 'Verbindungstyp ist ungültig', 
 'connection' => 'Verbindung', 
 'connect on ipfire restart' => 'Verbinden bei IPFire-Neustart', 
 'connect the modem' => 'Das Modem anschließen', 
-'connect timeout' => 'Anwahl-Wartezeit:', 
+'connect timeout' => 'Anwahl-Wartezeit', 
 'could not be opened' => 'konnte nicht geöffnet werden', 
 'could not connect to' => 'Konnte keine Verbindung herstellen mit', 
 'could not connect to www ipfire org' => 'Keine Verbindung zu www.ipfire.org möglich', 
 'country' => 'Land', 
 'cpu usage per' => 'CPU-Nutzung pro', 
 'create' => 'Erzeuge', 
-'credits' => 'Dank an ..', 
+'credits' => 'Credits', 
 'cron server' => 'Cron-Server', 
 'current' => 'Aktuell', 
-'current aliases' => 'Aktuelle Alias-Adresse:', 
+'current aliases' => 'Aktuelle Alias-Adresse', 
 'current dhcp leases on blue' => 'Aktuelle DHCP Zuordnungen auf Blau', 
 'current dynamic leases' => 'Aktuelle dynamische Zuordnungen', 
 'current fixed leases' => 'Aktuelle feste Zuordnungen', 
-'current hosts' => 'Aktuelle Hosts:', 
-'current profile' => 'Aktuelles Profil:', 
-'current rules' => 'Aktuelle Regeln:', 
+'current hosts' => 'Aktuelle Hosts', 
+'current profile' => 'Aktuelles Profil', 
+'current rules' => 'Aktuelle Regeln', 
 'custom networks' => 'Benutzerdefinierte Netzwerke', 
 'custom services' => 'Benutzerdefinierte Dienste', 
+'daily firewallhits' => 'Tägliche Firewalltreffer', 
 'date' => 'Datum', 
 'date not in logs' => 'Für den gesuchten Tag existiert kein (oder nur ein unvollständiges) Log', 
 'dat without key' => 'Ein verschlüsseltes Archiv kann ohne Schlüssel nicht wiederhergestellt werden.', 
 'ddns hostname added' => 'Hostname für dynamischen DNS hinzugefügt', 
 'ddns hostname modified' => 'Hostname für dynamischen DNS geändert', 
 'ddns hostname removed' => 'Hostname für dynamischen DNS gelöscht', 
-'ddns minimize updates' => 'Updates minimieren: Vergleicht vor einem Update die DNS-IP-Adresse für Hostname "[host.]domain" gegen die ROTE IP-Addresse.', 
+'ddns minimize updates' => 'Updates minimieren Vergleicht vor einem Update die DNS-IP-Adresse für Hostname "[host.]domain" gegen die ROTE IP-Addresse.', 
 'ddns noip prefix' => 'Um no-ip im Gruppenmodus zu benutzen, dem Hostnamen <b>%</b> hinzufügen', 
 'december' => 'Dezember', 
-'default lease time' => 'Haltezeit-Voreinstellung in min:', 
+'default lease time' => 'Haltezeit-Voreinstellung in min', 
 'default networks' => 'Standard Netzwerke', 
 'default renewal time' => 'Standard-Aktualisierungszeit', 
 'default services' => 'Standard Dienste', 
 'destination port overlaps' => 'Der Zielportbereich überlappt einen bereits bestehenden Portbereich.', 
 'destination port' => 'Ziel-Port', 
 'destination' => 'Ziel', 
-'dest ip and port' => 'Ziel-IP:Port', 
+'dest ip and port' => 'Ziel-IPPort', 
 'detail level' => 'Detaillierungsgrad', 
 'device' => 'Gerät', 
 'devices on blue' => 'Geräte auf Blau', 
 'dhcp server disabled on blue interface' => 'DHCP-Server auf BLAUER Schnittstelle deaktiviert', 
 'dhcp server enabled' => 'DHCP-Server aktiviert. Starte neu.', 
 'dhcp server enabled on blue interface' => 'DHCP-Server auf BLAUER Schnittstelle aktviert', 
-'dialing mode' => 'Wählmodus:', 
+'dialing mode' => 'Wählmodus', 
 'dial profile' => 'Verbinden mit Profil',
 'dialup settings' => 'Einwahl-Einstellungen', 
 'dial user password has been changed' => 'Passwort für Benutzer -dial- wurde geändert.', 
-'dial user password' => 'Passwort für Benutzer &quot;dial&quot;:', 
+'dial user password' => 'Passwort für Benutzer &quot;dial&quot;', 
 'dial' => 'Verbinden', 
 'disk access per' => 'Plattenzugriff je', 
-'disk usage' => 'Festplattenbelegung:', 
+'disk usage' => 'Festplattenbelegung', 
 'display' => 'Anzeige', 
 'display hostname in window title' => 'Hostname im Fenstertitel anzeigen', 
 'dmz' => 'DMZ', 
-'dmz pinhole configuration' => 'Einstellungen des DMZ-Schlupfloches', 
+'dmz pinhole configuration' => 'DMZ-Schlupflöcher', 
 'dmz pinhole rule added' => 'Regel für DMZ-Schlupfloch hinzugefügt; Starte DMZ-Schlupfloch neu', 
 'dmz pinhole rule removed' => 'Regel für DMZ-Schlupfloch entfernt; Starte DMZ-Schlupfloch neu', 
 'dmzpinholes for same net not necessary' => 'DMZ-Schlupflöcher werden im gleichen Netz nicht benötigt. Wählen Sie ein anderes Quell- oder Ziel-Netz.', 
 'dns check failed' => 'Fehler bei DNS-Überprüfung', 
 'dns proxy server' => 'DNS-Proxyserver', 
 'dod' => 'Dial-on-Demand-Modus', 
-'dod for dns' => 'Dial-on-Demand für DNS:', 
+'dod for dns' => 'Dial-on-Demand für DNS', 
 'dod not compatible with ddns' => 'Dial on Demand ist nicht kompatibel mit dynamischen DNS Diensten', 
 'dod waiting' => 'Dial On Demand wartet', 
 'domain' => 'Domain', 
 'domain name' => 'Domainname', 
-'domain name suffix' => 'Domain-Name-Suffix:', 
+'domain name suffix' => 'Domain-Name-Suffix', 
 'domain not set' => 'Domain nicht eingegeben.', 
 'do not log this port list' => 'Verwerfe diese Port-Liste kurz bevor sie protokolliert werden (reduziert Protokollgröße)', 
 'downlink speed' => 'Downlink-Geschwindigkeit (kBit/sek)', 
 'duplicate name' => 'Dieser Name wird bereits benutzt. Bitte wählen Sie einen anderen.', 
 'dynamic dns client' => 'Dynamischer DNS-Client', 
 'dynamic dns' => 'Dynamischer DNS', 
-'dyn dns source choice' => 'Dynamic DNS Anbieter werden eine IP-Adresse für diesen IPFire erhalten von:', 
+'dyn dns source choice' => 'Dynamic DNS Anbieter werden eine IP-Adresse für diesen IPFire erhalten von', 
 'eciadsl help' => 'Um ein ECI PCI-Modem nutzen zu können, müssen Sie zuerst die Treiber-Software zur IPFire-Box hochladen. Laden Sie zuerst den Tarball von ECIADSL herunter und laden Sie dann die Datei <B>synch.bin</B> über das untenstehende Formblatt zu IPFire hoch.', 
 'eciadsl upload' => 'Hochladen der ECI ADSL Datei synch.bin', 
 'edit advanced settings when done' => 'Erweiterte Einstellungen bearbeiten, wenn fertig.', 
 'edit an existing alias' => 'Einen bestehenden Alias bearbeiten', 
 'edit an existing host' => 'Einen bestehenden Host hinzufügen', 
 'edit an existing lease' => 'Eine existierende Zuordnung bearbeiten', 
-'edit a rule' => 'Existierende Regel bearbeiten:', 
+'edit a rule' => 'Existierende Regel bearbeiten', 
 'edit' => 'Bearbeiten', 
 'edit device' => 'Gerät bearbeiten', 
 'edit hosts' => 'Hosts bearbeiten', 
 'edit network' => 'Netzwerk bearbeiten', 
 'edit service' => 'Dienst bearbeiten', 
-'eg' => 'z.B.:', 
+'eg' => 'z.B.', 
 'e-mail address too long' => 'E-mail Adresse ist zu lang; sie sollte nicht länger als 40 Zeichen sein.', 
 'empty' => 'Leer', 
-'enabled' => 'Aktiviert:', 
+'enabled' => 'Aktiviert', 
 'enabled on' => 'Aktiviert auf', 
 'enabledtitle' => 'Aktiviert', 
 'enable ignore filter' => '&quot;Ignorieren&quot;-Filter ein', 
 'enable javascript' => 'Javascript aktivieren', 
-'enable wildcards' => 'Wildcards erlauben:', 
+'enable wildcards' => 'Wildcards erlauben', 
 'encapsulation' => 'Encapsulation', 
 'encrypted' => 'Verschlüsselt', 
-'end address' => 'Endadresse:', 
+'end address' => 'Endadresse', 
 'err bk 1' => 'Fehler beim Erzeugen des Archivs', 
 'err bk 2 key' => 'Fehler beim Erzeugen der Schlüsseldatei', 
 'err bk 3 tar' => 'Fehler beim Anhängen der Datei ans Archiv', 
 'err bk 4 gz' => 'Fehler beim Komprimieren des Archivs', 
 'err bk 5 encrypt' => 'Fehler beim Verschlüsseln des Archivs', 
-'error messages' => 'Fehlermeldungen:', 
+'error messages' => 'Fehlermeldungen', 
 'err rs 1' => 'Fehler beim Wiederherstellen des Archivs', 
 'err rs 6 decrypt' => 'Fehler beim Entschlüsseln des Archivs', 
 'err rs 7 untartst' => 'Ungültiges entschlüsseltes Archiv', 
 'err rs 8 untar' => 'Fehler beim un-tar-en des Archivs', 
-'esp encryption' => 'ESP Verschlüsselung:', 
-'esp grouptype' => 'ESP Gruppentyp:', 
-'esp integrity' => 'ESP Integrität:', 
-'esp keylife' => 'Lebensdauer des ESP Schlüssels:', 
+'esp encryption' => 'ESP Verschlüsselung', 
+'esp grouptype' => 'ESP Gruppentyp', 
+'esp integrity' => 'ESP Integrität', 
+'esp keylife' => 'Lebensdauer des ESP Schlüssels', 
 'esp keylife should be between 1 and 24 hours' => 'ESP Schlüssel-Lebensdauer sollte zwischen 1 und 24 Stunden betragen.', 
 'every' => 'Jeden', 
 'excluding buffers and cache' => '-/+ Puffer/Zwischenspeicher', 
 'expected' => 'Erwartet', 
 'expires' => 'Ablaufdatum', 
 'export' => 'Export', 
-'external access configuration' => 'Einstellungen für externen Zugang', 
+'external access configuration' => 'Externer Zugang', 
 'external access' => 'Externer Zugang', 
 'external access rule added' => 'Regel für externen Zugang hinzugefügt; Starte Zugangskontroller neu', 
 'external access rule removed' => ' Regel für externen Zugang entfernt; Starte Zugangskontroller neu', 
 'filename' => 'Dateiname', 
 'filesystem full' => 'Dateisystem voll', 
 'firewall' => 'Firewall', 
+'firewall graphs' => 'Firewall-Diagramme', 
 'firewall hits' => 'Gesamtanzahl der Firewall-Treffer für', 
 'firewall log' => 'Firewall-Protokoll', 
 'firewall logs' => 'Firewall-Logdateien', 
 'gateway' => 'Gateway', 
 'gateway ip' => 'Gateway-IP', 
 'g.dtm' => 'G.dmt', 
-'generate a certificate' => 'Erzeuge ein Zertifikat:', 
+'generate a certificate' => 'Erzeuge ein Zertifikat', 
 'generate root/host certificates' => 'Erzeuge Root/Host Zertifikate', 
 'generating the root and host certificates may take a long time. it can take up to several minutes on older hardware. please be patient' => 'Die Erzeugung der Root und Host Zertifikate kann lange Zeit dauern.  Auf älterer Hardware kann es mehrere Minuten lang dauern. Bitte haben Sie etwas Geduld.', 
 'g.lite' => 'G.lite', 
 'green interface' => 'Grünes Interface', 
 'gui settings' => 'Benutzeroberfläche', 
 'gz with key' => 'Nur ein verschlüsseltes Archiv kann auf dieser Maschine wiederhergestellt werden.', 
-'hangup string' => 'Auflegen:', 
+'hangup string' => 'Auflegen', 
 'hangup' => 'Trennen', 
 'high' => 'Hoch', 
 'high memory usage' => 'Speicher wird knapp', 
 'host ip' => 'Host IP-Adresse', 
 'hostname and domain already in use' => 'Hostname und Domain sind werden bereits benutzt.', 
 'hostname cant be empty' => 'Hostname darf nicht leer bleiben.', 
-'hostname' => 'Hostname', 
+'hostname' => 'Host-Konfiguration', 
 'hostname not set' => 'Hostname nicht eingegeben.', 
 'hosts config added' => 'Hosts-Konfiguration hinzugefügt', 
 'hosts config changed' => 'Hosts-Konfiguration geändert', 
 'idle cpu' => 'CPU Leerlauf', 
 'idle cpu usage' => 'Leerlauf CPU Nutzung', 
 'idle' => 'Leerlauf', 
-'idle timeout' => 'Leerlauf-Wartezeit in min (0 zum Deaktivieren):', 
+'idle timeout' => 'Leerlauf-Wartezeit in min (0 zum Deaktivieren)', 
 'idle timeout not set' => 'Leerlauf-Wartezeit nicht angegeben.', 
 'ids logs' => 'IDS-Logdateien', 
-'ids log viewer' => 'Ansicht IDS-Log', 
+'ids log viewer' => 'IDS-Logdateien', 
 'ids rules license2' => 'Bestätigen Sie die Lizenz, empfangen Sie Ihr Passwort per email und gehen Sie auf die Website. Gehen Sie zu', 
 'ids rules license3' => 'klicken Sie den \'Get Code\' Knopf am Fuß und kopieren den 40-Zeichen Oink Code in das untere Feld.', 
 'ids rules license' => 'Um  Sourcefire VRT Zertifizierte Regeln zu nutzen, müssen Sie ich registrieren auf', 
 'ids rules update' => 'Snort Regeln Update', 
 'iface' => 'Iface', 
 'ignore filter' => '&quot;Ignorieren&quot;-Filter', 
-'ike encryption' => 'IKE Verschlüsselung:', 
-'ike grouptype' => 'IKE Gruppentyp:', 
-'ike integrity' => 'IKE Integrität:', 
-'ike lifetime' => 'IKE Lebensdauer:', 
+'ike encryption' => 'IKE Verschlüsselung', 
+'ike grouptype' => 'IKE Gruppentyp', 
+'ike integrity' => 'IKE Integrität', 
+'ike lifetime' => 'IKE Lebensdauer', 
 'ike lifetime should be between 1 and 8 hours' => 'IKE Lebensdauer sollte zwischen 1 und 8 Stunden betragen.', 
 'import' => 'Import', 
 'incoming traffic in bytes per second' => 'Eingehender Verkehr in Bytes pro Sekunde', 
 'in' => 'Ein', 
 'info' => 'Info', 
-'init string' => 'Initialisierung:', 
+'init string' => 'Initialisierung', 
 'insert floppy' => 'Legen Sie eine formatierte Diskette in das Floppy-Laufwerk in IPFire und klicken auf <i>Datensicherung auf Diskette</i>, um die Systemeinstellungen zu sichern.  Überprüfen Sie das Ergebnis sorgfältig, um sicher zu sein, dass die Datensicherung vollständig und erfolgreich abgeschlossen wurde.<p>', 
 'installed' => 'Installiert', 
-'installed updates' => 'Installierte Updates:', 
-'install new update' => 'Installiere neues Update:', 
+'installed updates' => 'Installierte Updates', 
+'install new update' => 'Installiere neues Update', 
 'instant update' => 'Sofortiges Update', 
 'interface' => 'Schnittstelle', 
-'interfaces' => 'Schnittstellen:', 
+'interfaces' => 'Schnittstellen', 
 'internet' => 'INTERNET', 
 'intrusion detection' => 'Einbruchdetektierung', 
-'intrusion detection system2' => 'Intrusion Detection System:', 
-'intrusion detection system' => 'Intrusion Detection System', 
+'intrusion detection system2' => 'Intrusion Detection System', 
+'intrusion detection system' => 'Snort', 
 'intrusion detection system log viewer' => 'Betrachter der IDS-Logfiles', 
 'invalid broadcast ip' => 'Ungültige Broadcast-IP', 
 'invalid cache size' => 'Ungültige Cache-Größe.', 
 'invalid md5sum' => 'Ungültige MD5-Summe.', 
 'invalid minimum object size' => 'Ungültige min. Objektgröße.', 
 'invalid netmask' => 'Ungültige Netzwerkmaske', 
-'invalid port list' => 'Portlisten-Syntax lautet: port[,port]... wobei port in /etc/services vorkommt oder Nummer', 
+'invalid port list' => 'Portlisten-Syntax lautet port[,port]... wobei port in /etc/services vorkommt oder Nummer', 
 'invalid port' => 'Ungültiger Port. Bitte gültige Portnummer eingeben.', 
 'invalid primary dns' => 'Ungültiger primärer DNS.', 
 'invalid primary ntp' => 'Ungültiger primärer NTP.', 
 'ipfire has now rebooted' => 'IPFire wird jetzt neu gestartet.', 
 'ipfire has now shutdown' => 'IPFire wird jetzt heruntergefahren.', 
 'ipfires hostname' => 'IPFire\'s Hostname', 
-'ipfire side' => 'IPFire Seite:', 
+'ipfire side' => 'IPFire Seite', 
 'ipfire side is invalid' => 'IPFire Seite ist ungültig.', 
 'ipinfo' => 'IP-Info', 
 'ip info' => 'IP-Information', 
 'isdn1' => 'Einfaches ISDN', 
 'isdn2' => 'ISDN-Kanalbündelung', 
 'isdn' => 'ISDN', 
-'isdn settings' => 'Zusätzliche ISDN-Einstellungen:', 
+'isdn settings' => 'Zusätzliche ISDN-Einstellungen', 
 'january' => 'Januar', 
 'javascript menu error1' => 'Wenn die Drop-down-Menus nicht funktionieren, deaktivieren Sie Javascript auf der', 
 'javascript menu error2' => 'Seite.', 
 'june' => 'Juni', 
 'kernel' => 'Kernel', 
 'kernel logging server' => 'Kernel-Protokollierungs-Server', 
-'kernel version' => 'Kernel-Version:', 
-'languagepurpose' => 'Wählen Sie eine Sprache, in der IPFire angezeigt werden soll:', 
+'kernel version' => 'Kernel-Version', 
+'languagepurpose' => 'Wählen Sie eine Sprache, in der IPFire angezeigt werden soll', 
 'lan' => 'LAN', 
 'lease expires' => 'Zuordnung verfällt', 
 'legend' => 'Legende', 
 'line' => 'Leitung', 
-'loaded modules' => 'Geladene Module:', 
+'loaded modules' => 'Geladene Module', 
 'local ntp server specified but not enabled' => 'Lokaler NTP Server angegeben aber nicht aktiviert', 
 'local subnet is invalid' => 'Lokales Subnet ist ungültig.', 
-'local subnet' => 'Lokales Subnetz:', 
+'local subnet' => 'Lokales Subnetz', 
 'local vpn hostname/ip' => 'Lokaler VPN Hostname/IP', 
 'log enabled' => 'Log aktiviert', 
 'logging server' => 'Protokollierungs-Server', 
 'loginlogout' => 'Login/Logout', 
 'log lines per page' => 'Zeilen pro Seite', 
-'log' => 'Protokoll:', 
+'log' => 'Protokoll', 
 'log server address' => 'Syslog Server', 
 'log settings' => 'Logdatei-Einstellungen', 
 'log summaries' => 'Log Übersicht', 
-'log summary' => 'Log Zusammenfassung', 
+'log summary' => 'Log-Zusammenfassung', 
 'log viewer' => 'Protokollansicht', 
 'log viewing options' => 'Log Ansichts-Optionen', 
 'lookup failed' => 'Reverse Lookup gescheitert', 
 'low' => 'Niedrig', 
-'ls_dhcpd' => 'DHCP-Server:', 
-'ls_disk space' => 'Plattenplatz:', 
-'ls_free/swan' => 'VPN:', 
-'ls_httpd' => 'HTTP-Server:', 
-'ls_init' => 'Init:', 
-'ls_kernel' => 'Kernel und Firewall:', 
-'ls_modprobe' => 'Modul Ladeprogramm:', 
-'ls_pam_unix' => 'Lokale Benutzeranmeldungen:', 
-'ls_sshd' => 'Fern-Benutzeranmeldungen:', 
-'ls_syslogd' => 'Syslogd:', 
+'ls_dhcpd' => 'DHCP-Server', 
+'ls_disk space' => 'Plattenplatz', 
+'ls_free/swan' => 'VPN', 
+'ls_httpd' => 'HTTP-Server', 
+'ls_init' => 'Init', 
+'ls_kernel' => 'Kernel und Firewall', 
+'ls_modprobe' => 'Modul Ladeprogramm', 
+'ls_pam_unix' => 'Lokale Benutzeranmeldungen', 
+'ls_sshd' => 'Fern-Benutzeranmeldungen', 
+'ls_syslogd' => 'Syslogd', 
 'mac address in use' => 'MAC-Adresse bereits vergeben', 
 'mac address' => 'MAC-Adresse', 
 'main page' => 'Startseite', 
-'manual control and status' => 'Manuelle Einstellung und Status:', 
+'manual control and status' => 'Manuelle Einstellung und Status', 
 'manually' => 'Manuell', 
 'manual' => 'Manuell', 
 'march' => 'März', 
 'marked' => 'Markiert', 
 'maximal' => 'Maximal', 
-'maximum retries' => 'Maximale Wiederholversuche:', 
-'max incoming size' => 'Max. eingehende Größe (kB):', 
-'max lease time' => 'Max. Haltezeit in min:', 
-'max outgoing size' => 'Max. abgehende Größe (kB):', 
+'maximum retries' => 'Maximale Wiederholversuche', 
+'max incoming size' => 'Max. eingehende Größe (kB)', 
+'max lease time' => 'Max. Haltezeit in min', 
+'max outgoing size' => 'Max. abgehende Größe (kB)', 
 'max renewal time' => 'Maximale Aktualisierungszeit', 
 'max retries not set' => 'Maximale Wiederholversuche nicht angegeben.', 
-'max size' => 'Max. Objektgröße (kB):', 
+'max size' => 'Max. Objektgröße (kB)', 
 'may' => 'Mai', 
 'medium' => 'Mittel', 
-'memory' => 'Speicher:', 
+'memory' => 'Speicher', 
 'memory usage per' => 'Speichernutzung pro', 
-'method' => 'Methode:', 
-'min size' => 'Min. Objektgröße (kB):', 
+'method' => 'Methode', 
+'min size' => 'Min. Objektgröße (kB)', 
 'minutes' => 'Minuten', 
 'missing dat' => 'Verschlüsseltes Archiv wurde nicht gefunden', 
 'missing gz' => 'Nichtverschlüsseltes Archiv wurde nicht gefunden', 
 'modem on com4' => 'Modem an COM4', 
 'modem on com5' => 'Modem an COM5', 
 'modem settings have errors' => 'Modemeinstellungen fehlerhaft', 
-'modem speaker on' => 'Modemlautsprecher an:', 
+'modem speaker on' => 'Modemlautsprecher an', 
 'modulation' => 'Modulation', 
 'monday' => 'Montag', 
 'month' => 'Monat', 
+'monthly firewallhits' => 'Monatliche Firewalltreffer', 
 'months' => 'Monate', 
 'mounted on' => 'Mounted auf', 
 'name is invalid' => 'Name ist ungültig', 
 'name must only contain characters' => 'Name darf nur Buchstaben enthalten.', 
 'name' => 'Name', 
 'name too long' => 'Der volle Benutzername oder der System Hostname ist zu lang', 
-'nat-traversal' => 'Nat Traversal:', 
+'nat-traversal' => 'Nat Traversal', 
 'netmask' => 'Netzwerkmaske', 
 'net' => 'Netz', 
 'net to net vpn' => 'Netz-zu-Netz Virtual Private Network', 
 'network' => 'Netzwerk', 
 'network removed' => 'Benutzerdefiniertes Netzwerk entfernt', 
 'networks settings' => 'Firewall - Netzwerkeinstellungen', 
-'network status information' => 'Netzwerk-Statusinformationen', 
-'network time' => 'Benutze NTP-Server:', 
+'network status information' => 'Netzwerk-Status', 
+'network time' => 'Benutze NTP-Server', 
 'network time from' => 'Uhrzeit von einem Netzwerk Zeitserver ermitteln', 
-'network traffic graphs' => 'Diagramme zur Netzwerkauslastung', 
+'network traffic graphs' => 'Netzwerk-Diagramme', 
 'network updated' => 'Benutzerdefiniertes Netzwerk aktualisiert', 
 'newer' => 'Neuer', 
 'new optionsfw later' => 'Ihre Modifikation(en) wird (werden) beim nächsten Neustart aktiv werden', 
 'ntp server' => 'NTP-Server', 
 'ntp syncro disabled' => 'NTP-Synchronisierung deaktiviert', 
 'ntp syncro enabled' => 'NTP-Synchronisierung aktiviert', 
-'number' => 'Nummer:', 
+'number' => 'Nummer', 
 'october' => 'Oktober', 
 'older' => 'Älter', 
 'online help en' => 'Online-Hilfe (auf Englisch)', 
 'only red' => 'Nur ROT', 
 'openssl produced an error' => 'OpenSSL hat einen Fehler verursacht', 
 'open to all' => 'Überschreibe externen Zugang zu ALL', 
-'options fw' => 'Firewall Optionen', 
+'options fw' => 'Firewall-Optionen', 
 'optionsfw portlist hint' => 'Die Liste der Ports muss durch ein Komma getrennt werden (z.B. 137,138). Sie können maximal bis zu 15 Ports pro Protokoll angeben.', 
 'optionsfw warning' => 'Verändern dieser Optionen bedingt einen Neustart der Firewall', 
 'options' => 'Optionen', 
 'pap or chap' => 'PAP oder CHAP', 
 'password contains illegal characters' => 'Passwort enthält ungültige(s) Zeichen.', 
 'password not set' => 'Passwort nicht angegeben.', 
-'password' => 'Passwort:', 
+'password' => 'Passwort', 
 'passwords do not match' => 'Die Passwörter stimmen nicht überein.', 
 'passwords must be at least 6 characters in length' => 'Passwörter müssen mind. 6 Zeichen lang sein', 
 'password too short' => 'Passwort ist zu kurz.', 
 'persistent' => 'Dauerhaft', 
 'pfs yes no' => 'Perfect Forward Secrecy (PFS)', 
 'phase1 group' => 'Phase1 Gruppe', 
-'phonebook entry' => 'Telefonbuch-Eintrag:', 
+'phonebook entry' => 'Telefonbuch-Eintrag', 
 'ping disabled' => 'Ping Antwort deaktivieren', 
 'pkcs12 file password' => 'PKCS12 Datei-Passwort', 
-'port forwarding configuration' => 'Konfiguration der Port-Weiterleitung', 
+'port forwarding configuration' => 'Port-Weiterleitung', 
 'port' => 'Port', 
 'ports' => 'Ports', 
 'pots' => 'Analoges Telefon', 
 'pppoe' => 'PPPoE', 
-'pppoe settings' => 'Zusätzliche PPPoE-Einstellungen:', 
-'ppp setup' => 'PPP-Einstellungen', 
-'pptp settings' => 'Zusätzliche PPTP-Einstellungen:', 
+'pppoe settings' => 'Zusätzliche PPPoE-Einstellungen', 
+'ppp setup' => 'PPP-Konfiguration', 
+'pptp settings' => 'Zusätzliche PPTP-Einstellungen', 
 'present' => 'Vorhanden', 
 'pre-shared key is too short' => 'Pre-shared Schlüsel ist zu kurz', 
-'primary dns' => 'Primärer DNS:', 
+'primary dns' => 'Primärer DNS', 
 'primary ntp server' => 'Primärer NTP-Server', 
 'primary wins server address' => 'Primäre WINS-Server Adresse', 
 'priority' => 'Priorität', 
-'profile deleted' => 'Profil gelöscht: ', 
+'profile deleted' => 'Profil gelöscht ', 
 'profile has errors' => 'Profil fehlerhaft', 
-'profile made current' => 'Profil ausgewählt: ', 
+'profile made current' => 'Profil ausgewählt ', 
 'profile name not given' => 'Profilname nicht angegeben.', 
-'profile name' => 'Profilname:', 
+'profile name' => 'Profilname', 
 'profile' => 'Profil', 
-'profile saved' => 'Profil gespeichert: ', 
-'profiles' => 'Profile:', 
+'profile saved' => 'Profil gespeichert ', 
+'profiles' => 'Profile', 
 'protocol' => 'Protokoll', 
 'proto' => 'Proto', 
-'proxy access graphs' => 'Diagramme zur Proxyauslastung', 
+'proxy access graphs' => 'Proxy-Diagramme', 
 'proxy logs' => 'Proxy-Logdateien', 
-'proxy log viewer' => 'Ansicht Proxy-Log', 
+'proxy log viewer' => 'Proxy-Logdateien', 
 'proxy port' => 'Proxy-Port', 
 'proxy' => 'Proxy', 
 'psk' => 'PSK', 
-'pulse dial' => 'Pulswahl:', 
+'pulse dial' => 'Pulswahl', 
 'pulse' => 'Puls', 
 'quick control' => 'Quick Control',
 'ram' => 'RAM-Speicher', 
 'registered user rules' => 'Sourcefire VRT Regeln für registrierte Benutzer', 
 'released' => 'Freigegeben', 
 'remark' => 'Anmerkung', 
-'remark title' => 'Anmerkung:', 
-'remote access' => 'Fernwartung', 
+'remark title' => 'Anmerkung', 
+'remote access' => 'SSH-Zugriff', 
 'remote host/ip' => 'Remote Host/IP', 
 'remote logging' => 'Remote logging', 
 'remote subnet is invalid' => 'Remote Subnetz ist ungültig.', 
-'remote subnet' => 'Remote Subnetz:', 
+'remote subnet' => 'Remote Subnetz', 
 'remove ca certificate' => 'CA-Zertifikat entfernen', 
 'remove' => 'Löschen', 
-'reserved dst port' => 'Dieser Zielport ist für die ausschließliche Benutzung durch IPFire reserviert:', 
-'reserved src port' => 'Dieser Quellport ist für die ausschließliche Benutzung durch IPFire reserviert:', 
+'reserved dst port' => 'Dieser Zielport ist für die ausschließliche Benutzung durch IPFire reserviert', 
+'reserved src port' => 'Dieser Quellport ist für die ausschließliche Benutzung durch IPFire reserviert', 
 'resetting the vpn configuration will remove the root ca, the host certificate and all certificate based connections' => 'Das Zurücksetzen der VPN-Konfiguration wird die Root-CA, die Host-Zertifikate und alle weiteren Zertifikate und alle zertifikatsbasierten Verbindungen entfernen', 
 'reset' => 'Zurücksetzen', 
 'restart' => 'Neustart', 
 'reverse sort' => 'In umgekehrter chronologischer Reihenfolge sortieren', 
 'root certificate' => 'Root-Zertifikat', 
 'root path' => 'Root-Pfad', 
-'router ip' => 'IP-Adresse des Routers:', 
-'routing table entries' => 'Einträge der Routing-Tabelle:', 
-'rsvd dst port overlap' => 'Dieser Zielportbereich überlappt mit einem Port, der für die ausschließliche Benutzung durch IPFire reserviert ist:', 
-'rsvd src port overlap' => 'Dieser Quellportbereich überlappt mit einem Port, der für die ausschließliche Benutzung durch IPFire reserviert ist:', 
+'router ip' => 'IP-Adresse des Routers', 
+'routing table entries' => 'Einträge der Routing-Tabelle', 
+'rsvd dst port overlap' => 'Dieser Zielportbereich überlappt mit einem Port, der für die ausschließliche Benutzung durch IPFire reserviert ist', 
+'rsvd src port overlap' => 'Dieser Quellportbereich überlappt mit einem Port, der für die ausschließliche Benutzung durch IPFire reserviert ist', 
 'rules already up to date' => 'Regeln sind schon aktuell', 
 'running' => 'LÄUFT', 
 'saturday' => 'Samstag', 
 'save error' => 'Konfigurationsarchiv-Datei konnte nicht gespeichert werden', 
 'save' => 'Speichern', 
-'script name' => 'Skriptname:', 
-'secondary dns' => 'Sekundärer DNS:', 
+'script name' => 'Skriptname', 
+'secondary dns' => 'Sekundärer DNS', 
 'secondary ntp server' => 'Sekundärer NTP-Server', 
 'secondary wins server address' => 'Sekundäre WINS-Server Adresse', 
 'seconds' => 'sek.', 
 'select' => 'Auswählen', 
 'select dest net' => 'Auswahl Ziel-Netz', 
 'select source net' => 'Auswahl Quell-Netz', 
-'selecttraffic' => 'Wähle den Nutzungs Zeitraum:',
-'send cr' => 'ISP verlangt Zeilenrücklaufzeichen:', 
+'selecttraffic' => 'Wähle den Nutzungs Zeitraum',
+'send cr' => 'ISP verlangt Zeilenrücklaufzeichen', 
 'september' => 'September', 
 'serial' => 'serielle', 
 'service added' => 'Benutzerdefinierter Netzwerkdienst wurde hinzugefügt', 
 'service' => 'Dienst', 
 'servicename' => 'Dienstname', 
-'service name' => 'Name des Dienstes:', 
+'service name' => 'Name des Dienstes', 
 'service removed' => 'Benutzerdefinierter Netzwerkdienst wurde entfernt', 
-'services' => 'Dienste:', 
+'services' => 'Dienste', 
 'services settings' => 'Firewall - Diensteeinstellungen', 
 'service updated' => 'Benutzerdefinierter Netzwerkdienst wurde aktualisiert', 
 'set time now help' => 'Um ein Synchronisationsereignis zu jeder Zeit in die Warteschlange zu stellen, drücken Sie die <i>Stelle jetzt die Uhrzeit ein</i> Schaltfläche. Bitte beachten Sie, daß Sie 5 Minuten, oder länger, warten müssen, bevor ein Sync-Ergeinis eintritt.', 
 'shaping list options' => 'Datenflußkontrolldienste', 
 'shared memory' => 'Gemeins. Speicher', 
 'shared' => 'shared', 
+'show areas' => 'Flächengraphen', 
 'show ca certificate' => 'CA Zertifikat anzeigen', 
 'show certificate' => 'Zertifikat anzeigen', 
 'show host certificate' => 'Host-Zertifikat anzeigen', 
+'show lines' => 'Liniengraphen', 
 'show root certificate' => 'Root-Zertifikat anzeigen', 
-'shutdown2' => 'Herunterfahren:', 
+'shutdown2' => 'Herunterfahren', 
 'shutdown control' => 'Herunterfahren', 
 'shutdown' => 'Herunterfahren', 
 'shutting down' => 'Fahre herunter', 
 'sort ascending' => 'Sortiere aufsteigend', 
 'sort descending' => 'Sortiere absteigend', 
 'sound' => 'Klang', 
-'source ip and port' => 'Quell-IP:Port', 
+'source ip and port' => 'Quell-IPPort', 
 'source ip bad' => 'Ungültige Quell-IP-Adresse.', 
-'source ip in use' => 'Benutzte Quell-IP:', 
+'source ip in use' => 'Benutzte Quell-IP', 
 'source ip or net' => 'Quellen-IP oder Netz', 
 'source ip' => 'Quell-IP-Adresse', 
 'source net' => 'Quell-Netz', 
-'source network' => 'Quell-IP, oder Netzwerk (leer für "ALL"):', 
-'source port in use' => 'Benutzter Quell-Port:', 
+'source network' => 'Quell-IP, oder Netzwerk (leer für "ALL")', 
+'source port in use' => 'Benutzter Quell-Port', 
 'source port numbers' => 'Quell-Port muß ein(e) gültige(r) Port-Nummer oder Port-Bereich sein.', 
 'source port overlaps' => 'Quell-Port-Bereich überlappt mit einem bereits definierten Port-Bereich.', 
 'source port' => 'Quell-Port', 
 'source' => 'Quelle', 
-'speaker off' => 'Lautsprecher aus:', 
-'speaker on' => 'Lautsprecher ein:', 
+'speaker off' => 'Lautsprecher aus', 
+'speaker on' => 'Lautsprecher ein', 
 'squid extension methods' => 'Ihre <tt>extension_methods</tt> Liste', 
 'squid extension methods invalid' => 'Ihre  \'extension_methods\' Liste darf nur Worte aus Großbuchstaben und Ziffer enthalten, die mittels eines Leerzeichens getrennt werden.', 
 'src port' => 'Quell-Port', 
 'sstraffic graphs' => 'Netzwerk-Diagramme', 
 'sstraffic' => 'Net-Traffic',
 'standard login script' => 'Standard-Anmeldeskript', 
-'start address' => 'Anfangsadresse:', 
+'start address' => 'Anfangsadresse', 
 'state or province' => 'Bundesstat oder Provinz', 
 'static ip' => 'Statisch IP', 
-'status information' => 'Statusinformationen', 
+'status information' => 'System-Status', 
 'status' => 'Status', 
 'stopped' => 'ANGEHALTEN', 
 'subject' => 'Betreff', 
 'title' => 'Titel', 
 'to' => 'Bis', 
 'toggle enable disable' => 'Aktivieren oder Deaktivieren', 
-'to install an update' => 'Um ein Update zu installieren, laden Sie zuerst die folgende .tgz.gpg Datei hoch:', 
-'tone dial' => 'Tonwahl:', 
+'to install an update' => 'Um ein Update zu installieren, laden Sie zuerst die folgende .tgz.gpg Datei hoch', 
+'tone dial' => 'Tonwahl', 
 'tone' => 'Ton', 
 'total hits for log section' => 'Gesamte Treffer für Log Sektion', 
 'trafficblue' => 'WLAN',
 'trafficred' => 'Internet',
 'traffic shaping settings' => 'Einstellungen der Datenflußkontrolle', 
 'traffic shaping' => 'Traffic Shaping', 
-'traffics' => 'Nutzungs-überblick:',
+'traffics' => 'Nutzungs-überblick',
 'trafficsum' => 'Gesamt',
 'trafficto' => 'Bis',
 'transfer limits' => 'Transferbeschränkungen', 
 'updates is old1' => 'Ihre Update-Datei ist ', 
 'updates is old2' => 'Tage alt. Wir empfehlen Ihnen, Ihr System über die &quot;Updates&quot;-Seite zu aktualisieren.', 
 'updates' => 'Updates', 
-'update time' => 'Aktualisiere die Uhrzeit:', 
+'update time' => 'Aktualisiere die Uhrzeit', 
 'update transcript' => 'Aktualisieren', 
 'uplink speed' => 'Uplink-Geschwindigkeit (kBit/sek)', 
-'upload a certificate' => 'Ein Zertifikat hochladen:', 
-'upload a certificate request' => 'Eine Zertifikatsanfrage hochladen:', 
+'upload a certificate' => 'Ein Zertifikat hochladen', 
+'upload a certificate request' => 'Eine Zertifikatsanfrage hochladen', 
 'upload ca certificate' => 'CA Zertifikat hochladen', 
 'upload fcdsl.o' => 'Fcdsl.o hochladen', 
 'upload file' => 'Datei zum hochladen', 
 'upload p12 file' => 'PKCS12 Datei hochladen', 
 'upload successful' => 'Erfolgreich hochgeladen.', 
 'upload synch.bin' => 'Synch.bin hochladen', 
-'upload update file' => 'Lade die Update-Datei hoch:', 
-'upstream password' => 'Proxy-Passwort:', 
-'upstream proxy host:port' => 'Vorgelagerter Proxy (hostname:port)', 
-'upstream username' => 'Proxy-Benutzername:', 
-'uptime and users' => 'Uptime und Benutzer:', 
+'upload update file' => 'Lade die Update-Datei hoch', 
+'upstream password' => 'Proxy-Passwort', 
+'upstream proxy hostport' => 'Vorgelagerter Proxy (hostnameport)', 
+'upstream username' => 'Proxy-Benutzername', 
+'uptime and users' => 'Uptime und Benutzer', 
 'usb modem on acm0' => 'USB Modem an ACM0', 
 'usb modem on acm1' => 'USB Modem an ACM1', 
 'usb modem on acm2' => 'USB Modem an ACM2', 
 'usb modem on acm3' => 'USB Modem an ACM3', 
-'use a pre-shared key' => 'Verwenden Sie einen Pre-Shared Schlüssel:', 
+'use a pre-shared key' => 'Verwenden Sie einen Pre-Shared Schlüssel', 
 'used' => 'Benutzt', 
 'used memory' => 'Genutzter Speicher', 
-'use dov' => 'DOV (Data Over Voice) benutzen:', 
+'use dov' => 'DOV (Data Over Voice) benutzen', 
 'used swap' => 'Genutzter Swap', 
 'use' => 'Einsatz', 
-'use ibod' => 'Bandwidth on Demand (iBOD) benutzen:', 
+'use ibod' => 'Bandwidth on Demand (iBOD) benutzen', 
 'use ipfire red ip' => 'Die klassische ROTE IP, welche von IPFire während der Verbindung verwendet wird', 
 'use only proposed settings' => 'Verwenden Sie nur die vorgeschlagenen Einstellungen.', 
 'user cpu' => 'Benutzer CPU', 
 'user cpu usage' => 'Benutzer CPU', 
-'username' => 'Benutzername:', 
+'username' => 'Benutzername', 
 'username not set' => 'Benutzername nicht angegeben.', 
 'users department' => 'Abteilung des Benutzers', 
 'users email' => 'E-mail Adresse des Benutzers', 
 'users fullname or system hostname' => 'Voller Name oder System Hostaname des Benutzers', 
 'valid root certificate already exists' => 'Ein gültiges Root-Zertifikat existiert bereits.', 
-'vci number' => 'VCI-Nummer:', 
+'vci number' => 'VCI-Nummer', 
 'virtual private networking' => 'Virtuelles Privates Netzwerk', 
-'vpi number' => 'VPI-Nummer:', 
-'vpn configuration main' => 'VPN-Konfiguration - Übersicht', 
+'vpi number' => 'VPI-Nummer', 
+'vpn configuration main' => 'VPN', 
 'vpn delayed start help' => 'Falls notwendig, kann diese Verzögerung dazu verwendet werden, um Dynamic DNS Updates ordnungsgemäß anzuwenden. 60 ist ein gängiger Wert, wenn ROT (RED) eine dynamische IP Adresse ist.', 
 'vpn delayed start' => 'Verzögerung bevor VPN gestartet wird (Sekunden)', 
 'vpn mtu invalid' => 'MTU muß ein numerischer Wert sein!', 
 'web server' => 'Web-Server', 
 'website' => 'Website', 
 'wednesday' => 'Mittwoch', 
+'weekly firewallhits' => 'Wöchentliche Firewalltreffer', 
 'weeks' => 'Wochen', 
 'week' => 'Woche', 
 'wildcards' => 'Wildcards', 
 'written sectors' => 'Sektoren schr.', 
 'xtaccess all error' => 'Sie können einen externen Zugang nicht auf \'ALL\' setzen - dies erfolgt in den Port-Weiterleitungsregeln.', 
 'year' => 'Jahr', 
+'yearly firewallhits' => 'Jährliche Firewalltreffer',
 'yes' => 'Ja', 
 'you can only define one roadwarrior connection when using pre-shared key authentication' => 'Sie können nur eine Roadwarrior Verbindung definieren, wenn die Pre-shared Schlüsselauthentifizierung verwendet wird.<br/>Entweder haben Sie bereits eine Roadwarrior Verbindung mit Pre-shared Schlüsselauthentifizierung, oder Sie versuchen gerade eine hinzuzufügen.', 
 'your department' => 'Ihre Abteilung', 
 'your e-mail' => 'Ihre E-mail Adresse', 
 'connect' => 'OVPN Start / Verbinden',
 'disconnect' => 'OVPN Stop / Trennen',
-'add new ovpn' => 'OpenVPN Einstellungen:',
-'Remote IP' => 'Entfernte IP / Hostname (DynDNS):', 
-'comment' => 'Kommentar:',
+'add new ovpn' => 'OpenVPN Einstellungen',
+'Remote IP' => 'Entfernte IP / Hostname (DynDNS)', 
+'comment' => 'Kommentar',
 'alt ovpn' => 'OpenVPN',  
 'ovpn' => 'OpenVPN',
 'ovpn log' => 'OVPN-Log',
 'ovpn config' => 'OVPN-Konfiguration',
 'ovpnstatus log' => 'OVPN-Status-Log',
 'ovpnsys log' => 'OVPN-System-Log',
-'current ovpn' => 'Aktive OVPN-Verbindung:',
-'Local VPN IP' => 'Internes Netzwerk (GREEN):',
-'Remote VPN IP' => 'VPN Subnetz (z.B. 10.0.10.0/255.255.255.0):',
-'Ping'=> 'Ping :',
-'optional data'=> '3. Optionale Einstellungen:',
-'requested data' => '1. Verbindungs Einstellungen:',
-'Resolv'=> 'Resolv-Retry:',
-'Verbose'=> 'Verbose:',
-'MTU'=> 'MTU Size:',
+'current ovpn' => 'Aktive OVPN-Verbindung',
+'Local VPN IP' => 'Internes Netzwerk (GREEN)',
+'Remote VPN IP' => 'VPN Subnetz (z.B. 10.0.10.0/255.255.255.0)',
+'Ping'=> 'Ping ',
+'optional data'=> '3. Optionale Einstellungen',
+'requested data' => '1. Verbindungs Einstellungen',
+'Resolv'=> 'Resolv-Retry',
+'Verbose'=> 'Verbose',
+'MTU'=> 'MTU Size',
 'choose config' => 'Konfiguration auswaehlen', 
 'generate' => 'Root/Host Zertifikate generieren', 
 'test' => 'test', 
 'ovpn dl' => 'OVPN-Konfiguration downloaden',
 'key stuff' => '2. Keys und Zertifikate',
-'status ovpn' => '4. OpenVPN Status / Konfiguration:',
-'manage ovpn' => '5. Tunnel Management:',
+'status ovpn' => 'OpenVPN',
+'manage ovpn' => '5. Tunnel Management',
 'genkey' => 'PSK erzeugen',
 'exportkey' => 'PSK exportieren',
 'importkey' => 'PSK importieren',
 'OpenVPN' => 'OpenVPN',
 'o-yes' => 'Aktiv',
 'o-no' => 'Inaktiv',
-'comp-lzo' => 'LZO-Kompression:',
-'error external access' => 'Kann /var/ipcop/xtaccess/config nicht öffnen (external acccess could not be granted)!',
-'error config' => 'Kann /var/ipcop/ovpn/config/ZERINA.ovpn nicht öffnen!',
-'hint' => 'Tipp:',
+'comp-lzo' => 'LZO-Kompression',
+'error external access' => 'Kann /var/ipcop/xtaccess/config nicht öffnen (external acccess could not be granted)!',
+'error config' => 'Kann /var/ipcop/ovpn/config/ZERINA.ovpn nicht öffnen!',
+'hint' => 'Tipp',
 'empty' => 'Dieses Feld kann leer bleiben',
-'cipher' => 'Verschlüsselung:',
+'cipher' => 'Verschlüsselung',
 'debugme' => 'Noch nicht implementiert', 
-'Client status and controlc' => 'Client Status und Kontrolle:', 
-'Act as' => 'Konfiguriert als:',
+'Client status and controlc' => 'Client Status und Kontrolle', 
+'Act as' => 'Konfiguriert als',
 'openvpn server' => 'OpenVPN Server',
 'openvpn client' => 'OpenVPN Client',
 'ovpn subnet' => 'OpenVPN Subnetz (z.B. 10.0.10.0/255.255.255.0)',
-'gen static key' => 'Statischen Schlüssel erzeugen',
-'upload static key' => 'Statischen Schlüssel hochladen',
-'ovpn device' => 'OpenVPN Gerät',
+'gen static key' => 'Statischen Schlüssel erzeugen',
+'upload static key' => 'Statischen Schlüssel hochladen',
+'ovpn device' => 'OpenVPN Gerät',
 'external access rule changed' => 'External access Regel geaendert; Der access controller wird neu gestartet.', 
-'ovpn subnet is invalid' => 'Das OpenVPN Subnetz ist ungültig.', 
-'invalid mtu input' => 'Ungültige MTU', 
+'ovpn subnet is invalid' => 'Das OpenVPN Subnetz ist ungültig.', 
+'invalid mtu input' => 'Ungültige MTU', 
 'start ovpn server' => 'Starte OpenVPN Server', 
 'stop ovpn server' => 'Stoppe OpenVPN Server',
 'restart ovpn server' => 'OpenVPN Server neu starten',
-'ovpn server status', => 'OpenVPN Server Status:',
+'ovpn server status', => 'OpenVPN Server Status',
 'dl client arch', => 'Client Paket herunterladen (zip)',
 'ovpn on red' => 'OpenVPN auf ROT',
 'ovpn on blue' => 'OpenVPN auf BLAU', 
 'bytes sent' => 'Bytes Gesendet',
 'bytes received' => 'Bytes Empfangen',
 'last activity' => 'Letzte Aktivitaet',
-'ovpn subnet overlap' => 'OpenVPN Subnetz überschneidet sich mit : ',
+'ovpn subnet overlap' => 'OpenVPN Subnetz überschneidet sich mit  ',
 'show crl' => 'Certificate Revocation List anzeigen',
 'crl' => 'Certificate Revocation List',
 'advanced server' => 'Erweiterte Server Optionen',
 'misc-options' => 'Sonstige Optionen',
 'save-adv-options' => 'Erweiterte Optionen speichern',
 'cancel-adv-options' => 'Abbrechen',
-'invalid input for dhcp domain' => 'Ungültige Eingabe für DHCP Domain',
-'invalid input for dhcp dns' => 'Ungültige Eingabe für DHCP DNS',
-'invalid input for dhcp wins' => 'Ungültige Eingabe für DHCP WINS',
-'invalid input for max clients' => 'Ungültige Eingabe für Max Clients',
-'invalid input for keepalive 1' => 'Ungültige Eingabe für Keepalive ping',
-'invalid input for keepalive 2' => 'Ungültige Eingabe für Keepalive ping-restart',
-'valid till' => 'Güig bis',
-'ovpn_processprio' => 'Prozesspriorität',
+'invalid input for dhcp domain' => 'Ungültige Eingabe für DHCP Domain',
+'invalid input for dhcp dns' => 'Ungültige Eingabe für DHCP DNS',
+'invalid input for dhcp wins' => 'Ungültige Eingabe für DHCP WINS',
+'invalid input for max clients' => 'Ungültige Eingabe für Max Clients',
+'invalid input for keepalive 1' => 'Ungültige Eingabe für Keepalive ping',
+'invalid input for keepalive 2' => 'Ungültige Eingabe für Keepalive ping-restart',
+'valid till' => 'Güig bis',
+'ovpn_processprio' => 'Prozesspriorität',
 'ovpn_fastio' => 'Fast-IO',
 'ovpn_mtudisc' => 'MTU-Discovery',
-'ovpn_mssfix' => 'MSSFIX Grösse',
-'ovpn_fragment' => 'Fragmentgrösse',
+'ovpn_mssfix' => 'MSSFIX Grösse',
+'ovpn_fragment' => 'Fragmentgrösse',
 'ovpn_processprioEH' => 'Extrem Hoch',
 'ovpn_processprioVH' => 'Sehr Hoch',
 'ovpn_processprioH' => 'Hoch',
-'ovpn_processprioEN' => 'Höher als Normal',
+'ovpn_processprioEN' => 'Höher als Normal',
 'ovpn_processprioN' => 'Normal',
 'ovpn_processprioLN' => 'Tiefer als Normal',
 'ovpn_processprioD' => 'Tief',
 'advproxy advanced proxy' => 'Advanced Proxy',
 'advproxy ssadvanced proxy' => 'advanced proxy',
 'advproxy advanced web proxy' => 'Advanced Web Proxy',
-'advproxy advanced web proxy configuration' => 'Advanced Web Proxy Konfiguration',
+'advproxy advanced web proxy configuration' => 'Proxy-Konfiguration',
 'advproxy common settings' => 'Allgemeine Einstellungen',
 'advproxy enabled on' => 'Aktiviert auf',
 'advproxy transparent on' => 'Transparent auf',
 'advproxy via forwarding' => 'Proxy-Adresse weiterleiten',
 'advproxy client IP forwarding' => 'Client-IP-Adresse weiterleiten',
 'advproxy username forwarding' => ' Benutzernamen weiterleiten',
-'advproxy upstream proxy host:port' => 'Vorgelagerter Proxy (Host:Port)',
+'advproxy upstream proxy hostport' => 'Vorgelagerter Proxy (HostPort)',
 'advproxy upstream username' => 'Proxy-Benutzername',
 'advproxy upstream password' => 'Proxy-Passwort',
 'advproxy log settings' => 'Protokolleinstellungen',
 'advproxy RADIUS use positive access list' => 'Verwende positive Zugriffskontrolle',
 'advproxy RADIUS use negative access list' => 'Verwende negative Zugriffskontrolle',
 'advproxy errmsg invalid upstream proxy username or password setting' => 'Ungültiger Benutzername oder ungültiges Kennwort für Upstream Proxy',
-'advproxy errmsg hdd cache size' => 'Ungültiger Wert für die Größe des Festplatten-Cachespeichers (min. 10 MB erforderlich)',
-'advproxy errmsg mem cache size' => 'Ungültiger Wert für die Größe des RAM-Cachespeichers',
+'advproxy errmsg hdd cache size' => 'Ungültiger Wert für die Größe des Festplatten-Cachespeichers (min. 10 MB erforderlich)',
+'advproxy errmsg mem cache size' => 'Ungültiger Wert für die Größe des RAM-Cachespeichers',
 'advproxy errmsg time restriction' => 'Ungültige Zeitbeschränkung',
 'advproxy errmsg no browser' => 'Mindestens ein Browser oder Client muss für den Web-Zugriff zugelassen sein',
 'advproxy errmsg auth children' => 'Ungültige Anzahl Authentifizierungsprozesse',
 'advproxy errmsg password incorrect' => 'Falsches Passwort',
 'advproxy errmsg change fail' => 'Passwort konnte nicht geändert werden',
 'advproxy errmsg change success'  => 'Passwort für Webzugriff erfolgreich geändert',
-'advproxy chgwebpwd SUCCESS' => 'E R F O L G :',
-'advproxy chgwebpwd ERROR' => 'F E H L E R :',
+'advproxy chgwebpwd SUCCESS' => 'E R F O L G ',
+'advproxy chgwebpwd ERROR' => 'F E H L E R ',
 'advproxy update notification' => 'Update-Benachrichtigung!',
 'advproxy update information' => 'Eine aktualisierte Version steht zum Download bereit. Besuchen Sie <a href="http://www.advproxy.net" target="_blank">http://www.advproxy.net</a> für weitere Informationen.',
-'linkq' => 'Verbindungsqualität',
+'linkq' => 'Verbindungsqualität',
 'empty profile' => 'Unbenannt',
 
 ); 
index 8437cdd1e8310bfa67bce6b147a445ebaf3cbedd..bdd4167c87cb2c98e1a471406e836587b21b761b 100644 (file)
 
 include Config
 
-VER        = 3.1.1
+VER        = 3.1.3
 
 THISAPP    = Mail-SpamAssassin-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
-DL_FROM    = http://www.artfiles.org/apache.org/spamassassin/source
+DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 
@@ -43,7 +43,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = f7844cbc149de3d7b09a4310f4ab6739
+$(DL_FILE)_MD5 = 32ad78f3cdaddb02cdf0f55572604d07
 
 install : $(TARGET)
 
index 21e589a10c11750e261a19b192e9fb60cc3e27ce..0062140e82886474a1c35770f43687a2c4a0bf1b 100644 (file)
@@ -3,7 +3,7 @@
 # $Id: rc.sysinit,v 1.18.2.36 2005/12/01 20:13:08 eoberlander Exp $
 #
 
-eval $(/usr/local/bin/readhash CONFIG_ROOT/main/settings)
+eval $(/usr/local/bin/readhash /var/ipfire/main/settings)
 
 umask 022
 
@@ -153,7 +153,7 @@ LANG=en_US.utf8
 export LANG
 
 echo "Setting consolefonts"
-eval $(/usr/local/bin/readhash CONFIG_ROOT/main/settings)
+eval $(/usr/local/bin/readhash /var/ipfire/main/settings)
 for i in 2 3 4 5 6; do
        > /dev/tty$i
 done
@@ -181,8 +181,8 @@ echo "Clearing old files"
 rm -f /var/run/{*.pid,*.sem,*.tdb}
 rm -f /var/run/dhcpcd-*.pid
 rm -f /var/lock/{LCK..tty*,rc.updatered.lock}
-rm -f CONFIG_ROOT/dhcpc/{*.pid,*.cache,*.info}
-rm -f CONFIG_ROOT/red/{active,eciadsl-synch-done}
+rm -f /var/ipfire/dhcpc/{*.pid,*.cache,*.info}
+rm -f /var/ipfire/red/{active,eciadsl-synch-done}
 
 echo "Setting the clock"
 /sbin/hwclock --hctosys
@@ -193,9 +193,9 @@ touch /var/log/wtmp
 chgrp utmp /var/run/utmp /var/log/wtmp
 chmod 0664 /var/run/utmp /var/log/wtmp
 
-if [ -x /usr/sbin/isapnp -a -f CONFIG_ROOT/isapnp/isapnp.conf -a ! -f /proc/isapnp ]; then
+if [ -x /usr/sbin/isapnp -a -f /var/ipfire/isapnp/isapnp.conf -a ! -f /proc/isapnp ]; then
        echo "Running isapnp"
-       /usr/sbin/isapnp CONFIG_ROOT/isapnp/isapnp.conf 2>/dev/null
+       /usr/sbin/isapnp /var/ipfire/isapnp/isapnp.conf 2>/dev/null
 fi
 
 if [ ! -e /etc/ssh/ssh_host_key ]; then
@@ -232,38 +232,40 @@ echo "Running /etc/rc.d/rc.network"
 echo "Dumping boot messages"
 dmesg > /var/log/dmesg
 
-if [ -e /var/log/rrd/disk.rrd ]; then
-       echo "Adjusting graphs to compensate for boot"
-       /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk.rrd","-t","readsect:writesect","N:U:U");'
-fi
-if [ -e /var/log/rrd/disk-hda.rrd ]; then
-       /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hda.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
-fi
-if [ -e /var/log/rrd/disk-hdb.rrd ]; then
-       /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdb.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
-fi
-if [ -e /var/log/rrd/disk-hdc.rrd ]; then
-       /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdc.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
-fi
-if [ -e /var/log/rrd/disk-hdd.rrd ]; then
-       /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdd.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
-fi
-if [ -e /var/log/rrd/disk-hde.rrd ]; then
-       /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hde.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
-fi
-if [ -e /var/log/rrd/disk-hdf.rrd ]; then
-       /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdf.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
-fi
-if [ -e /var/log/rrd/disk-hdg.rrd ]; then
-       /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdg.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
-fi
-if [ -e /var/log/rrd/disk-hdh.rrd ]; then
-       /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdh.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
-fi
-if [ -e /tmp/hddshutdown-stat ] ; then
-  rm /tmp/hddshutdown-*"
-fi
-/usr/local/bin/hddshutdown
+echo 7200 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established
+
+#if [ -e /var/log/rrd/disk.rrd ]; then
+#      echo "Adjusting graphs to compensate for boot"
+#      /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk.rrd","-t","readsect:writesect","N:U:U");'
+#fi
+#if [ -e /var/log/rrd/disk-hda.rrd ]; then
+#      /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hda.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
+#fi
+#if [ -e /var/log/rrd/disk-hdb.rrd ]; then
+#      /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdb.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
+#fi
+#if [ -e /var/log/rrd/disk-hdc.rrd ]; then
+#      /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdc.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
+#fi
+#if [ -e /var/log/rrd/disk-hdd.rrd ]; then
+#      /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdd.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
+#fi
+#if [ -e /var/log/rrd/disk-hde.rrd ]; then
+#      /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hde.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
+#fi
+#if [ -e /var/log/rrd/disk-hdf.rrd ]; then
+#      /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdf.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
+#fi
+#if [ -e /var/log/rrd/disk-hdg.rrd ]; then
+#      /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdg.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
+#fi
+#if [ -e /var/log/rrd/disk-hdh.rrd ]; then
+#      /usr/bin/perl -e 'use RRDs;RRDs::update("/var/log/rrd/disk-hdh.rrd","-t","readsect:writesect:sleeping","N:U:U:U");'
+#fi
+#if [ -e /tmp/hddshutdown-stat ] ; then
+#  rm /tmp/hddshutdown-*"
+#fi
+#/usr/local/bin/hddshutdown
 
 echo "Starting crond"
 /usr/sbin/fcron
@@ -280,7 +282,7 @@ echo "Starting ntpd (if enabled)"
 echo "Starting openvpn (if enabled)"
 /usr/local/bin/openvpnctrl --start-daemon-only
 
-if [ -e "CONFIG_ROOT/proxy/squid.conf" ]; then
+if [ -e "/var/ipfire/proxy/squid.conf" ]; then
        echo "Starting squid (if enabled)"
        /usr/local/bin/restartsquid
 fi
index 1ea6dc349f037fc3505b7e85954a792b10f812a4..b3ea42f6ccd3894343040a92b58fa4ed6cb1162d 100644 (file)
@@ -28,7 +28,7 @@ use strict;
 #use warnings;
 
 use RRDs;
-require "CONFIG_ROOT/general-functions.pl";
+require "/var/ipfire/general-functions.pl";
 require "${General::swroot}/lang.pl";
 
 my (%settings, @ipacsum, $iface, $ERROR);
@@ -625,7 +625,7 @@ sub updatelq {
        my $roundtrip=0;
        my $test=0;
 #      LQ_GATEWAY is the ip of your isp's public ip facing you
-       my $LQ_GATEWAY=`netstat -r | grep ^default | awk '{print \$2}'`;
+       my $LQ_GATEWAY='www.heise.de';
        my $NUMPINGS=10;
        my $pingoutput = `ping -c $NUMPINGS -q $LQ_GATEWAY`;
        chomp;
diff --git a/src/scripts/morningreconnect b/src/scripts/morningreconnect
new file mode 100644 (file)
index 0000000..82dfc92
--- /dev/null
@@ -0,0 +1,18 @@
+#!/bin/bash
+#
+# IPFire SCRIPTs
+#
+# This code is distributed under the terms of the GPL
+#
+# (c) The IPFire Team
+
+# begin
+
+if [ -e "/var/ipfire/morningreconnect/enable" ]; then
+               logger -t ipfire MorningReconnect executed!
+               /etc/rc.d/rc.red stop
+               /bin/sleep 10
+               /etc/rc.d/rc.red start
+fi
+
+# end