&author.jht;
April 3 2003
Advanced Network Manangement
This section attempts to document peripheral issues that are of great importance to network
administrators who want to improve network resource access control, to automate the user
environment, and to make their lives a little easier.
Remote Server Administration
How do I get 'User Manager' and 'Server Manager'?
Since I don't need to buy an NT4 Server, how do I get the 'User Manager for Domains',
the 'Server Manager'?
Microsoft distributes a version of these tools called nexus for installation on Windows 9x / Me
systems. The tools set includes:
Server Manager
User Manager for Domains
Event Viewer
Click here to download the archived file ftp://ftp.microsoft.com/Softlib/MSLFILES/NEXUS.EXE
The Windows NT 4.0 version of the 'User Manager for
Domains' and 'Server Manager' are available from Microsoft via ftp
from ftp://ftp.microsoft.com/Softlib/MSLFILES/SRVTOOLS.EXE
Network Logon Script Magic
This section needs work. Volunteer contributions most welcome. Please send your patches or updates
to John Terpstra.
There are several opportunities for creating a custom network startup configuration environment.
No Logon Script
Simple universal Logon Script that applies to all users
Use of a conditional Logon Script that applies per user or per group attirbutes
Use of Samba's Preexec and Postexec functions on access to the NETLOGON share to create
a custom Logon Script and then execute it.
User of a tool such as KixStart
The Samba source code tree includes two logon script generation/execution tools. See examples directory genlogon and ntlogon subdirectories.
The following listings are from the genlogon directory.
This is the genlogon.pl file:
#!/usr/bin/perl
#
# genlogon.pl
#
# Perl script to generate user logon scripts on the fly, when users
# connect from a Windows client. This script should be called from smb.conf
# with the %U, %G and %L parameters. I.e:
#
# root preexec = genlogon.pl %U %G %L
#
# The script generated will perform
# the following:
#
# 1. Log the user connection to /var/log/samba/netlogon.log
# 2. Set the PC's time to the Linux server time (which is maintained
# daily to the National Institute of Standard's Atomic clock on the
# internet.
# 3. Connect the user's home drive to H: (H for Home).
# 4. Connect common drives that everyone uses.
# 5. Connect group-specific drives for certain user groups.
# 6. Connect user-specific drives for certain users.
# 7. Connect network printers.
# Log client connection
#($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);
open LOG, ">>/var/log/samba/netlogon.log";
print LOG "$mon/$mday/$year $hour:$min:$sec - User $ARGV[0] logged into $ARGV[1]\n";
close LOG;
# Start generating logon script
open LOGON, ">/shared/netlogon/$ARGV[0].bat";
print LOGON "\@ECHO OFF\r\n";
# Connect shares just use by Software Development group
if ($ARGV[1] eq "SOFTDEV" || $ARGV[0] eq "softdev")
{
print LOGON "NET USE M: \\\\$ARGV[2]\\SOURCE\r\n";
}
# Connect shares just use by Technical Support staff
if ($ARGV[1] eq "SUPPORT" || $ARGV[0] eq "support")
{
print LOGON "NET USE S: \\\\$ARGV[2]\\SUPPORT\r\n";
}
# Connect shares just used by Administration staff
If ($ARGV[1] eq "ADMIN" || $ARGV[0] eq "admin")
{
print LOGON "NET USE L: \\\\$ARGV[2]\\ADMIN\r\n";
print LOGON "NET USE K: \\\\$ARGV[2]\\MKTING\r\n";
}
# Now connect Printers. We handle just two or three users a little
# differently, because they are the exceptions that have desktop
# printers on LPT1: - all other user's go to the LaserJet on the
# server.
if ($ARGV[0] eq 'jim'
|| $ARGV[0] eq 'yvonne')
{
print LOGON "NET USE LPT2: \\\\$ARGV[2]\\LJET3\r\n";
print LOGON "NET USE LPT3: \\\\$ARGV[2]\\FAXQ\r\n";
}
else
{
print LOGON "NET USE LPT1: \\\\$ARGV[2]\\LJET3\r\n";
print LOGON "NET USE LPT3: \\\\$ARGV[2]\\FAXQ\r\n";
}
# All done! Close the output file.
close LOGON;
Those wishing to use more elaborate or capable logon processing system should check out the following sites:
http://www.craigelachie.org/rhacer/ntlogon
http://www.kixtart.org
http://support.microsoft.com/default.asp?scid=kb;en-us;189105
Adding printers without user intervention
Printers may be added automatically during logon script processing through the use of:
rundll32 printui.dll,PrintUIEntry /?
See the documentation in the Microsoft knowledgebase article no: 189105 referred to above.