Tripwire Gui integrierto>

Tripwire Controll Datei geschrieben
Weitere Anpassungen am Sambapaket
Tripwire Sourcen ins LFS genommen


git-svn-id: http://svn.ipfire.org/svn/ipfire/trunk@487 ea5c0bd1-69bd-2848-81d8-4f18e57aeed8
This commit is contained in:
maniacikarus
2007-04-10 18:39:44 +00:00
parent 1a8688ba59
commit 92004c6126
20 changed files with 1770 additions and 107 deletions

View File

@@ -1,20 +1,25 @@
$subipfire->{'10.pakfire'} = {'caption' => 'Pakfire',
'uri' => '/cgi-bin/pakfire.cgi',
'title' => "Pakfire",
'enabled' => 1,
};
$subipfire->{'20.asterisk'} = {'caption' => 'Asterisk',
'uri' => '/cgi-bin/asterisk.cgi',
'title' => "Asterisk",
'enabled' => 1,
};
$subipfire->{'30.samba'} = {'caption' => 'Samba',
'uri' => '/cgi-bin/samba.cgi',
'title' => "Samba",
'enabled' => 1,
};
$subipfire->{'99.help'} = {'caption' => $Lang::tr{'help'},
'uri' => '/cgi-bin/help.cgi',
'title' => "$Lang::tr{'help'}",
'enabled' => 1,
};
$subipfire->{'10.pakfire'} = {'caption' => 'Pakfire',
'uri' => '/cgi-bin/pakfire.cgi',
'title' => "Pakfire",
'enabled' => 1,
};
$subipfire->{'20.asterisk'} = {'caption' => 'Asterisk',
'uri' => '/cgi-bin/asterisk.cgi',
'title' => "Asterisk",
'enabled' => 1,
};
$subipfire->{'30.samba'} = {'caption' => 'Samba',
'uri' => '/cgi-bin/samba.cgi',
'title' => "Samba",
'enabled' => 1,
};
$subipfire->{'40.tripwire'} = {'caption' => 'Tripwire',
'uri' => '/cgi-bin/tripwire.cgi',
'title' => "Tripwire",
'enabled' => 1,
};
$subipfire->{'99.help'} = {'caption' => $Lang::tr{'help'},
'uri' => '/cgi-bin/help.cgi',
'title' => "$Lang::tr{'help'}",
'enabled' => 1,
};

View File

@@ -1,20 +1,20 @@
[homes]
path = /home/%u
comment = Benutzer-Verzeichnisse
browseable = yes
writeable = yes
valid users = %S
[netlogon]
path = /var/samba/netlogon
browseable = no
writeable = no
comment = NetLogON
[profiles]
path = /var/samba/profiles
browseable = no
writeable = yes
comment = Benutzerprofile
valid users = %S
[homes]
path = /home/%u
comment = Benutzer-Verzeichnisse
browseable = yes
writeable = yes
valid users = %S
[netlogon]
path = /var/ipfire/samba/netlogon
browseable = no
writeable = no
comment = NetLogON
[profiles]
path = /var/ipfire/samba/profiles
browseable = no
writeable = yes
comment = Benutzerprofile
valid users = %S

View File

@@ -1,19 +1,19 @@
[Temp]
path = /tmp
comment = Temp
browseable = yes
writeable = yes
create mask = 0777
directory mask = 0777
guest ok = yes
force user = samba
[P2P]
path = /var/samba/p2p
comment = P2P
browseable = yes
writeable = yes
create mask = 0777
directory mask = 0777
guest ok = yes
force user = samba
[Temp]
path = /tmp
comment = Temp
browseable = yes
writeable = yes
create mask = 0777
directory mask = 0777
guest ok = yes
force user = samba
[P2P]
path = /var/ipfire/samba/p2p
comment = P2P
browseable = yes
writeable = yes
create mask = 0777
directory mask = 0777
guest ok = yes
force user = samba

BIN
config/tripwire/oldbin/siggen Executable file

Binary file not shown.

BIN
config/tripwire/oldbin/tripwire Executable file

Binary file not shown.

BIN
config/tripwire/oldbin/twadmin Executable file

Binary file not shown.

BIN
config/tripwire/oldbin/twprint Executable file

Binary file not shown.

0
config/tripwire/settings Executable file
View File

18
config/tripwire/twcfg.txt Normal file
View File

@@ -0,0 +1,18 @@
ROOT =/usr/sbin
POLFILE =/var/ipfire/tripwire/tw.pol
DBFILE =/var/ipfire/tripwire/$(HOSTNAME).twd
REPORTFILE =/var/ipfire/tripwire/report/$(HOSTNAME)-$(DATE).twr
SITEKEYFILE =/var/ipfire/tripwire/site.key
LOCALKEYFILE =/var/ipfire/tripwire/$(HOSTNAME)-local.key
EDITOR =/usr/bin/vi
LATEPROMPTING =false
LOOSEDIRECTORYCHECKING =false
MAILNOVIOLATIONS =false
EMAILREPORTLEVEL =3
REPORTLEVEL =3
#MAILMETHOD =SENDMAIL
#MAILMETHOD =SMTP
#SMTPHOST =phoenix.e-vector.com
#SMTPPORT =25
SYSLOGREPORTING =false
#MAILPROGRAM =/usr/sbin/sendmail -oi -t

1039
config/tripwire/twpol.txt Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -79,6 +79,7 @@ WARNING: translation string unused: current media
WARNING: translation string unused: current ovpn
WARNING: translation string unused: current profile
WARNING: translation string unused: dat without key
WARNING: translation string unused: dbfile
WARNING: translation string unused: ddns help dnsmadeeasy
WARNING: translation string unused: ddns help freedns
WARNING: translation string unused: ddns help plus
@@ -95,6 +96,7 @@ WARNING: translation string unused: dns server
WARNING: translation string unused: do not log this port list
WARNING: translation string unused: download
WARNING: translation string unused: dynamic dns client
WARNING: translation string unused: editor
WARNING: translation string unused: enable javascript
WARNING: translation string unused: enabled on
WARNING: translation string unused: enabledtitle
@@ -155,11 +157,14 @@ WARNING: translation string unused: javascript menu error1
WARNING: translation string unused: javascript menu error2
WARNING: translation string unused: kernel version
WARNING: translation string unused: key stuff
WARNING: translation string unused: lateprompting
WARNING: translation string unused: line
WARNING: translation string unused: linkq
WARNING: translation string unused: local hard disk
WARNING: translation string unused: localkeyfile
WARNING: translation string unused: log enabled
WARNING: translation string unused: log viewer
WARNING: translation string unused: loosedirectorychecking
WARNING: translation string unused: ls_dhcpd
WARNING: translation string unused: ls_disk space
WARNING: translation string unused: ls_free/swan
@@ -215,6 +220,7 @@ WARNING: translation string unused: ovpnsys log
WARNING: translation string unused: package failed to install
WARNING: translation string unused: password crypting key
WARNING: translation string unused: pc
WARNING: translation string unused: polfile
WARNING: translation string unused: pots
WARNING: translation string unused: profiles
WARNING: translation string unused: proxy no proxy extend
@@ -225,8 +231,10 @@ WARNING: translation string unused: reboot schedule
WARNING: translation string unused: refresh update list
WARNING: translation string unused: released
WARNING: translation string unused: removable device advice
WARNING: translation string unused: reportfile
WARNING: translation string unused: requested data
WARNING: translation string unused: restore hardware settings
WARNING: translation string unused: root
WARNING: translation string unused: root path
WARNING: translation string unused: root user password
WARNING: translation string unused: safe removal of umounted device
@@ -235,6 +243,7 @@ WARNING: translation string unused: sectors read from disk per second
WARNING: translation string unused: sectors written to disk per second
WARNING: translation string unused: select media
WARNING: translation string unused: shared memory
WARNING: translation string unused: sitekeyfile
WARNING: translation string unused: smbreload
WARNING: translation string unused: squid extension methods
WARNING: translation string unused: squid extension methods invalid
@@ -295,7 +304,6 @@ WARNING: translation string unused: week
WARNING: translation string unused: written sectors
WARNING: translation string unused: xtaccess bad transfert
WARNING: translation string unused: year
WARNING: translation string unused: yes
WARNING: untranslated string: IPFires hostname
WARNING: untranslated string: Number of IPs for the pie chart
WARNING: untranslated string: Number of Ports for the pie chart

View File

@@ -96,6 +96,7 @@ WARNING: translation string unused: current ovpn
WARNING: translation string unused: current profile
WARNING: translation string unused: daily firewallhits
WARNING: translation string unused: dat without key
WARNING: translation string unused: dbfile
WARNING: translation string unused: debugme
WARNING: translation string unused: description
WARNING: translation string unused: dhcp server disabled on blue interface
@@ -106,6 +107,7 @@ WARNING: translation string unused: disk access per
WARNING: translation string unused: do not log this port list
WARNING: translation string unused: done
WARNING: translation string unused: dynamic dns client
WARNING: translation string unused: editor
WARNING: translation string unused: enable javascript
WARNING: translation string unused: enabled on
WARNING: translation string unused: enabledtitle
@@ -168,11 +170,14 @@ WARNING: translation string unused: javascript menu error1
WARNING: translation string unused: javascript menu error2
WARNING: translation string unused: kernel version
WARNING: translation string unused: key stuff
WARNING: translation string unused: lateprompting
WARNING: translation string unused: line
WARNING: translation string unused: linkq
WARNING: translation string unused: local hard disk
WARNING: translation string unused: localkeyfile
WARNING: translation string unused: log enabled
WARNING: translation string unused: log viewer
WARNING: translation string unused: loosedirectorychecking
WARNING: translation string unused: ls_dhcpd
WARNING: translation string unused: ls_disk space
WARNING: translation string unused: ls_free/swan
@@ -228,6 +233,7 @@ WARNING: translation string unused: ovpnstatus log
WARNING: translation string unused: ovpnsys log
WARNING: translation string unused: package failed to install
WARNING: translation string unused: pc
WARNING: translation string unused: polfile
WARNING: translation string unused: pots
WARNING: translation string unused: profiles
WARNING: translation string unused: psk
@@ -236,14 +242,17 @@ WARNING: translation string unused: read sectors
WARNING: translation string unused: reboot schedule
WARNING: translation string unused: refresh update list
WARNING: translation string unused: released
WARNING: translation string unused: reportfile
WARNING: translation string unused: requested data
WARNING: translation string unused: restore hardware settings
WARNING: translation string unused: root
WARNING: translation string unused: root user password
WARNING: translation string unused: save error
WARNING: translation string unused: sectors read from disk per second
WARNING: translation string unused: sectors written to disk per second
WARNING: translation string unused: shaping add options
WARNING: translation string unused: shared memory
WARNING: translation string unused: sitekeyfile
WARNING: translation string unused: smbreload
WARNING: translation string unused: squid extension methods
WARNING: translation string unused: squid extension methods invalid
@@ -299,7 +308,6 @@ WARNING: translation string unused: weekly firewallhits
WARNING: translation string unused: written sectors
WARNING: translation string unused: year
WARNING: translation string unused: yearly firewallhits
WARNING: translation string unused: yes
WARNING: untranslated string: IPFires hostname
WARNING: untranslated string: Number of IPs for the pie chart
WARNING: untranslated string: Number of Ports for the pie chart

View File

@@ -24,7 +24,7 @@ my $message = "";
my $errormessage = "";
my @Logs = qx(ls /var/log/samba/);
my $Log =$Lang::tr{'no log selected'};
my $defaultoption= "[Share]\npath = /var/samba/share1\ncomment = Share - Public Access\nbrowseable = yes\nwriteable = yes\ncreate mask = 0777\ndirectory mask = 0777\nguest ok = yes\npublic = yes\nforce user = samba";
my $defaultoption= "[Share]\npath = /var/ipfire/samba/share1\ncomment = Share - Public Access\nbrowseable = yes\nwriteable = yes\ncreate mask = 0777\ndirectory mask = 0777\npublic = yes\nforce user = samba";
my $userentry = "";
my @user = ();
my @userline = ();
@@ -174,14 +174,14 @@ system('/usr/local/bin/sambactrl smbsharesreset');
if ($sambasettings{'ACTION'} eq 'globalreset')
{
print <<END
<br />
<table width='95%' cellspacing='0'>
<tr><td colspan='2'><br /></td></tr>
<tr><td bgcolor='${Header::table1colour}' colspan='3' align='center'><b>Globals zurück setzen?</b>
<tr><td bgcolor='${Header::table1colour}' colspan='3' align='center'><b>$Lang::tr{'resetglobals'}</b>
<tr><td align='right' width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
Yes <input type='image' alt='Yes' src='/images/edit-redo.png' />
$Lang::tr{'yes'} <input type='image' alt='$Lang::tr{'yes'}' src='/images/edit-redo.png' />
<input type='hidden' name='ACTION' value='globalresetyes' /></form></td>
<td align='left' width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='image' alt='No' src='/images/dialog-error.png' /> No
<input type='image' alt='$Lang::tr{'no'}' src='/images/dialog-error.png' /> $Lang::tr{'no'}
<input type='hidden' name='ACTION' value='cancel' /></form></td>
</tr>
</table>
@@ -192,14 +192,14 @@ END
if ($sambasettings{'ACTION'} eq 'sharesreset')
{
print <<END
<br />
<table width='95%' cellspacing='0'>
<tr><td colspan='2'><br /></td></tr>
<tr><td bgcolor='${Header::table1colour}' colspan='3' align='center'><b>Shares zurück setzen?</b>
<tr><td bgcolor='${Header::table1colour}' colspan='3' align='center'><b>$Lang::tr{'resetshares'}</b>
<tr><td align='right' width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
Yes <input type='image' alt='Yes' src='/images/edit-redo.png' />
$Lang::tr{'yes'} <input type='image' alt='$Lang::tr{'yes'}' src='/images/edit-redo.png' />
<input type='hidden' name='ACTION' value='sharesresetyes' /></form></td>
<td align='left' width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='image' alt='No' src='/images/dialog-error.png' /> No
<input type='image' alt='$Lang::tr{'no'}' src='/images/dialog-error.png' /> $Lang::tr{'no'}
<input type='hidden' name='ACTION' value='cancel' /></form></td>
</tr>
</table>
@@ -510,6 +510,7 @@ $selected{'SECURITY'}{$sambasettings{'SECURITY'}} = "selected='selected'";
&Header::openbox('100%', 'center', $Lang::tr{'samba'});
print <<END
<hr />
<br />
<table width='95%' cellspacing='0'>
END
;
@@ -519,7 +520,6 @@ if ( $message ne "" )
}
print <<END
<tr><td colspan='3'><br /></td></tr>
<tr bgcolor='${Header::table1colour}'><td colspan='2' align='left'><b>$Lang::tr{'all services'}</b></td></tr>
</table><table width='95%' cellspacing='0'>
END
@@ -536,17 +536,16 @@ foreach $key (sort keys %servicenames)
print <<END
</table>
<br />
<table width='95%' cellspacing='0'>
<tr><td colspan='4'><br /></td></tr>
<tr><td align='left' width='40%' />
<td align='center' ><form method='post' action='$ENV{'SCRIPT_NAME'}'><input type='hidden' name='ACTION' value='smbstart' /><input type='image' alt='$Lang::tr{'smbstart'}' src='/images/go-up.png' /></form></td>
<td align='center' ><form method='post' action='$ENV{'SCRIPT_NAME'}'><input type='hidden' name='ACTION' value='smbstop' /><input type='image' alt='$Lang::tr{'smbstop'}' src='/images/go-down.png' /></form></td>
<td align='center' ><form method='post' action='$ENV{'SCRIPT_NAME'}'><input type='hidden' name='ACTION' value='smbrestart' /><input type='image' alt='$Lang::tr{'smbrestart'}' src='/images/view-refresh.png' /></form></td></tr>
</table>
<br />
<form method='post' action='$ENV{'SCRIPT_NAME'}'>
<table width='95%' cellspacing='0'>
<tr><td colspan='2'><br /></td></tr>
<tr bgcolor='${Header::table1colour}'><td colspan='2' align='left'><b>$Lang::tr{'basic options'}</b></td></tr>
<tr><td align='left' width='40%'>$Lang::tr{'workgroup'}</td><td align='left'><input type='text' name='WORKGRP' value='$sambasettings{'WORKGRP'}' size="30" /></td></tr>
<tr><td align='left' width='40%'>$Lang::tr{'netbios name'}</td><td align='left'><input type='text' name='NETBIOSNAME' value='$sambasettings{'NETBIOSNAME'}' size="30" /></td></tr>
@@ -638,8 +637,8 @@ END
print <<END
</table>
<br />
<table width='10%' cellspacing='0'>
<tr><td colspan='3'><br /></td></tr>
<tr><td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='ACTION' value=$Lang::tr{'save'} />
<input type='image' alt='$Lang::tr{'save'}' src='/images/media-floppy.png' /></form></td>
@@ -656,8 +655,8 @@ END
if ($sambasettings{'ACTION'} eq 'globalcaption')
{
print <<END
<br />
<table width='95%' cellspacing='0'>
<tr><td colspan='2'><br /></td></tr>
<tr><td align='center' colspan='2'><b>$Lang::tr{'caption'}</b></td></tr>
<tr><td align='right' width='33%'><img src='/images/media-floppy.png' /></td><td align='left'>$Lang::tr{'save settings'}</td></tr>
<tr><td align='right' width='33%'><img src='/images/reload.gif' /></td><td align='left'>$Lang::tr{'restore settings'}</td></tr>
@@ -683,8 +682,8 @@ if ($sambasettings{'SECURITY'} eq 'user')
}
print <<END
<hr />
<br />
<table width='95%' cellspacing='0'>
<tr><td colspan='6'><br /></td></tr>
<tr><td colspan='6' align='left'></td></tr>
<tr><td bgcolor='${Header::table1colour}' colspan='7' align='left'><b>$Lang::tr{'accounting'}</b></td></tr>
<tr><td align='left'><u>$Lang::tr{'username'}</u></td><td align='left'><u>$Lang::tr{'password'}</u></td>
@@ -697,10 +696,10 @@ END
}
else
{
print "<td align='left'><u>Typ</u></td>";
print "<td align='left'><u>$Lang::tr{'type'}</u></td>";
}
print "<td align='left'><u>$Lang::tr{'interfaces'}</u></td><td colspan='3' width='5%' align='center'><u>$Lang::tr{'options'}</u></td></tr>";
print "<td align='left'><u>$Lang::tr{'status'}</u></td><td colspan='3' width='5%' align='center'><u>$Lang::tr{'options'}</u></td></tr>";
system('/usr/local/bin/sambactrl readsmbpasswd');
open(FILE, "</var/ipfire/samba/private/smbpasswd") or die "Can't read user file: $!";
@user = <FILE>;
@@ -738,7 +737,7 @@ END
if ($userline[4] =~ /D/)
{
print <<END
inaktiv</td>
$Lang::tr{'inactive'}</td>
<td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='NAME' value='$userline[0]' />
<input type='hidden' name='ACTION' value='smbuserenable' />
@@ -750,7 +749,7 @@ END
else
{
print <<END
aktiv</td>
$Lang::tr{'active'}</td>
<td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='NAME' value='$userline[0]' />
<input type='hidden' name='ACTION' value='smbuserdisable' />
@@ -801,8 +800,8 @@ END
}
print <<END
</table>
<br />
<table width='10%' cellspacing='0'>
<tr><td colspan='3'><br /></td></tr>
<tr><td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='ACTION' value='useradd' />
<input type='image' alt='$Lang::tr{'add user'}' src='/images/user-option-add.png' /></form></td>
@@ -830,8 +829,8 @@ END
if ($sambasettings{'ACTION'} eq 'usercaption')
{
print <<END
<br />
<table width='95%' cellspacing='0'>
<tr><td align='center' colspan='2'><br /></td></tr>
<tr><td align='center' colspan='2'><b>$Lang::tr{'caption'}</b></td></tr>
<tr><td align='right' width='33%'><img src='/images/user-option-add.png' /></td><td align='left'>$Lang::tr{'add user'}</td></tr>
<tr><td align='right' width='33%'><img src='/images/network.png' /></td><td align='left'>$Lang::tr{'add pc'}</td></tr>
@@ -852,9 +851,9 @@ END
my $password = 'samba';
print <<END
<hr />
<br />
<form method='post' action='$ENV{'SCRIPT_NAME'}'>
<table width='95%' cellspacing='0'>
<tr><td colspan='2'><br /></td></tr>
<tr bgcolor='${Header::table1colour}'><td colspan='2' align='left'><b>$Lang::tr{'change passwords'}</b></td></tr>
<tr><td align='left'>$Lang::tr{'username'}</td><td><input type='text' name='USERNAME' value='$username' size='30' /></td></tr>
<tr><td align='left'>$Lang::tr{'password'}</td><td><input type='password' name='PASSWORD' value='$password' size='30' /></td></tr>
@@ -876,9 +875,9 @@ END
$password=~s/\s//g;
print <<END
<hr />
<br />
<form method='post' action='$ENV{'SCRIPT_NAME'}'>
<table width='95%' cellspacing='0'>
<tr><td colspan='2'><br /></td></tr>
<tr bgcolor='${Header::table1colour}'><td colspan='2' align='left'><b>$Lang::tr{'add user'}</b></td></tr>
<tr><td align='left'>$Lang::tr{'username'}</td><td><input type='text' name='USERNAME' value='$username' size='30' /></td></tr>
<tr><td align='left'>$Lang::tr{'password'}</td><td><input type='password' name='PASSWORD' value='$password' size='30' /></td></tr>
@@ -899,9 +898,9 @@ END
$pcname=~s/\s//g;
print <<END
<hr />
<br />
<form method='post' action='$ENV{'SCRIPT_NAME'}'>
<table width='95%' cellspacing='0'>
<tr><td colspan='2'><br /></td></tr>
<tr bgcolor='${Header::table1colour}'><td colspan='2' align='left'><b>$Lang::tr{'pc add'}</b></td></tr>
<tr><td align='left'>$Lang::tr{'client'}</td><td><input type='text' name='PCNAME' value='$pcname' size='30' /></td></tr>
<tr><td align='left'>$Lang::tr{'unix group'}</td><td><input type='text' name='GROUP' value='sambawks' size='30' /></td></tr>
@@ -924,8 +923,8 @@ END
print <<END
<hr />
<br />
<table width='95%' cellspacing='0'>
<tr><td colspan='3'><br /></td></tr>
<tr><td bgcolor='${Header::table1colour}' colspan='3' align='left'><b>$Lang::tr{'manage shares'}</b>
<tr><td align='left'><u>$Lang::tr{'sharename'}</u></td><td colspan='2' width="5%" align='center'><u>$Lang::tr{'options'}</u></td></tr>
END
@@ -951,8 +950,8 @@ END
print <<END
</table>
<br />
<table width='10%' cellspacing='0'>
<tr><td colspan='3'><br /></td></tr>
<tr><td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='ACTION' value='shareadd' />
<input type='image' alt='$Lang::tr{'add share'}' src='/images/list-add.png' />
@@ -972,9 +971,9 @@ END
if ($sambasettings{'ACTION'} eq 'sharecaption')
{
print <<END
<br />
<table width='95%' cellspacing='0'>
<tr><td align='center' colspan='2'><br /></td></tr>
<tr><td align='center' colspan='2'><b>Legende:</b></td></tr>
<tr><td align='center' colspan='2'><b>$Lang::tr{'caption'}</b></td></tr>
<tr><td align='right' width='33%'><img src='/images/list-add.png' /></td><td align='left'>$Lang::tr{'add share'}</td></tr>
<tr><td align='right' width='33%'><img src='/images/edit.gif' /></td><td align='left'>$Lang::tr{'edit share'}</td></tr>
<tr><td align='right' width='33%'><img src='/images/media-floppy.png' /></td><td align='left'>$Lang::tr{'save config'}</td></tr>
@@ -989,8 +988,8 @@ if ($sambasettings{'ACTION'} eq 'shareadd' || $sambasettings{'ACTION'} eq 'optio
{
print <<END
<hr />
<br />
<table width='95%' cellspacing='0'>
<tr><td colspan='2'><br /></td></tr>
<tr bgcolor='${Header::table1colour}'><td colspan='2' align='left'><b>$Lang::tr{'add share'}</b></td></tr>
<tr><td colspan='2' align='center'></td></tr>
<tr><td colspan='2' align='center'>$Lang::tr{'show share options'}<form method='post' action='$ENV{'SCRIPT_NAME'}'>
@@ -999,8 +998,8 @@ if ($sambasettings{'ACTION'} eq 'shareadd' || $sambasettings{'ACTION'} eq 'optio
</form></td></tr>
<form method='post' action='$ENV{'SCRIPT_NAME'}'><tr><td colspan='2' align='center'><textarea name="SHAREOPTION" cols="50" rows="15" Wrap="off">$defaultoption</textarea></td></tr>
</table>
<br />
<table width='10%' cellspacing='0'>
<tr><td><br /></td></tr>
<tr><td align='center'><input type='hidden' name='ACTION' value='smbshareadd' />
<input type='image' alt='$Lang::tr{'add share'}' src='/images/media-floppy.png' /></td></tr></form>
</table>
@@ -1030,8 +1029,8 @@ if ($sambasettings{'ACTION'} eq 'sharechange' || $sambasettings{'ACTION'} eq 'op
}
print <<END
<hr />
<br />
<table width='95%' cellspacing='0'>
<tr><td colspan='2'><br /></td></tr>
<tr bgcolor='${Header::table1colour}'><td colspan='2' align='left'><b>$Lang::tr{'edit share'}</b></td></tr>
<tr><td colspan='2' align='center'></td></tr>
<tr><td colspan='2' align='center'>$Lang::tr{'show share options'}<form method='post' action='$ENV{'SCRIPT_NAME'}'>
@@ -1039,8 +1038,8 @@ if ($sambasettings{'ACTION'} eq 'sharechange' || $sambasettings{'ACTION'} eq 'op
<input type='image' alt='$Lang::tr{'caption'}' src='/images/help-browser.png' /></form></td></tr>
<tr><td colspan='2' align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'><textarea name="SHAREOPTION" cols="50" rows="15" Wrap="off">$shareoption</textarea></td></tr>
</table>
<br />
<table width='10%' cellspacing='0'>
<tr><td><br /></td></tr>
<tr><td align='center'><input type='hidden' name='NAME' value='$sambasettings{'NAME'}' />
<input type='image' alt='$Lang::tr{'change share'}' src='/images/media-floppy.png' />
<input type='hidden' name='ACTION' value='smbsharechange' /></form></td></tr>
@@ -1052,8 +1051,8 @@ END
if ($sambasettings{'ACTION'} eq 'optioncaption' || $sambasettings{'ACTION'} eq 'optioncaption2')
{
print <<END
<br />
<table width='95%' cellspacing='0'>
<tr><td><br /></td></tr>
<tr><td><b>$Lang::tr{'caption'}</b></td></tr>
<tr><td><u>$Lang::tr{'options'}</u></td><td><u>$Lang::tr{'meaning'}</u> / <u>$Lang::tr{'exampel'}</u></td></tr>
<tr><td>comment</td><td>$Lang::tr{'comment'}</td></tr>
@@ -1117,8 +1116,8 @@ END
print <<END
<hr />
<br />
<table width='95%' cellspacing='0'>
<tr><td colspan='4' align='left'><br /></td></tr>
<tr><td bgcolor='${Header::table1colour}' colspan='3' align='left'><b>$Lang::tr{'samba status'}</b></td></tr>
<tr><td align='left'>$Status</td></tr>
</table>
@@ -1140,9 +1139,9 @@ $Log=~s/\n/<br \/>/g;
print <<END
<hr />
<br />
<form method='post' action='$ENV{'SCRIPT_NAME'}'>
<table width='95%' cellspacing='0'>
<tr><td colspan='3' align='left'><br /></td></tr>
<tr><td bgcolor='${Header::table1colour}' colspan='3' align='left'><b>$Lang::tr{'log view'}</b></td></tr>
<tr><td colspan='3' align='left'><br /></td></tr>
<tr><td align='left'><select name='LOG' style="width: 200px">

View File

@@ -107,7 +107,7 @@ print "</table></div>\n";
&Header::closebox();
&Header::openbox('100%', 'center', $Lang::tr{'memory'});
print "<table><tr><td><table>";
print "<table width='95%' cellspacing='5'>";
my $ram=0;
my $size=0;
my $used=0;
@@ -123,7 +123,7 @@ while(<FREE>)
{
print <<END
<tr>
<td>&nbsp;</td>
<td align='center'>&nbsp;</td>
<td align='center' class='boldbase'><b>$Lang::tr{'size'}</b></td>
<td align='center' class='boldbase'><b>$Lang::tr{'used'}</b></td>
<td align='center' class='boldbase'><b>$Lang::tr{'free'}</b></td>
@@ -177,19 +177,17 @@ END
}
close FREE;
print <<END
</table></td><td>
<table>
<tr><td class='boldbase' colspan='2'><br /></td></tr>
<tr><td class='boldbase'><b>$Lang::tr{'shared'}</b></td><td align='right'>$shared</td></tr>
<tr><td class='boldbase'><b>$Lang::tr{'buffers'}</b></td><td align='right'>$buffers</td></tr>
<tr><td class='boldbase'><b>$Lang::tr{'cached'}</b></td><td align='right'>$cached</td></tr>
</table>
</td></tr></table>
END
;
&Header::closebox();
&Header::openbox('100%', 'center', $Lang::tr{'disk usage'});
print "<table width=66%>\n";
print "<table width='95%' cellspacing='5'>\n";
open(DF,'/bin/df -B M -x rootfs|');
while(<DF>)
{
@@ -230,7 +228,7 @@ END
}
}
close DF;
print "<tr><td colspan='6'>&nbsp;\n<tr><td colspan='6'><h2>Inodes</h2>\n";
print "<tr><td colspan='6'>&nbsp;\n<tr><td colspan='6'><h3>Inodes</h3>\n";
open(DF,'/bin/df -i -x rootfs|');
while(<DF>)

404
html/cgi-bin/tripwire.cgi Executable file
View File

@@ -0,0 +1,404 @@
#!/usr/bin/perl
#
# IPFire CGIs
#
# This code is distributed under the terms of the GPL
#
# (c) The IPFire Team
use strict;
# enable only the following on debugging purpose
use warnings;
use CGI::Carp 'fatalsToBrowser';
require '/var/ipfire/general-functions.pl';
require "${General::swroot}/lang.pl";
require "${General::swroot}/header.pl";
my %tripwiresettings = ();
my %checked = ();
my %netsettings = ();
my $message = "";
my $errormessage = "";
my @Logs = qx(ls /var/ipfire/tripwire/report/);
my $Log =$Lang::tr{'no log selected'};
############################################################################################################################
################################################# Tripwire Default Variablen ################################################
$tripwiresettings{'ROOT'} = '/usr/sbin';
$tripwiresettings{'POLFILE'} = '/var/ipfire/tripwire/tw.pol';
$tripwiresettings{'DBFILE'} = '/var/ipfire/tripwire/$(HOSTNAME).twd';
$tripwiresettings{'REPORTFILE'} = '/var/ipfire/tripwire/report/$(HOSTNAME)-$(DATE).twr';
$tripwiresettings{'SITEKEYFILE'} = '/var/ipfire/tripwire/site.key';
$tripwiresettings{'LOCALKEYFILE'} = '/var/ipfire/tripwire/$(HOSTNAME)-local.key';
$tripwiresettings{'EDITOR'} = '/usr/bin/vi';
$tripwiresettings{'LATEPROMPTING'} = 'false';
$tripwiresettings{'LOOSEDIRECTORYCHECKING'} = 'false';
$tripwiresettings{'MAILNOVIOLATIONS'} = 'false';
$tripwiresettings{'EMAILREPORTLEVEL'} = '3';
$tripwiresettings{'REPORTLEVEL'} = '3';
$tripwiresettings{'MAILMETHOD'} = 'SENDMAIL';
$tripwiresettings{'SMTPHOST'} = 'ipfire.myipfire.de';
$tripwiresettings{'SMTPPORT'} = '25';
$tripwiresettings{'SYSLOGREPORTING'} = 'false';
$tripwiresettings{'MAILPROGRAM'} = '/usr/sbin/sendmail -oi -t';
$tripwiresettings{'SITEKEY'} = 'IPFire';
$tripwiresettings{'LOCALKEY'} = 'IPFire';
$tripwiresettings{'ACTION'} = '';
############################################################################################################################
######################################################### Tripwire HTML Part ###############################################
&Header::showhttpheaders();
&Header::getcgihash(\%tripwiresettings);
&Header::openpage('Tripwire', 1, '');
&Header::openbigbox('100%', 'left', '', $errormessage);
############################################################################################################################
############################################### Tripwire Config Datei erstellen ############################################
if ($tripwiresettings{'ACTION'} eq $Lang::tr{'save'})
{
system("/usr/local/bin/tripwirectrl readconfig");
open (FILE, ">${General::swroot}/tripwire/tw.cfg") or die "Can't save tripwire config: $!";
flock (FILE, 2);
print FILE <<END
ROOT =$tripwiresettings{'ROOT'}
POLFILE =$tripwiresettings{'POLFILE'}
DBFILE =$tripwiresettings{'DBFILE'}
REPORTFILE =$tripwiresettings{'REPORTFILE'}
SITEKEYFILE =$tripwiresettings{'SITEKEYFILE'}
LOCALKEYFILE =$tripwiresettings{'LOCALKEYFILE'}
EDITOR =$tripwiresettings{'EDITOR'}
LATEPROMPTING =$tripwiresettings{'LATEPROMPTING'}
LOOSEDIRECTORYCHECKING =$tripwiresettings{'LOOSEDIRECTORYCHECKING'}
MAILNOVIOLATIONS =$tripwiresettings{'MAILNOVIOLATIONS'}
EMAILREPORTLEVEL =$tripwiresettings{'EMAILREPORTLEVEL'}
REPORTLEVEL =$tripwiresettings{'REPORTLEVEL'}
MAILMETHOD =$tripwiresettings{'MAILMETHOD'}
SMTPHOST =$tripwiresettings{'SMTPHOST'}
SMTPPORT =$tripwiresettings{'SMTPPORT'}
SYSLOGREPORTING =$tripwiresettings{'SYSLOGREPORTING'}
MAILPROGRAM =$tripwiresettings{'MAILPROGRAM'}
END
;
close FILE;
&General::writehash("${General::swroot}/tripwire/settings", \%tripwiresettings);
system("/usr/local/bin/tripwirectrl lockconfig");
}
############################################################################################################################
################################################## Sicherheitsabfrage f<>r CGI ##############################################
if ($tripwiresettings{'ACTION'} eq 'globalreset')
{
print <<END
<br />
<table width='95%' cellspacing='0'>
<tr><td bgcolor='${Header::table1colour}' colspan='2' align='center'><b>$Lang::tr{'resetglobals'}</b>
<tr><td colspan='2' align='center'><font color=red>$Lang::tr{'defaultwarning'}<br /><br /></font></td></tr>
<tr><td align='right' width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
$Lang::tr{'yes'} <input type='image' alt='$Lang::tr{'yes'}' src='/images/edit-redo.png' />
<input type='hidden' name='ACTION' value='globalresetyes' /></form></td>
<td align='left' width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='image' alt='$Lang::tr{'no'}' src='/images/dialog-error.png' /> $Lang::tr{'no'}
<input type='hidden' name='ACTION' value='cancel' /></form></td>
</tr>
</table>
END
;
}
if ($tripwiresettings{'ACTION'} eq 'generatepolicypw')
{
print <<END
<br />
<table width='95%' cellspacing='0'>
<tr><td bgcolor='${Header::table1colour}' colspan='2' align='center'><b>$Lang::tr{'generatepolicy'}</b>
<tr><td colspan='2' align='center'><font color=red>$Lang::tr{'tripwirewarningpolicy'}<br /><br /></font></td></tr>
<tr><td align='left' width='40%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>$Lang::tr{'sitekey'}</td><td align='left'><input type='password' name='SITEKEY' value='$tripwiresettings{'SITEKEY'}' size="30" /></td></tr>
<tr><td align='right' width='50%'>
$Lang::tr{'yes'} <input type='image' alt='$Lang::tr{'yes'}' src='/images/edit-redo.png' />
<input type='hidden' name='ACTION' value='generatepolicy' /></form></td>
<td align='left' width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='image' alt='$Lang::tr{'no'}' src='/images/dialog-error.png' /> $Lang::tr{'no'}
<input type='hidden' name='ACTION' value='cancel' /></form></td>
</tr>
</table>
END
;
}
if ($tripwiresettings{'ACTION'} eq 'policyresetpw')
{
print <<END
<br />
<table width='95%' cellspacing='0'>
<tr><td bgcolor='${Header::table1colour}' colspan='2' align='center'><b>$Lang::tr{'resetpolicy'}</b>
<tr><td colspan='2' align='center'><font color=red>$Lang::tr{'tripwirewarningpolicy'}<br /><br /></font></td></tr>
<tr><td align='left' width='40%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>$Lang::tr{'sitekey'}</td><td align='left'><input type='password' name='SITEKEY' value='$tripwiresettings{'SITEKEY'}' size="30" /></td></tr>
<tr><td align='right' width='50%'>
$Lang::tr{'yes'} <input type='image' alt='$Lang::tr{'yes'}' src='/images/edit-redo.png' />
<input type='hidden' name='ACTION' value='resetpolicyyes' /></form></td>
<td align='left' width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='image' alt='$Lang::tr{'no'}' src='/images/dialog-error.png' /> $Lang::tr{'no'}
<input type='hidden' name='ACTION' value='cancel' /></form></td>
</tr>
</table>
END
;
}
if ($tripwiresettings{'ACTION'} eq 'updatedatabasepw')
{
print <<END
<br />
<table width='95%' cellspacing='0'>
<tr><td bgcolor='${Header::table1colour}' colspan='2' align='center'><b>$Lang::tr{'updatedatabase'}</b>
<tr><td colspan='2' align='center'><font color=red>$Lang::tr{'tripwirewarningdatabase'}<br /><br /></font></td></tr>
<tr><td align='left' width='40%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>$Lang::tr{'localkey'}</td><td align='left'><input type='password' name='LOCALKEY' value='$tripwiresettings{'LOCALKEY'}' size="30" /></td></tr>
<tr><td align='right' width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
$Lang::tr{'yes'} <input type='image' alt='$Lang::tr{'yes'}' src='/images/edit-redo.png' />
<input type='hidden' name='ACTION' value='updatedatabaseyes' /></form></td>
<td align='left' width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='image' alt='$Lang::tr{'no'}' src='/images/dialog-error.png' /> $Lang::tr{'no'}
<input type='hidden' name='ACTION' value='cancel' /></form></td>
</tr>
</table>
END
;
}
if ($tripwiresettings{'ACTION'} eq 'keyreset')
{
print <<END
<br />
<table width='95%' cellspacing='0'>
<tr><td bgcolor='${Header::table1colour}' colspan='2' align='center'><b>$Lang::tr{'keyreset'}</b>
<tr><td colspan='2' align='center'><font color=red>$Lang::tr{'tripwirewarningkeys'}<br /><br /></font></td></tr>
<tr><td align='right' width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
$Lang::tr{'yes'} <input type='image' alt='$Lang::tr{'yes'}' src='/images/edit-redo.png' />
<input type='hidden' name='ACTION' value='keyresetyes' /></form></td>
<td align='left' width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='image' alt='$Lang::tr{'no'}' src='/images/dialog-error.png' /> $Lang::tr{'no'}
<input type='hidden' name='ACTION' value='cancel' /></form></td>
</tr>
</table>
END
;
}
if ($tripwiresettings{'ACTION'} eq 'generatekeys')
{
print <<END
<br />
<table width='95%' cellspacing='0'>
<tr><td bgcolor='${Header::table1colour}' colspan='2' align='center'><b>$Lang::tr{'generatekeys'}</b>
<tr><td colspan='2' align='center'><font color=red>$Lang::tr{'tripwirewarningkeys'}<br /><br /></font></td></tr>
<tr><td align='right' width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
$Lang::tr{'yes'} <input type='image' alt='$Lang::tr{'yes'}' src='/images/edit-redo.png' />
<input type='hidden' name='ACTION' value='generatekeysyes' /></form></td>
<td align='left' width='50%'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='image' alt='$Lang::tr{'no'}' src='/images/dialog-error.png' /> $Lang::tr{'no'}
<input type='hidden' name='ACTION' value='cancel' /></form></td>
</tr>
</table>
END
;
}
############################################################################################################################
######################################################## Tripwire Funktionen ###############################################
if ($tripwiresettings{'ACTION'} eq 'globalresetyes'){system("/usr/local/bin/tripwirectrl globalreset");}
if ($tripwiresettings{'ACTION'} eq 'generatekeysyes'){system("/usr/local/bin/tripwirectrl keys $tripwiresettings{'SITEKEY'} $tripwiresettings{'LOCALKEY'}");$tripwiresettings{'SITEKEY'} = 'IPFire';$tripwiresettings{'LOCALKEY'} = 'IPFire';}
if ($tripwiresettings{'ACTION'} eq 'keyresetyes'){system("/usr/local/bin/tripwirectrl keys IPFire IPFire");$tripwiresettings{'SITEKEY'} = 'IPFire';$tripwiresettings{'LOCALKEY'} = 'IPFire';}
if ($tripwiresettings{'ACTION'} eq 'resetpolicyyes'){system("/usr/local/bin/tripwirectrl resetpolicy tripwiresettings{'SITEKEY'}");$tripwiresettings{'SITEKEY'} = 'IPFire';}
if ($tripwiresettings{'ACTION'} eq 'generatepolicyyes'){system("/usr/local/bin/tripwirectrl generatepolicy $tripwiresettings{'SITEKEY'}");$tripwiresettings{'SITEKEY'} = 'IPFire';}
if ($tripwiresettings{'ACTION'} eq 'updatedatabaseyes'){system("/usr/local/bin/tripwirectrl updatedatabase $tripwiresettings{'LOCALKEY'}");$tripwiresettings{'LOCALKEY'} = 'IPFire';}
if ($tripwiresettings{'ACTION'} eq 'generatereport'){system("/usr/local/bin/tripwirectrl generatereport");}
############################################################################################################################
##################################################### Tripwire globale Optionen ############################################
&Header::openbox('100%', 'center', 'Tripwire');
print <<END
<hr />
<br />
<form method='post' action='$ENV{'SCRIPT_NAME'}'>
<table width='95%' cellspacing='0'>
<tr bgcolor='${Header::table1colour}'><td colspan='2' align='left'><b>$Lang::tr{'basic options'}</b></td></tr>
<tr><td align='left' width='40%'>$Lang::tr{'emailreportlevel'}</td><td align='left'><input type='text' name='EMAILREPORTLEVEL' value='$tripwiresettings{'EMAILREPORTLEVEL'}' size="30" /></td></tr>
<tr><td align='left' width='40%'>$Lang::tr{'reportlevel'}</td><td align='left'><input type='text' name='REPORTLEVEL' value='$tripwiresettings{'REPORTLEVEL'}' size="30" /></td></tr>
<tr><td align='left' width='40%'>$Lang::tr{'mailmethod'}</td><td align='left'><input type='text' name='MAILMETHOD' value='$tripwiresettings{'MAILMETHOD'}' size="30" /></td></tr>
<tr><td align='left' width='40%'>$Lang::tr{'smtphost'}</td><td align='left'><input type='text' name='SMTPHOST' value='$tripwiresettings{'SMTPHOST'}' size="30" /></td></tr>
<tr><td align='left' width='40%'>$Lang::tr{'smtpport'}</td><td align='left'><input type='text' name='SMTPPORT' value='$tripwiresettings{'SMTPPORT'}' size="30" /></td></tr>
<tr><td align='left' width='40%'>$Lang::tr{'mailprogramm'}</td><td align='left'><input type='text' name='MAILPROGRAM' value='$tripwiresettings{'MAILPROGRAM'}' size="30" /></td></tr>
</table>
<br />
<table width='10%' cellspacing='0'>
<tr><td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='ACTION' value=$Lang::tr{'save'} />
<input type='image' alt='$Lang::tr{'save'}' src='/images/media-floppy.png' /></form></td>
<td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='ACTION' value='globalreset' />
<input type='image' alt='$Lang::tr{'reset'}' src='/images/reload.gif' /></form></td>
<td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='ACTION' value='globalcaption' />
<input type='image' alt='$Lang::tr{'caption'}' src='/images/help-browser.png' /></form></td></tr>
</table>
</from>
END
;
if ($tripwiresettings{'ACTION'} eq 'globalcaption')
{
print <<END
<br />
<table width='95%' cellspacing='0'>
<tr><td align='center' colspan='2'><b>$Lang::tr{'caption'}</b></td></tr>
<tr><td align='right' width='33%'><img src='/images/media-floppy.png' /></td><td align='left'>$Lang::tr{'save settings'}</td></tr>
<tr><td align='right' width='33%'><img src='/images/reload.gif' /></td><td align='left'>$Lang::tr{'restore settings'}</td></tr>
</table>
END
;
}
&Header::closebox();
############################################################################################################################
################################################### Tripwire Init Policy and keygen ########################################
&Header::openbox('100%', 'center', $Lang::tr{'generate tripwire keys and init'});
print <<END
<hr />
<br />
<form method='post' action='$ENV{'SCRIPT_NAME'}'>
<table width='95%' cellspacing='0'>
<tr bgcolor='${Header::table1colour}'><td colspan='2' align='left'><b>$Lang::tr{'keys'}</b></td></tr>
<tr><td align='left' width='40%'>$Lang::tr{'sitekey'}</td><td align='left'><input type='password' name='SITEKEY' value='$tripwiresettings{'SITEKEY'}' size="30" /></td></tr>
<tr><td align='left' width='40%'>$Lang::tr{'localkey'}</td><td align='left'><input type='password' name='LOCALKEY' value='$tripwiresettings{'LOCALKEY'}' size="30" /></td></tr>
</table>
<br />
<table width='10%' cellspacing='0'>
<tr><td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='ACTION' value='generatekeys'/>
<input type='image' alt='$Lang::tr{'generatekeys'}' src='/images/system-lock-screen.png' /></form></td>
<td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='ACTION' value='keyreset' />
<input type='image' alt='$Lang::tr{'reset'}' src='/images/reload.gif' /></form></td>
<td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='ACTION' value='keycaption' />
<input type='image' alt='$Lang::tr{'caption'}' src='/images/help-browser.png' /></form></td></tr>
</table>
</from>
END
;
if ($tripwiresettings{'ACTION'} eq 'keycaption')
{
print <<END
<br />
<table width='95%' cellspacing='0'>
<tr><td align='center' colspan='2'><b>$Lang::tr{'caption'}</b></td></tr>
<tr><td align='right' width='33%'><img src='/images/system-lock-screen.png' /></td><td align='left'>$Lang::tr{'generatekeys'}</td></tr>
<tr><td align='right' width='33%'><img src='/images/reload.gif' /></td><td align='left'>$Lang::tr{'keyreset'}</td></tr>
</table>
END
;
}
&Header::closebox();
############################################################################################################################
################################################# Tripwire general functions ###############################################
&Header::openbox('100%', 'center', $Lang::tr{'tripwire functions'});
print <<END
<hr />
<br />
<table width='95%' cellspacing='0'>
<tr><td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='ACTION' value='generatepolicypw'/>
<input type='image' alt='$Lang::tr{'generatepolicy'}' src='/images/document-new.png' /></form></td>
<td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='ACTION' value='policyresetpw' />
<input type='image' alt='$Lang::tr{'resetpolicy'}' src='/images/reload.gif' /></form></td>
<td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='ACTION' value='generatereport' />
<input type='image' alt='$Lang::tr{'generatereport'}' src='/images/document-properties.png' /></form></td>
<td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='ACTION' value='updatedatabasepw' />
<input type='image' alt='$Lang::tr{'updatedatabase'}' src='/images/network-server.png' /></form></td>
<td align='center'><form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='ACTION' value='policycaption' />
<input type='image' alt='$Lang::tr{'caption'}' src='/images/help-browser.png' /></form></td></tr>
</table>
END
;
if ($tripwiresettings{'ACTION'} eq 'policycaption')
{
print <<END
<br />
<table width='95%' cellspacing='0'>
<tr><td align='center' colspan='2'><b>$Lang::tr{'caption'}</b></td></tr>
<tr><td align='right' width='33%'><img src='/images/document-new.png' /></td><td align='left'>$Lang::tr{'generatepolicy'}</td></tr>
<tr><td align='right' width='33%'><img src='/images/reload.gif' /></td><td align='left'>$Lang::tr{'resetpolicy'}</td></tr>
<tr><td align='right' width='33%'><img src='/images/document-properties.png' /></td><td align='left'>$Lang::tr{'generatereport'}</td></tr>
<tr><td align='right' width='33%'><img src='/images/network-server.png' /></td><td align='left'>$Lang::tr{'updatedatabase'}</td></tr>
</table>
END
;
}
&Header::closebox();
############################################################################################################################
####################################################### Tripwire Init Policy ###############################################
&Header::openbox('100%', 'center', $Lang::tr{'tripwire reports'});
print <<END
<hr />
<br />
<form method='post' action='$ENV{'SCRIPT_NAME'}'>
<table width='95%' cellspacing='0'>
<tr><td bgcolor='${Header::table1colour}' colspan='3' align='left'><b>$Lang::tr{'log view'}</b></td></tr>
<tr><td colspan='3' align='left'><br /></td></tr>
<tr><td align='left'><select name='LOG' style="width: 500px">
END
;
foreach my $log (@Logs) {chomp $log;print"<option value='$log'>$log</option>";}
print <<END
</select></td><td align='left'><input type='hidden' name='ACTION' value='showlog' /><input type='image' alt='view Log' src='/images/format-justify-fill.png' /></td></tr>
</table>
</form>
END
;
if ($tripwiresettings{'ACTION'} eq 'showlog')
{
$Log = qx(/usr/local/bin/tripwirectrl tripwirelog $tripwiresettings{'LOG'});
#$Log=~s/\n/<br \/>/g;
#$Log=~s/\t/.... /g;
print <<END
<table width='95%' cellspacing='0'>
<tr><td><br /></td></tr>
<tr><td><pre>LOG - $Log </pre></td></tr>
<tr><td><br /></td></tr>
<tr><td align=center>$tripwiresettings{'LOG'}</td></tr>
</table>
END
;
}
&Header::closebox();
&Header::closebigbox();
&Header::closepage();

View File

@@ -38,6 +38,7 @@
'action' => 'Aktion',
'activate' => 'aktivieren',
'activate user' => 'Benutzer aktivieren',
'active' => 'aktiv',
'add' => 'Hinzufügen',
'add a host' => 'Host hinzufügen:',
'add a new rule' => 'Neue Regel hinzufügen:',
@@ -442,6 +443,7 @@
'day after' => 'Tag danach',
'day before' => 'Tag davor',
'days' => 'Tage',
'dbfile' => 'Dbfile',
'ddns help dnsmadeeasy' => 'Tragen Sie Ihre ID (oder ID Liste durch ; getrennt) in das Feld "Hostname" ein',
'ddns help freedns' => 'Tragen Sie den Connect String im Feld "Benutzername" ein',
'ddns help plus' => '<b>+</b> kennzeichnet ein Pflichtfeld',
@@ -459,6 +461,7 @@
'default networks' => 'Standard Netzwerke',
'default renewal time' => 'Standard-Aktualisierungszeit',
'default services' => 'Standard Dienste',
'defaultwarning' => 'ACHTUNG - Ihre Einstellungen gehen hiermit verloren und werden durch die Standarteinstellungen ersetzt.',
'delete' => 'Löschen',
'delete pc' => 'PC löschen',
'delete share' => 'Freigabe löschen',
@@ -572,7 +575,9 @@
'edit network' => 'Netzwerk bearbeiten',
'edit service' => 'Dienst bearbeiten',
'edit share' => 'Freigabe bearbeiten',
'editor' => 'Editor',
'eg' => 'z.B.:',
'emailreportlevel' => 'Email Reportlevel',
'empty' => 'Dieses Feld kann leer bleiben',
'empty profile' => 'Unbenannt',
'enable ignore filter' => '&quot;Ignorieren&quot;-Filter ein',
@@ -649,6 +654,10 @@
'generate' => 'Root/Host Zertifikate generieren',
'generate a certificate' => 'Erzeuge ein Zertifikat:',
'generate root/host certificates' => 'Erzeuge Root/Host Zertifikate',
'generate tripwire keys and init' => 'Tripwire Initalisierung',
'generatekeys' => 'Neue Schlüssel erzeugen',
'generatepolicy' => 'Neue Policy erstellen',
'generatereport' => 'Neuen Report erstellen',
'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.',
'genkey' => 'PSK erzeugen',
'global settings' => 'Globale Einstellungen',
@@ -709,6 +718,7 @@
'import' => 'Import',
'importkey' => 'PSK importieren',
'in' => 'Ein',
'inactive' => 'inaktiv',
'incoming traffic in bytes per second' => 'Eingehender Verkehr in Bytes pro Sekunde',
'incorrect password' => 'Fehlerhaftes Passwort',
'info' => 'Info',
@@ -816,9 +826,12 @@
'kernel logging server' => 'Kernel-Protokollierungs-Server',
'kernel version' => 'Kernel-Version:',
'key stuff' => '2. Keys und Zertifikate',
'keyreset' => 'Schlüssel zurück setzen',
'keys' => 'Schlüssel',
'lan' => 'LAN',
'languagepurpose' => 'Wählen Sie eine Sprache, in der IPFire angezeigt werden soll:',
'last activity' => 'Letzte Aktivitaet',
'lateprompting' => 'Late prompting',
'lease expires' => 'Zuordnung verfällt',
'legend' => 'Legende',
'line' => 'Leitung',
@@ -830,6 +843,8 @@
'local subnet' => 'Lokales Subnetz:',
'local subnet is invalid' => 'Lokales Subnet ist ungültig.',
'local vpn hostname/ip' => 'Lokaler VPN Hostname/IP',
'localkey' => 'Localkey',
'localkeyfile' => 'Localkeyfile',
'log' => 'Protokoll:',
'log enabled' => 'Log aktiviert',
'log level' => 'Log Level',
@@ -846,6 +861,7 @@
'logging server' => 'Protokollierungs-Server',
'loginlogout' => 'Login/Logout',
'lookup failed' => 'Reverse Lookup gescheitert',
'loosedirectorychecking' => 'Loose directorychecking',
'low' => 'Niedrig',
'ls_dhcpd' => 'DHCP-Server:',
'ls_disk space' => 'Plattenplatz:',
@@ -860,6 +876,8 @@
'mac address' => 'MAC-Adresse',
'mac address in use' => 'MAC-Adresse bereits vergeben',
'magic packet send to:' => 'Sende WOL-Paket an',
'mailmethod' => 'Mail Methode',
'mailprogramm' => 'Mail Programm',
'main page' => 'Startseite',
'manage ovpn' => '5. Tunnel Management',
'manage shares' => 'Freigaben verwalten',
@@ -1048,6 +1066,7 @@
'phonebook entry' => 'Telefonbuch-Eintrag:',
'ping disabled' => 'Ping Antwort deaktivieren',
'pkcs12 file password' => 'PKCS12 Datei-Passwort',
'polfile' => 'Polfile',
'port' => 'Port',
'port forwarding configuration' => 'Konfiguration der Port-Weiterleitung',
'ports' => 'Ports',
@@ -1110,11 +1129,16 @@
'remove' => 'Löschen',
'remove ca certificate' => 'CA-Zertifikat entfernen',
'remove x509' => 'Entferne alle CA und Zertifizikate',
'reportfile' => 'Reportfile',
'reportlevel' => 'Report Level',
'requested data' => '1. Verbindungs Einstellungen',
'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:',
'reset' => 'Zurück setzen',
'reset shares' => 'Freigaben zurücksetzen',
'resetglobals' => 'Globale Einstellungen zurücksetzen',
'resetpolicy' => 'Policy zurück setzen',
'resetshares' => 'Shares zurücksetzen?',
'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',
'restart' => 'Neustart',
'restart ovpn server' => 'OpenVPN Server neu starten',
@@ -1123,6 +1147,7 @@
'restore hardware settings' => 'Hardware-Einstellungen wiederherstellen',
'restore settings' => 'Einstellungen wiederherstellen',
'reverse sort' => 'In umgekehrter chronologischer Reihenfolge sortieren',
'root' => 'Root',
'root certificate' => 'Root-Zertifikat',
'root path' => 'Root-Pfad',
'root user password' => 'Root Passwort',
@@ -1191,10 +1216,14 @@
'shutdown2' => 'Herunterfahren:',
'shutting down' => 'Fahre herunter',
'shutting down ipfire' => 'Fahre IPFire herunter',
'sitekey' => 'Sitekey',
'sitekeyfile' => 'Sitekeyfile',
'size' => 'Größe',
'smbreload' => 'Samba Dienste durchstarten',
'smbstart' => 'Samba Dienste starten',
'smbstop' => 'Samba Dienste beenden',
'smtphost' => 'Smtp Host',
'smtpport' => 'Smtp Port',
'snort hits' => 'Gesamtanzahl der aktivierten Intrusion-Regeln für',
'sort ascending' => 'Sortiere aufsteigend',
'sort descending' => 'Sortiere absteigend',
@@ -1297,6 +1326,11 @@
'traffic shaping settings' => 'Einstellungen der Datenflußkontrolle',
'transfer limits' => 'Transferbeschränkungen',
'transparent on' => 'Transparent auf',
'tripwire functions' => 'Tripwire Funktionen',
'tripwire reports' => 'Tripwire Reports',
'tripwirewarningdatabase' => 'ACHTUNG - Ihre Datenbank wird auf den Stand des letzten Reports gesetzt, bitte versichern sie sich, dass keine unautorisiertend Änderungen vorgenommen wurden. Hierfür wird der Local-Key benötigt.',
'tripwirewarningkeys' => 'ACHTUNG - Sie löschen hiermit ihre bestehenden Schlüssel, ihre Konfiguration und Datenbank und legen Alles neu an.',
'tripwirewarningpolicy' => 'ACHTUNG - Ihr Policy wird neu erzeugt, anschließen wird die Datenbank neu initialisiert. Hierfür wird der Site-Key benötigt.',
'tuesday' => 'Dienstag',
'type' => 'Typ',
'umount' => 'Abmelden',
@@ -1312,6 +1346,7 @@
'update' => 'Aktualisieren',
'update time' => 'Aktualisiere die Uhrzeit:',
'update transcript' => 'Aktualisieren',
'updatedatabase' => 'Datenbank auf Stand der letzten Reports setzen',
'updates' => 'Updates',
'updates installed' => 'Updates wurden installiert',
'updates is old1' => 'Ihre Update-Datei ist ',

View File

@@ -38,6 +38,7 @@
'action' => 'Action',
'activate' => 'activate',
'activate user' => 'activate user',
'active' => 'active',
'add' => 'Add',
'add a host' => 'Add a host:',
'add a new rule' => 'Add a new rule:',
@@ -460,6 +461,7 @@
'day after' => 'Day after',
'day before' => 'Day before',
'days' => 'days',
'dbfile' => 'Dbfile',
'ddns hostname added' => 'Dynamic DNS hostname added',
'ddns hostname modified' => 'Dynamic DNS hostname modified',
'ddns hostname removed' => 'Dynamic DNS hostname removed',
@@ -474,6 +476,7 @@
'default networks' => 'Default networks',
'default renewal time' => 'Default Renewal Time',
'default services' => 'Default services',
'defaultwarning' => 'WARNING - Your settings will be lost and replaced by the default ones.',
'delete' => 'Delete',
'delete pc' => 'delete workstation',
'delete share' => 'delete share',
@@ -585,7 +588,9 @@
'edit network' => 'Edit network',
'edit service' => 'Edit service',
'edit share' => 'edit share',
'editor' => 'Editor',
'eg' => 'e.g:',
'emailreportlevel' => 'Emailreportlevel',
'empty' => 'This field may be left blank',
'empty profile' => 'empty',
'enable ignore filter' => 'Enable ignore filter',
@@ -662,6 +667,10 @@
'generate' => 'Generate Root/Host Zertifikate',
'generate a certificate' => 'Generate a certificate:',
'generate root/host certificates' => 'Generate Root/Host Certificates',
'generate tripwire keys and init' => 'generate tripwire keys and init',
'generatekeys' => 'Generate Keys',
'generatepolicy' => 'Generate new Policy',
'generatereport' => 'Generate new Report',
'generating the root and host certificates may take a long time. it can take up to several minutes on older hardware. please be patient' => 'Generating the root and host certificates may take a long time. It can take up to several minutes on older hardware. Please be patient.',
'genkey' => 'Generate PSK',
'global settings' => 'Global settings',
@@ -722,6 +731,7 @@
'import' => 'Import',
'importkey' => 'Import PSK',
'in' => 'In',
'inactive' => 'inactive',
'incoming traffic in bytes per second' => 'Incoming Traffic in Bytes per Second',
'incorrect password' => 'Incorrect password',
'info' => 'Info',
@@ -831,9 +841,12 @@
'kernel logging server' => 'Kernel logging server',
'kernel version' => 'Kernel version:',
'key stuff' => '2. Keys and Certificates',
'keyreset' => 'Reset Keys',
'keys' => 'keys',
'lan' => 'LAN',
'languagepurpose' => 'Select the language you wish IPFire to display in:',
'last activity' => 'Last Activity',
'lateprompting' => 'Lateprompting',
'lease expires' => 'Lease expires',
'legend' => 'Legend',
'line' => 'Line',
@@ -845,6 +858,8 @@
'local subnet' => 'Local Subnet:',
'local subnet is invalid' => 'Local subnet is invalid.',
'local vpn hostname/ip' => 'Local VPN Hostname/IP',
'localkey' => 'Localkey',
'localkeyfile' => 'Localkeyfile',
'log' => 'Log:',
'log enabled' => 'Log Enabled',
'log level' => 'Log Level',
@@ -853,7 +868,7 @@
'log settings' => 'Log Settings',
'log summaries' => 'Log summaries',
'log summary' => 'Log Summary',
'log view' => 'log view',
'log view' => 'Log View',
'log viewer' => 'Log viewer',
'log viewing options' => 'Log viewing options',
'log-options' => 'Logfile options',
@@ -861,6 +876,7 @@
'logging server' => 'Logging server',
'loginlogout' => 'Login/Logout',
'lookup failed' => 'Reverse lookup failed',
'loosedirectorychecking' => 'Loosedirectorychecking',
'low' => 'Low',
'ls_dhcpd' => 'DHCP Server:',
'ls_disk space' => 'Disk space:',
@@ -875,9 +891,11 @@
'mac address' => 'MAC Address',
'mac address in use' => 'MAC address already in use',
'magic packet send to:' => 'Magic packet send to:',
'mailmethod' => 'Mailmethod',
'mailprogramm' => 'Mailprogramm',
'main page' => 'Main page',
'manage ovpn' => '5. Tunnel Management:',
'manage shares' => 'manage shares',
'manage shares' => 'Manage Shares',
'manual' => 'Manual',
'manual control and status' => 'Manual control and status:',
'manually' => 'Manually',
@@ -1063,6 +1081,7 @@
'phonebook entry' => 'Phonebook entry:',
'ping disabled' => 'Disable ping response',
'pkcs12 file password' => 'PKCS12 File Password',
'polfile' => 'Polfile',
'port' => 'Port',
'port forwarding configuration' => 'Port forwarding configuration',
'ports' => 'Ports',
@@ -1122,11 +1141,16 @@
'remote subnet is invalid' => 'Remote subnet is invalid.',
'remove' => 'Remove',
'remove ca certificate' => 'Remove CA Certificate',
'reportfile' => 'Reportfile',
'reportlevel' => 'Reportlevel',
'requested data' => '1. Connection Settings:',
'reserved dst port' => 'Destination port is reserved for IPFire use only:',
'reserved src port' => 'Source port is reserved for IPFire use only:',
'reset' => 'Reset',
'reset shares' => 'reset share',
'resetglobals' => 'reset global settings',
'resetpolicy' => 'Reset policy to default',
'resetshares' => 'reset shares?',
'resetting the vpn configuration will remove the root ca, the host certificate and all certificate based connections' => 'Resetting the VPN configuration will remove the root CA, the host certificate and all certificate based connections',
'restart' => 'Restart',
'restart ovpn server' => 'Restart OpenVPN Server',
@@ -1135,6 +1159,7 @@
'restore hardware settings' => 'Restore hardware settings',
'restore settings' => 'Reset Settings',
'reverse sort' => 'Sort in reverse chronological order',
'root' => 'Root',
'root certificate' => 'Root Certificate',
'root user password' => 'root password',
'route subnet is invalid' => 'Additional push route subnet is invalid',
@@ -1204,10 +1229,14 @@
'shutdown2' => 'Shutdown:',
'shutting down' => 'Shutting down',
'shutting down ipfire' => 'Shutting down IPFire',
'sitekey' => 'Sitekey',
'sitekeyfile' => 'Sitekeyfile',
'size' => 'Size',
'smbreload' => 'Samba Dienste durchstarten',
'smbstart' => 'Samba Dienste starten',
'smbstop' => 'Samba Dienste beenden',
'smtphost' => 'Smtp Host',
'smtpport' => 'Smtp Port',
'snort hits' => 'Total of number of Intrusion rules activated for',
'sort ascending' => 'Sort Ascending',
'sort descending' => 'Sort Descending',
@@ -1319,8 +1348,13 @@
'trafficto' => 'To',
'transfer limits' => 'Transfer limits',
'transparent on' => 'Transparent on',
'tripwire functions' => 'tripwire functions',
'tripwire reports' => 'tripwire reports',
'tripwirewarningdatabase' => 'WARNING - Your Database will be updated with the data of the last report. Please ensure that no unauthorized changes are reported. Therefor the Local-Key is needed.',
'tripwirewarningkeys' => 'WARNING - This will erase your current keys, config, and database and generate them new.',
'tripwirewarningpolicy' => 'WARNING - Your policy will be rebuild, after that your database will be reinitalised. Therefor the Site-Key ist neeeded.',
'tuesday' => 'Tuesday',
'type' => 'Type',
'type' => 'type',
'unable to alter profiles while red is active' => 'Unable to alter profiles while RED is active.',
'unable to contact' => 'Unable to contact',
'unencrypted' => 'Unencrypted',
@@ -1332,6 +1366,7 @@
'update' => 'Update',
'update time' => 'Update the time:',
'update transcript' => 'Update transcript',
'updatedatabase' => 'Update Database with last Report',
'updates' => 'Updates',
'updates installed' => 'Updates Installed',
'updates is old1' => 'Your update file is ',

View File

@@ -91,4 +91,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
cp -vf $(DIR_APP)/bin/$$i /usr/sbin; \
done
@rm -rf $(DIR_APP)
cp -vrf $(DIR_SRC)/config/tripwire/* /var/ipfire/tripwire/
cp -vfp /var/ipfire/tripwire/twcfg.txt /var/ipfire/tripwire/twcfg.default
cp -vfp /var/ipfire/tripwire/twpol.txt /var/ipfire/tripwire/twpol.default
@$(POSTBUILD)

View File

@@ -77,24 +77,28 @@ int main(int argc, char *argv[])
if (strcmp(argv[1], "smbstop")==0)
{
safe_system("/etc/rc.d/init.d/samba stop");
printf(command);
return 0;
}
if (strcmp(argv[1], "smbstart")==0)
{
safe_system("/etc/rc.d/init.d/samba start");
printf(command);
return 0;
}
if (strcmp(argv[1], "smbrestart")==0)
{
safe_system("/etc/rc.d/init.d/samba restart");
printf(command);
return 0;
}
if (strcmp(argv[1], "smbreload")==0)
{
safe_system("/etc/rc.d/init.d/samba reload");
printf(command);
return 0;
}

View File

@@ -0,0 +1,107 @@
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <fcntl.h>
#include "setuid.h"
#define BUFFER_SIZE 1024
char command[BUFFER_SIZE];
int main(int argc, char *argv[])
{
if (!(initsetuid()))
exit(1);
// Check what command is asked
if (argc==1)
{
fprintf (stderr, "Missing tripwirectrl command!\n");
return 1;
}
if (strcmp(argv[1], "tripwirelog")==0)
{
char log;
snprintf(command, BUFFER_SIZE-1, "/usr/sbin/twprint -m r --twrfile /var/ipfire/tripwire/report/%s", argv[2]);
log=safe_system(command);
printf(command);
return(log);
}
if (strcmp(argv[1], "generatereport")==0)
{
safe_system("/usr/sbin/tripwire --check --cfgfile /var/ipfire/tripwire/tw.cfg --polfile /var/ipfire/tripwire/tw.cfg");
printf(command);
return 0;
}
if (strcmp(argv[1], "updatedatabase")==0)
{
char file;
file=safe_system("ls -S | tail -1");
snprintf(command, BUFFER_SIZE-1, "/usr/sbin/tripwire --update --accept-all --cfgfile /var/ipfire/tripwire/tw.cfg --polfile /var/ipfire/tripwire/tw.cfg --local-passphrase %s --twrfile %s", argv[2], file);
safe_system(command);
printf(command);
return 0;
}
if (strcmp(argv[1], "keys")==0)
{
snprintf(command, BUFFER_SIZE-1, "rm -rf /var/ipfire/tripwire/site.key && /usr/sbin/twadmin --generate-keys --site-keyfile /var/ipfire/tripwire/site.key --site-passphrase %s && chmod 640 /var/ipfire/tripwire/site.key", argv[2]);
safe_system(command);
printf(command);
snprintf(command, BUFFER_SIZE-1, "rm -rf /var/ipfire/tripwire/$(HOSTNAME)-local.key && /usr/sbin/twadmin --generate-keys --local-keyfile /var/ipfire/tripwire/$(HOSTNAME)-local.key --local-passphrase %s && chmod 640 /var/ipfire/tripwire/$(HOSTNAME)-local.key", argv[3]);
safe_system(command);
printf(command);
snprintf(command, BUFFER_SIZE-1, "rm -rf /var/ipfire/tripwire/tw.cfg && /usr/sbin/twadmin --create-cfgfile --cfgfile /var/ipfire/tripwire/tw.cfg --site-keyfile /var/ipfire/tripwire/site.key --site-passphrase %s /var/ipfire/tripwire/twcfg.txt && chmod 640 /var/ipfire/tripwire/tw.cfg", argv[2]);
safe_system(command);
printf(command);
snprintf(command, BUFFER_SIZE-1, "rm -rf /var/ipfire/tripwire/tw.pol && /usr/sbin/twadmin --create-polfile --cfgfile /var/ipfire/tripwire/tw.cfg --site-keyfile /var/ipfire/tripwire/site.key --site-passphrase %s /var/ipfire/tripwire/twpol.txt && chmod 640 /var/ipfire/tripwire/tw.pol", argv[2]);
safe_system(command);
printf(command);
snprintf(command, BUFFER_SIZE-1, "/usr/sbin/tripwire --init --cfgfile /var/ipfire/tripwire/tw.cfg --polfile /var/ipfire/tripwire/tw.cfg --site-passphrase %s", argv[2]);
safe_system(command);
printf(command);
return 0;
}
if (strcmp(argv[1], "generatepolicy")==0)
{
snprintf(command, BUFFER_SIZE-1, "/usr/sbin/twadmin --generate-polfile --site-keyfile /var/ipfire/tripwire/site.key --site-passphrase %s --polfile /var/ipfire/tripwire/tw.pol --cfgfile /var/ipfire/tripwire/tw.cfg /var/ipfire/tripwire/twpol.txt", argv[2]);
safe_system(command);
printf(command);
snprintf(command, BUFFER_SIZE-1, "/usr/sbin/tripwire --init -c /var/ipfire/tripwire/tw.cfg -p /var/ipfire/tripwire/tw.cfg --site-passphrase %s", argv[2]);
safe_system(command);
printf(command);
return 0;
}
if (strcmp(argv[1], "resetpolicy")==0)
{
snprintf(command, BUFFER_SIZE-1, "/usr/sbin/twadmin --generate-polfile --site-keyfile /var/ipfire/tripwire/site.key --site-passphrase %s --polfile /var/ipfire/tripwire/tw.pol --cfgfile /var/ipfire/tripwire/tw.cfg /var/ipfire/tripwire/twpol.default", argv[2]);
safe_system(command);
printf(command);
snprintf(command, BUFFER_SIZE-1, "/usr/sbin/tripwire --init -c /var/ipfire/tripwire/tw.cfg -p /var/ipfire/tripwire/tw.cfg --site-passphrase %s", argv[2]);
safe_system(command);
printf(command);
return 0;
}
if (strcmp(argv[1], "readconfig")==0)
{
safe_system("/bin/chown nobody:nobody /var/ipfire/tripwire/twcfg.txt");
printf(command);
return 0;
}
if (strcmp(argv[1], "lockconfig")==0)
{
safe_system("/bin/chown root:root /var/ipfire/tripwire/twcfg.txt");
printf(command);
return 0;
}
}