X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=html%2Fcgi-bin%2Fsamba.cgi;h=0e1409c73bf3294ae76e37e42042ced9b90318bc;hb=0fbba54e825ad4d21762e0deb788ec6614d0e744;hp=27856cab9ba00f6d14c886e9104c35ec82d0c018;hpb=1edfc9c33d798a05e77e99c3f3031b3de6db759a;p=ipfire-2.x.git diff --git a/html/cgi-bin/samba.cgi b/html/cgi-bin/samba.cgi index 27856cab9b..0e1409c73b 100644 --- a/html/cgi-bin/samba.cgi +++ b/html/cgi-bin/samba.cgi @@ -2,7 +2,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2005-2012 IPFire Team # +# Copyright (C) 2005-2013 IPFire Team # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -67,8 +67,7 @@ $ovpnip[3]=$ovpnip[3]+1; ############################################################################################################################ ############################################# Samba Dienste fr Statusberprfung ########################################## -my %servicenames = ('SMB Daemon' => 'smbd','NetBIOS Nameserver' => 'nmbd'); -#my %servicenames = ('SMB Daemon' => 'smbd','NetBIOS Nameserver' => 'nmbd','Winbind Daemon' => 'winbindd'); +my %servicenames = ('SMB Daemon' => 'smbd', 'NetBIOS Nameserver' => 'nmbd', 'Winbind Daemon' => 'winbindd'); &Header::showhttpheaders(); @@ -92,14 +91,14 @@ $sambasettings{'REMOTESYNC'} = ''; $sambasettings{'PASSWORDSYNC'} = 'off'; $sambasettings{'OTHERINTERFACES'} = '127.0.0.1'; $sambasettings{'GUESTACCOUNT'} = 'samba'; -$sambasettings{'MAPTOGUEST'} = 'Never'; +$sambasettings{'MAPTOGUEST'} = 'Bad User'; $sambasettings{'LOGLEVEL'} = '3 passdb:5 auth:5 winbind:2'; $sambasettings{'SYSLOGLEVEL'} = '1'; $sambasettings{'SYSLOGONLY'} = 'on'; $sambasettings{'DOSCHARSET'} = 'CP850'; $sambasettings{'UNIXCHARSET'} = 'UTF8'; $sambasettings{'DISPLAYCHARSET'} = 'CP850'; -$sambasettings{'SOCKETOPTIONS'} = 'TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 SO_KEEPALIVE'; +$sambasettings{'SOCKETOPTIONS'} = 'TCP_NODELAY SO_RCVBUF=819200 SO_SNDBUF=819200 SO_KEEPALIVE'; $sambasettings{'WIDELINKS'} = 'on'; $sambasettings{'UNIXEXTENSION'} = 'off'; $sambasettings{'SMB2'} = 'off'; @@ -149,7 +148,7 @@ if ($sambasettings{'ACTION'} eq 'globalresetyes') system("/usr/local/bin/sambactrl smbglobalreset"); $sambasettings{'WORKGRP'} = 'homeip.net'; $sambasettings{'NETBIOSNAME'} = 'IPFire'; - $sambasettings{'SRVSTRING'} = 'Samba running on IPFire 2.0'; + $sambasettings{'SRVSTRING'} = 'Samba running on IPFire 2.x'; $sambasettings{'INTERFACES'} = ''; $sambasettings{'SECURITY'} = 'share'; $sambasettings{'OSLEVEL'} = '65'; @@ -164,7 +163,7 @@ if ($sambasettings{'ACTION'} eq 'globalresetyes') $sambasettings{'PASSWORDSYNC'} = 'off'; $sambasettings{'OTHERINTERFACES'} = '127.0.0.1'; $sambasettings{'GUESTACCOUNT'} = 'samba'; - $sambasettings{'MAPTOGUEST'} = 'Never'; + $sambasettings{'MAPTOGUEST'} = 'Bad User'; $sambasettings{'LOGLEVEL'} = '3 passdb:5 auth:5 winbind:2'; $sambasettings{'SYSLOGLEVEL'} = '1'; $sambasettings{'SYSLOGONLY'} = 'on'; @@ -183,7 +182,7 @@ if ($sambasettings{'ACTION'} eq 'globalresetyes') $sambasettings{'LOCALMASTER'} = 'off'; $sambasettings{'DOMAINMASTER'} = 'off'; $sambasettings{'PREFERREDMASTER'} = 'off'; - $sambasettings{'SOCKETOPTIONS'} = 'TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 SO_KEEPALIVE'; + $sambasettings{'SOCKETOPTIONS'} = 'TCP_NODELAY SO_RCVBUF=819200 SO_SNDBUF=819200 SO_KEEPALIVE'; $sambasettings{'WIDELINKS'} = 'on'; $sambasettings{'UNIXEXTENSION'} = 'off'; $sambasettings{'SMB2'} = 'off'; @@ -192,6 +191,10 @@ if ($sambasettings{'ACTION'} eq 'globalresetyes') refreshpage(); } +if ($sambasettings{'ACTION'} eq 'join') { + $message .= &joindomain($sambasettings{'USERNAME'}, $sambasettings{'PASSWORD'}); +} + ############################################################################################################################ ################################################ Sicherheitsabfrage für den Reset ########################################## @@ -276,6 +279,7 @@ print FILE </g; + + &Header::openbox('100%', 'left', $Lang::tr{'messages'}); + print "$message\n"; + &Header::closebox(); +} + ############################################################################################################################ ########################################## Aktivieren von Checkboxen und Dropdowns ######################################### @@ -427,6 +444,9 @@ $checked{'VPN'}{'off'} = ''; $checked{'VPN'}{'on'} = ''; $checked{'VPN'}{$sambasettings{'VPN'}} = "checked='checked'"; +if ( $sambasettings{'MAPTOGUEST'} eq "Never" ) { + $sambasettings{'MAPTOGUEST'}="Bad User"; +} $selected{'MAPTOGUEST'}{$sambasettings{'MAPTOGUEST'}} = "selected='selected'"; $selected{'SECURITY'}{$sambasettings{'SECURITY'}} = "selected='selected'"; @@ -437,14 +457,6 @@ $selected{'SECURITY'}{$sambasettings{'SECURITY'}} = "selected='selected'"; print < -END -; -if ( $message ne "" ) - { - print "
$message"; - } - -print <$Lang::tr{'all services'}
END @@ -530,7 +542,6 @@ print <Server @@ -814,10 +825,10 @@ END
$Lang::tr{'map to guest'}
- + +
$Lang::tr{'change passwords'}
$Lang::tr{'username'}
$Lang::tr{'username'}
$Lang::tr{'password'}
-
END @@ -842,7 +853,7 @@ END $Lang::tr{'unix group'} $Lang::tr{'unix shell'} - + END @@ -863,7 +874,7 @@ END $Lang::tr{'unix group'} $Lang::tr{'unix shell'} - + END @@ -873,6 +884,55 @@ END &Header::closebox(); } +if ($sambasettings{'SECURITY'} eq "ADS") { + &Header::openbox('100%', 'center', $Lang::tr{'samba join a domain'}); + + my $AD_DOMAINNAME = uc($mainsettings{'DOMAINNAME'}); + + print < + + + + + + + + + + + + + + + + + + + + + +
+ $Lang::tr{'domain'} + + $AD_DOMAINNAME +
+ $Lang::tr{'administrator username'} + + +
+ $Lang::tr{'administrator password'} + + +
+ +
+ +END + + &Header::closebox(); +} + ############################################################################################################################ ############################################### Verwalten von Freigaben #################################################### @@ -884,27 +944,33 @@ my %shares = config("${General::swroot}/samba/shares"); print <
- - +
$Lang::tr{'manage shares'} -
$Lang::tr{'sharename'}$Lang::tr{'options'}
+ + END ; my @Shares = keys(%shares); my $lines = 0; - +my $col=""; foreach my $shareentry (sort @Shares) { chomp $shareentry; - if ($lines % 2) {print "";} else {print "";} + if ($lines % 2) { + print ""; + $col="bgcolor='$color{'color20'}'"; + } else { + print ""; + $col="bgcolor='$color{'color22'}'"; + } print <$shareentry - + -
$Lang::tr{'manage shares'}
$Lang::tr{'sharename'}$Lang::tr{'options'}
+
$shareentry
+
@@ -1296,3 +1362,13 @@ sub isrunning } return $status; } + +sub joindomain { + my $username = shift; + my $password = shift; + + my @options = ("/usr/local/bin/sambactrl", "join", $username, $password); + my $output = qx(@options); + + return $output; +}