SWAT.html   [plain text]


<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter 32. SWAT - The Samba Web Administration Tool</title><link rel="stylesheet" href="samba.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.60.1"><link rel="home" href="samba-doc.html" title="SAMBA Project Documentation"><link rel="up" href="migration.html" title="Part IV. Migration and Updating"><link rel="previous" href="NT4Migration.html" title="Chapter 31. Migration from NT4 PDC to Samba-3 PDC"><link rel="next" href="troubleshooting.html" title="Part V. Troubleshooting"></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 32. SWAT - The Samba Web Administration Tool</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="NT4Migration.html">Prev</a> </td><th width="60%" align="center">Part IV. Migration and Updating</th><td width="20%" align="right"> <a accesskey="n" href="troubleshooting.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="SWAT"></a>Chapter 32. SWAT - The Samba Web Administration Tool</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><tt class="email">&lt;<a href="mailto:jht@samba.org">jht@samba.org</a>&gt;</tt></p></div></div></div></div><div><p class="pubdate">April 21, 2003</p></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><a href="SWAT.html#id2957030">Features and Benefits</a></dt><dd><dl><dt><a href="SWAT.html#id2957079">Enabling SWAT for use</a></dt><dt><a href="SWAT.html#id2957316">Securing SWAT through SSL</a></dt><dt><a href="SWAT.html#id2957428">The SWAT Home Page</a></dt><dt><a href="SWAT.html#id2957493">Global Settings</a></dt><dt><a href="SWAT.html#id2957601">Share Settings</a></dt><dt><a href="SWAT.html#id2957665">Printers Settings</a></dt><dt><a href="SWAT.html#id2957730">The SWAT Wizard</a></dt><dt><a href="SWAT.html#id2957777">The Status Page</a></dt><dt><a href="SWAT.html#id2957829">The View Page</a></dt><dt><a href="SWAT.html#id2957853">The Password Change Page</a></dt></dl></dd></dl></div><p>
There are many and varied opinions regarding the usefulness or otherwise of SWAT.
No matter how hard one tries to produce the perfect configuration tool it remains
an object of personal taste. SWAT is a tool that will allow web based configuration
of samba. It has a wizard that may help to get samba configured quickly, it has context
sensitive help on each smb.conf parameter, it provides for monitoring of current state
of connection information, and it allows network wide MS Windows network password
management.
</p><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2957030"></a>Features and Benefits</h2></div></div><div></div></div><p>
There are network administrators who believe that it is a good idea to write systems
documentation inside configuration files, for them SWAT will aways be a nasty tool. SWAT
does not store the configuration file in any intermediate form, rather, it stores only the
parameter settings, so when SWAT writes the smb.conf file to disk it will write only
those parameters that are at other than the default settings. The result is that all comments
will be lost from the <tt class="filename">smb.conf</tt> file. Additionally, the parameters will be written back in
internal ordering.
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3><p>
So before using SWAT please be warned - SWAT will completely replace your smb.conf with
a fully optimised file that has been stripped of all comments you might have placed there
and only non-default settings will be written to the file.
</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2957079"></a>Enabling SWAT for use</h3></div></div><div></div></div><p>
SWAT should be installed to run via the network super daemon. Depending on which system
your UNIX/Linux system has you will have either an <b class="command">inetd</b> or
<b class="command">xinetd</b> based system.
</p><p>
The nature and location of the network super-daemon varies with the operating system
implementation. The control file (or files) can be located in the file 
<tt class="filename">/etc/inetd.conf</tt> or in the directory <tt class="filename">/etc/[x]inet.d</tt>
or similar.
</p><p>
The control entry for the older style file might be:
</p><pre class="programlisting">
	# swat is the Samba Web Administration Tool
	swat stream tcp nowait.400 root /usr/sbin/swat swat
</pre><p>
A control file for the newer style xinetd could be:
</p><p>
</p><pre class="programlisting">
	# default: off
	# description: SWAT is the Samba Web Admin Tool. Use swat \
	#              to configure your Samba server. To use SWAT, \
	#              connect to port 901 with your favorite web browser.
	service swat
	{
		port    = 901
		socket_type     = stream
		wait    = no
		only_from = localhost
		user    = root
		server  = /usr/sbin/swat
		log_on_failure  += USERID
		disable = yes
	}
</pre><p>

</p><p>
Both the above examples assume that the <b class="command">swat</b> binary has been
located in the <tt class="filename">/usr/sbin</tt> directory. In addition to the above
SWAT will use a directory access point from which it will load it's help files
as well as other control information. The default location for this on most Linux
systems is in the directory <tt class="filename">/usr/share/samba/swat</tt>. The default
location using samba defaults will be <tt class="filename">/usr/local/samba/swat</tt>.
</p><p>
Access to SWAT will prompt for a logon. If you log onto SWAT as any non-root user
the only permission allowed is to view certain aspects of configuration as well as
access to the password change facility. The buttons that will be exposed to the non-root
user are: <span class="guibutton">HOME</span>, <span class="guibutton">STATUS</span>, <span class="guibutton">VIEW</span>, 
<span class="guibutton">PASSWORD</span>. The only page that allows
change capability in this case is <span class="guibutton">PASSWORD</span>.
</p><p>
So long as you log onto SWAT as the user <span class="emphasis"><em>root</em></span> you should obtain
full change and commit ability. The buttons that will be exposed includes:
<span class="guibutton">HOME</span>, <span class="guibutton">GLOBALS</span>, <span class="guibutton">SHARES</span>, <span class="guibutton">PRINTERS</span>, 
<span class="guibutton">WIZARD</span>, <span class="guibutton">STATUS</span>, <span class="guibutton">VIEW</span>, <span class="guibutton">PASSWORD</span>.
</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2957316"></a>Securing SWAT through SSL</h3></div></div><div></div></div><p>
Lots of people have asked about how to setup SWAT with SSL to allow for secure remote
administration of Samba. Here is a method that works, courtesy of Markus Krieger
</p><p>
Modifications to the swat setup are as following: 
</p><div class="procedure"><ol type="1"><li><p>
	install OpenSSL 
	</p></li><li><p>
	generate certificate and private key

</p><pre class="screen">
<tt class="prompt">root# </tt><b class="userinput"><tt>/usr/bin/openssl req -new -x509 -days 365 -nodes -config \
	/usr/share/doc/packages/stunnel/stunnel.cnf \
	-out /etc/stunnel/stunnel.pem -keyout /etc/stunnel/stunnel.pem</tt></b>
</pre></li><li><p>
	remove swat-entry from [x]inetd 
	</p></li><li><p>
	start stunnel

</p><pre class="screen">
<tt class="prompt">root# </tt><b class="userinput"><tt>stunnel -p /etc/stunnel/stunnel.pem -d 901 \
	 -l /usr/local/samba/bin/swat swat </tt></b>
</pre></li></ol></div><p>
afterwords simply contact to swat by using the URL <a href="https://myhost:901" target="_top">https://myhost:901</a>, accept the certificate
and the SSL connection is up.
</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2957428"></a>The SWAT Home Page</h3></div></div><div></div></div><p>
The SWAT title page provides access to the latest Samba documentation. The manual page for
each samba component is accessible from this page as are the Samba-HOWTO-Collection (this 
document) as well as the O'Reilly book &quot;Using Samba&quot;.
</p><p>
Administrators who wish to validate their samba configuration may obtain useful information
from the man pages for the diagnostic utilities. These are available from the SWAT home page
also. One diagnostic tool that is NOT mentioned on this page, but that is particularly
useful is <a href="http://www.ethereal.com/" target="_top"><b class="command">ethereal</b></a>.
</p><div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Warning</h3><p>
SWAT can be configured to run in <span class="emphasis"><em>demo</em></span> mode. This is NOT recommended
as it runs SWAT without authentication and with full administrative ability. ie: Allows
changes to smb.conf as well as general operation with root privileges. The option that
creates this ability is the <tt class="option">-a</tt> flag to swat. <span class="emphasis"><em>Do not use this in any 
production environment.</em></span>
</p></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2957493"></a>Global Settings</h3></div></div><div></div></div><p>
The Globals button will expose a page that allows configuration of the global parameters
in smb.conf. There are three levels of exposure of the parameters:
</p><div class="itemizedlist"><ul type="disc"><li><p>
	<span class="emphasis"><em>Basic</em></span> - exposes common configuration options.
	</p></li><li><p>
	<span class="emphasis"><em>Advanced</em></span> - exposes  configuration options needed in more 
	complex environments.
	</p></li><li><p>
	<span class="emphasis"><em>Developer</em></span> - exposes configuration options that only the brave
	will want to tamper with.
	</p></li></ul></div><p>
To switch to other than <span class="emphasis"><em>Basic</em></span> editing ability click on either the
<span class="emphasis"><em>Advanced</em></span> or the <span class="emphasis"><em>Developer</em></span> button. You may also
do this by clicking on the radio button, then click the <span class="guibutton">Commit Changes</span> button.
</p><p>
After making any changes to configuration parameters make sure that you click on the 
<span class="guibutton">Commit Changes</span> button before moving to another area otherwise
your changes will be immediately lost.
</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3><p>
SWAT has context sensitive help. To find out what each parameter is for simply click the
<span class="guibutton">Help</span> link to the left of the configuration parameter.
</p></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2957601"></a>Share Settings</h3></div></div><div></div></div><p>
To affect a currently configured share, simply click on the pull down button between the
<span class="guibutton">Choose Share</span> and the <span class="guibutton">Delete Share</span> buttons,
select the share you wish to operate on, then to edit the settings click on the
<span class="guibutton">Choose Share</span> button, to delete the share simply press the
<span class="guibutton">Delete Share</span> button.
</p><p>
To create a new share, next to the button labelled <span class="guibutton">Create Share</span> enter
into the text field the name of the share to be created, then click on the 
<span class="guibutton">Create Share</span> button.
</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2957665"></a>Printers Settings</h3></div></div><div></div></div><p>
To affect a currently configured printer, simply click on the pull down button between the
<span class="guibutton">Choose Printer</span> and the <span class="guibutton">Delete Printer</span> buttons,
select the printer you wish to operate on, then to edit the settings click on the
<span class="guibutton">Choose Printer</span> button, to delete the share simply press the
<span class="guibutton">Delete Printer</span> button.
</p><p>
To create a new printer, next to the button labelled <span class="guibutton">Create Printer</span> enter
into the text field the name of the share to be created, then click on the 
<span class="guibutton">Create Printer</span> button.
</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2957730"></a>The SWAT Wizard</h3></div></div><div></div></div><p>
The purpose if the SWAT Wizard is to help the Microsoft knowledgeable network administrator
to configure Samba with a minimum of effort.
</p><p>
The Wizard page provides a tool for rewriting the smb.conf file in fully optimised format.
This will also happen if you press the commit button. The two differ in the the rewrite button
ignores any changes that may have been made, while the Commit button causes all changes to be
affected.
</p><p>
The <span class="guibutton">Edit</span> button permits the editing (setting) of the minimal set of
options that may be necessary to create a working Samba server.
</p><p>
Finally, there are a limited set of options that will determine what type of server Samba
will be configured for, whether it will be a WINS server, participate as a WINS client, or
operate with no WINS support. By clicking on one button you can elect to expose (or not) user
home directories.
</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2957777"></a>The Status Page</h3></div></div><div></div></div><p>
The status page serves a limited purpose. Firstly, it allows control of the samba daemons.
The key daemons that create the samba server environment are: <span class="application">smbd</span>, <span class="application">nmbd</span>, <span class="application">winbindd</span>.
</p><p>
The daemons may be controlled individually or as a total group. Additionally, you may set
an automatic screen refresh timing. As MS Windows clients interact with Samba new smbd processes
will be continually spawned. The auto-refresh facility will allow you to track the changing
conditions with minimal effort.
</p><p>
Lastly, the Status page may be used to terminate specific smbd client connections in order to
free files that may be locked.
</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2957829"></a>The View Page</h3></div></div><div></div></div><p>
This page allows the administrator to view the optimised <tt class="filename">smb.conf</tt> file and, if you are
particularly masochistic, will permit you also to see all possible global configuration
parameters and their settings.
</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2957853"></a>The Password Change Page</h3></div></div><div></div></div><p>
The Password Change page is a popular tool. This tool allows the creation, deletion, deactivation
and reactivation of MS Windows networking users on the local machine. Alternatively, you can use
this tool to change a local password for a user account.
</p><p>
When logged in as a non-root account the user will have to provide the old password as well as
the new password (twice). When logged in as <span class="emphasis"><em>root</em></span> only the new password is
required.
</p><p>
One popular use for this tool is to change user passwords across a range of remote MS Windows
servers.
</p></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="NT4Migration.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="migration.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="troubleshooting.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter 31. Migration from NT4 PDC to Samba-3 PDC </td><td width="20%" align="center"><a accesskey="h" href="samba-doc.html">Home</a></td><td width="40%" align="right" valign="top"> Part V. Troubleshooting</td></tr></table></div></body></html>