summaryrefslogtreecommitdiff
path: root/docs/htmldocs/Samba3-HOWTO/AdvancedNetworkManagement.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/htmldocs/Samba3-HOWTO/AdvancedNetworkManagement.html')
-rw-r--r--docs/htmldocs/Samba3-HOWTO/AdvancedNetworkManagement.html282
1 files changed, 282 insertions, 0 deletions
diff --git a/docs/htmldocs/Samba3-HOWTO/AdvancedNetworkManagement.html b/docs/htmldocs/Samba3-HOWTO/AdvancedNetworkManagement.html
new file mode 100644
index 0000000000..3cabbd3a9c
--- /dev/null
+++ b/docs/htmldocs/Samba3-HOWTO/AdvancedNetworkManagement.html
@@ -0,0 +1,282 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter 25. Advanced Network Management</title><link rel="stylesheet" href="samba.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.71.0"><link rel="start" href="index.html" title="The Official Samba-3 HOWTO and Reference Guide"><link rel="up" href="optional.html" title="Part III. Advanced Configuration"><link rel="prev" href="winbind.html" title="Chapter 24. Winbind: Use of Domain Accounts"><link rel="next" href="PolicyMgmt.html" title="Chapter 26. System and Account Policies"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 25. Advanced Network Management</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="winbind.html">Prev</a> </td><th width="60%" align="center">Part III. Advanced Configuration</th><td width="20%" align="right"> <a accesskey="n" href="PolicyMgmt.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="AdvancedNetworkManagement"></a>Chapter 25. Advanced Network Management</h2></div><div><div class="author"><h3 class="author"><span class="firstname">John</span> <span class="othername">H.</span> <span class="surname">Terpstra</span></h3><div class="affiliation"><span class="orgname">Samba Team<br></span><div class="address"><p><code class="email">&lt;<a href="mailto:jht@samba.org">jht@samba.org</a>&gt;</code></p></div></div></div></div><div><p class="pubdate">June 15 2005</p></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="AdvancedNetworkManagement.html#id415432">Features and Benefits</a></span></dt><dt><span class="sect1"><a href="AdvancedNetworkManagement.html#id415453">Remote Server Administration</a></span></dt><dt><span class="sect1"><a href="AdvancedNetworkManagement.html#id415590">Remote Desktop Management</a></span></dt><dd><dl><dt><span class="sect2"><a href="AdvancedNetworkManagement.html#id415616">Remote Management from NoMachine.Com</a></span></dt></dl></dd><dt><span class="sect1"><a href="AdvancedNetworkManagement.html#id415955">Network Logon Script Magic</a></span></dt><dd><dl><dt><span class="sect2"><a href="AdvancedNetworkManagement.html#id416121">Adding Printers without User Intervention</a></span></dt><dt><span class="sect2"><a href="AdvancedNetworkManagement.html#id416162">Limiting Logon Connections</a></span></dt></dl></dd></dl></div><p>
+<a class="indexterm" name="id415422"></a>
+This section documents 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.
+</p><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id415432"></a>Features and Benefits</h2></div></div></div><p>
+Often the difference between a working network environment and a well-appreciated one can
+best be measured by the <span class="emphasis"><em>little things</em></span> that make everything work more
+harmoniously. A key part of every network environment solution is the ability to remotely
+manage MS Windows workstations, remotely access the Samba server, provide customized
+logon scripts, as well as other housekeeping activities that help to sustain more reliable
+network operations.
+</p><p>
+This chapter presents information on each of these areas. They are placed here, and not in
+other chapters, for ease of reference.
+</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id415453"></a>Remote Server Administration</h2></div></div></div><p>&#8220;<span class="quote">How do I get User Manager and Server Manager?</span>&#8221;</p><p>
+<a class="indexterm" name="id415466"></a>
+<a class="indexterm" name="id415473"></a>
+<a class="indexterm" name="id415479"></a>
+Since I do not need to buy an <span class="application">NT4 server</span>, how do I get the User Manager for Domains
+and the Server Manager?
+</p><p>
+<a class="indexterm" name="id415496"></a>
+<a class="indexterm" name="id415503"></a>
+Microsoft distributes a version of these tools called <code class="filename">Nexus.exe</code> for installation
+on <span class="application">Windows 9x/Me</span> systems. The tools set includes:
+</p><div class="itemizedlist"><ul type="disc"><li><p>Server Manager</p></li><li><p>User Manager for Domains</p></li><li><p>Event Viewer</p></li></ul></div><p>
+Download the archived file at the Microsoft <a href="ftp://ftp.microsoft.com/Softlib/MSLFILES/NEXUS.EXE" target="_top">Nexus</a> link.
+</p><p>
+<a class="indexterm" name="id415555"></a>
+<a class="indexterm" name="id415561"></a>
+<a class="indexterm" name="id415568"></a>
+The <span class="application">Windows NT 4.0</span> version of the User Manager for
+Domains and Server Manager are available from Microsoft
+<a href="ftp://ftp.microsoft.com/Softlib/MSLFILES/SRVTOOLS.EXE" target="_top">via ftp</a>.
+</p></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id415590"></a>Remote Desktop Management</h2></div></div></div><p>
+<a class="indexterm" name="id415598"></a>
+<a class="indexterm" name="id415605"></a>
+There are a number of possible remote desktop management solutions that range from free
+through costly. Do not let that put you off. Sometimes the most costly solution is the
+most cost effective. In any case, you will need to draw your own conclusions as to which
+is the best tool in your network environment.
+</p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id415616"></a>Remote Management from NoMachine.Com</h3></div></div></div><p>
+ <a class="indexterm" name="id415623"></a>
+ The following information was posted to the Samba mailing list at Apr 3 23:33:50 GMT 2003.
+ It is presented in slightly edited form (with author details omitted for privacy reasons).
+ The entire answer is reproduced below with some comments removed.
+ </p><p>&#8220;<span class="quote">
+<a class="indexterm" name="id415637"></a>
+ I have a wonderful Linux/Samba server running as PDC for a network. Now I would like to add remote
+ desktop capabilities so users outside could login to the system and get their desktop up from home or
+ another country.
+ </span>&#8221;</p><p>&#8220;<span class="quote">
+<a class="indexterm" name="id415650"></a>
+<a class="indexterm" name="id415657"></a>
+<a class="indexterm" name="id415663"></a>
+<a class="indexterm" name="id415670"></a>
+ Is there a way to accomplish this? Do I need a Windows Terminal server? Do I need to configure it so
+ it is a member of the domain or a BDC or PDC? Are there any hacks for MS Windows XP to enable remote login
+ even if the computer is in a domain?
+ </span>&#8221;</p><p>
+ Answer provided: Check out the new offer of &#8220;<span class="quote">NX</span>&#8221; software from
+ <a href="http://www.nomachine.com/" target="_top">NoMachine</a>.
+ </p><p>
+<a class="indexterm" name="id415697"></a>
+<a class="indexterm" name="id415704"></a>
+<a class="indexterm" name="id415711"></a>
+ It implements an easy-to-use interface to the Remote X protocol as
+ well as incorporating VNC/RFB and rdesktop/RDP into it, but at a speed
+ performance much better than anything you may have ever seen.
+ </p><p>
+<a class="indexterm" name="id415723"></a>
+ Remote X is not new at all, but what they did achieve successfully is
+ a new way of compression and caching technologies that makes the thing
+ fast enough to run even over slow modem/ISDN connections.
+ </p><p>
+<a class="indexterm" name="id415735"></a>
+<a class="indexterm" name="id415742"></a>
+<a class="indexterm" name="id415748"></a>
+<a class="indexterm" name="id415755"></a>
+ I test drove their (public) Red Hat machine in Italy, over a loaded
+ Internet connection, with enabled thumbnail previews in KDE konqueror,
+ which popped up immediately on &#8220;<span class="quote">mouse-over</span>&#8221;. From inside that (remote X)
+ session I started a rdesktop session on another, a Windows XP machine.
+ To test the performance, I played Pinball. I am proud to announce
+ that my score was 631,750 points at first try.
+ </p><p>
+<a class="indexterm" name="id415771"></a>
+<a class="indexterm" name="id415777"></a>
+<a class="indexterm" name="id415784"></a>
+<a class="indexterm" name="id415791"></a>
+ NX performs better on my local LAN than any of the other &#8220;<span class="quote">pure</span>&#8221;
+ connection methods I use from time to time: TightVNC, rdesktop or
+ Remote X. It is even faster than a direct crosslink connection between
+ two nodes.
+ </p><p>
+<a class="indexterm" name="id415807"></a>
+<a class="indexterm" name="id415813"></a>
+<a class="indexterm" name="id415820"></a>
+ I even got sound playing from the Remote X app to my local boxes, and
+ had a working &#8220;<span class="quote">copy'n'paste</span>&#8221; from an NX window (running a KDE session
+ in Italy) to my Mozilla mailing agent. These guys are certainly doing
+ something right!
+ </p><p>
+ I recommend test driving NX to anybody with a only a passing interest in remote computing
+ the <a href="http://www.nomachine.com/testdrive.php" target="_top">NX</a> utility.
+ </p><p>
+ Just download the free-of-charge client software (available for Red Hat,
+ SuSE, Debian and Windows) and be up and running within 5 minutes (they
+ need to send you your account data, though, because you are assigned
+ a real UNIX account on their testdrive.nomachine.com box).
+ </p><p>
+ They plan to get to the point were you can have NX application servers
+ running as a cluster of nodes, and users simply start an NX session locally
+ and can select applications to run transparently (apps may even run on
+ another NX node, but pretend to be on the same as used for initial login,
+ because it displays in the same window. You also can run it
+ full-screen, and after a short time you forget that it is a remote session
+ at all).
+ </p><p>
+<a class="indexterm" name="id415860"></a>
+ Now the best thing for last: All the core compression and caching
+ technologies are released under the GPL and available as source code
+ to anybody who wants to build on it! These technologies are working,
+ albeit started from the command line only (and very inconvenient to
+ use in order to get a fully running remote X session up and running).
+ </p><p>
+ To answer your questions:
+ </p><div class="itemizedlist"><ul type="disc"><li><p>
+ You do not need to install a terminal server; XP has RDP support built in.
+ </p></li><li><p>
+ NX is much cheaper than Citrix and comparable in performance, probably faster.
+ </p></li><li><p>
+ You do not need to hack XP it just works.
+ </p></li><li><p>
+ You log into the XP box from remote transparently (and I think there is no
+ need to change anything to get a connection, even if authentication is against a domain).
+ </p></li><li><p>
+ The NX core technologies are all Open Source and released under the GPL
+ you can now use a (very inconvenient) command line at no cost,
+ but you can buy a comfortable (proprietary) NX GUI front end for money.
+ </p></li><li><p>
+<a class="indexterm" name="id415916"></a>
+<a class="indexterm" name="id415922"></a>
+<a class="indexterm" name="id415929"></a>
+<a class="indexterm" name="id415935"></a>
+<a class="indexterm" name="id415942"></a>
+ NoMachine is encouraging and offering help to OSS/Free Software implementations
+ for such a front-end too, even if it means competition to them (they have written
+ to this effect even to the LTSP, KDE, and GNOME developer mailing lists).
+ </p></li></ul></div></div></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id415955"></a>Network Logon Script Magic</h2></div></div></div><p>
+There are several opportunities for creating a custom network startup configuration environment.
+</p><div class="itemizedlist"><ul type="disc"><li><p>No Logon Script.</p></li><li><p>Simple universal Logon Script that applies to all users.</p></li><li><p>Use of a conditional Logon Script that applies per-user or per-group attributes.</p></li><li><p>Use of Samba's preexec and postexec functions on access to the NETLOGON share to create
+ a custom logon script and then execute it.</p></li><li><p>User of a tool such as KixStart.</p></li></ul></div><p>
+The Samba source code tree includes two logon script generation/execution tools.
+See <code class="filename">examples</code> directory <code class="filename">genlogon</code> and
+<code class="filename">ntlogon</code> subdirectories.
+</p><p>
+The following listings are from the genlogon directory.
+</p><p>
+<a class="indexterm" name="id416021"></a>
+This is the <code class="filename">genlogon.pl</code> file:
+
+</p><pre class="programlisting">
+ #!/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 Standards 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, "&gt;&gt;/var/log/samba/netlogon.log";
+ print LOG "$mon/$mday/$year $hour:$min:$sec";
+ print LOG " - User $ARGV[0] logged into $ARGV[1]\n";
+ close LOG;
+
+ # Start generating logon script
+ open LOGON, "&gt;/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;
+</pre><p>
+</p><p>
+Those wishing to use a more elaborate or capable logon processing system should check out these sites:
+</p><div class="itemizedlist"><ul type="disc"><li><p><a href="http://www.craigelachie.org/rhacer/ntlogon" target="_top">http://www.craigelachie.org/rhacer/ntlogon</a></p></li><li><p><a href="http://www.kixtart.org" target="_top">http://www.kixtart.org</a></p></li></ul></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id416121"></a>Adding Printers without User Intervention</h3></div></div></div><p>
+<a class="indexterm" name="id416129"></a>
+Printers may be added automatically during logon script processing through the use of:
+</p><pre class="screen">
+<code class="prompt">C:\&gt; </code><strong class="userinput"><code>rundll32 printui.dll,PrintUIEntry /?</code></strong>
+</pre><p>
+
+See the documentation in the <a href="http://support.microsoft.com/default.asp?scid=kb;en-us;189105" target="_top">Microsoft Knowledge Base article 189105</a>.
+</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id416162"></a>Limiting Logon Connections</h3></div></div></div><p>
+ Sometimes it is necessary to limit the number of concurrent connections to a
+ Samba shared resource. For example, a site may wish to permit only one network
+ logon per user.
+ </p><p>
+ The Samba <em class="parameter"><code>preexec script</code></em> parameter can be used to permit only one
+ connection per user. Though this method is not foolproof and may have side effects,
+ the following contributed method may inspire someone to provide a better solution.
+ </p><p>
+ This is not a perfect solution because Windows clients can drop idle connections
+ with an auto-reconnect capability that could result in the appearance that a share
+ is no longer in use, while actually it is. Even so, it demonstrates the principle
+ of use of the <em class="parameter"><code>preexec script</code></em> parameter.
+ </p><p>
+ The following share configuration demonstrates use of the script shown in <a href="AdvancedNetworkManagement.html#Tpees" title="Example 25.1. Script to Enforce Single Resource Logon">???</a>.
+</p><pre class="programlisting">
+[myshare]
+ ...
+ preexec script = /sbin/PermitSingleLogon.sh
+ preexec close = Yes
+ ...
+</pre><p>
+ </p><div class="example"><a name="Tpees"></a><p class="title"><b>Example 25.1. Script to Enforce Single Resource Logon</b></p><div class="example-contents"><pre class="screen">
+#!/bin/bash
+
+IFS="-"
+RESULT=$(smbstatus -S -u $1 2&gt; /dev/null | awk 'NF \
+ &gt; 6 {print $1}' | sort | uniq -d)
+
+if [ "X${RESULT}" == X ]; then
+ exit 0
+else
+ exit 1
+fi
+</pre></div></div><br class="example-break"></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="winbind.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="optional.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="PolicyMgmt.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter 24. Winbind: Use of Domain Accounts </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> Chapter 26. System and Account Policies</td></tr></table></div></body></html>