<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN">
<refentry id="swat">

<refmeta>
	<refentrytitle>swat</refentrytitle>
	<manvolnum>8</manvolnum>
</refmeta>


<refnamediv>
	<refname>swat</refname>
	<refpurpose>Samba Web Administration Tool</refpurpose>
</refnamediv>

<refsynopsisdiv>
	<cmdsynopsis>
		<command>swat</command>
		<arg choice="opt">-s &lt;smb config file&gt;</arg>
		<arg choice="opt">-a</arg>
	</cmdsynopsis>
</refsynopsisdiv>

<refsect1>
	<title>DESCRIPTION</title>

	<para>This tool is part of the <ulink url="samba.7.html">
	Samba</ulink> suite.</para>


	<para><command>swat</command> allows a Samba administrator to 
	configure the complex <ulink url="smb.conf.5.html"><filename>
	smb.conf(5)</filename></ulink> file via a Web browser. In addition, 
	a <command>swat</command> configuration page has help links 
	to all the configurable options in the <filename>smb.conf</filename> file allowing an 
	administrator to easily look up the effects of any change. </para>

	<para><command>swat</command> is run from <command>inetd</command> </para>
</refsect1>


<refsect1>
	<title>OPTIONS</title>

	<variablelist>
		<varlistentry>
		<term>-s smb configuration file</term>
		<listitem><para>The default configuration file path is 
		determined at compile time.  The file specified contains 
		the configuration details required by the <command>smbd
		</command> server. This is the file that <command>swat</command> will modify. 
		The information in this file includes server-specific 
		information such as what printcap file to use, as well as 
		descriptions of all the services that the server is to provide.
		See <filename>smb.conf</filename> for more information. 
		</para></listitem>
		</varlistentry>


		<varlistentry>
		<term>-a</term>
		<listitem><para>This option disables authentication and puts 
		<command>swat</command> in demo mode. In that mode anyone will be able to modify 
		the <filename>smb.conf</filename> file. </para>
		
		<para><emphasis>Do NOT enable this option on a production 
		server. </emphasis></para></listitem>
		</varlistentry>
	</variablelist>

</refsect1>

<refsect1>

	<title>INSTALLATION</title>

	<para>After you compile SWAT you need to run <command>make install
	</command> to install the <command>swat</command> binary
	and the various help files and images. A default install would put 
	these in: </para>
	
	<itemizedlist>
		<listitem><para>/usr/local/samba/bin/swat</para></listitem>
		<listitem><para>/usr/local/samba/swat/images/*</para></listitem>
		<listitem><para>/usr/local/samba/swat/help/*</para></listitem>
	</itemizedlist>

	<refsect2> 
		<title>Inetd Installation</title>

		<para>You need to edit your <filename>/etc/inetd.conf
		</filename> and <filename>/etc/services</filename>
		to enable SWAT to be launched via <command>inetd</command>.</para>

		<para>In <filename>/etc/services</filename> you need to 
		add a line like this: </para>

		<para><command>swat            901/tcp</command></para>

		<para>Note for NIS/YP users - you may need to rebuild the 
		NIS service maps rather than alter your local <filename>
		/etc/services</filename> file. </para>

		<para>the choice of port number isn't really important 
		except that it should be less than 1024 and not currently 
		used (using a number above 1024 presents an obscure security 
		hole depending on the implementation details of your 
		<command>inetd</command> daemon). </para>

		<para>In <filename>/etc/inetd.conf</filename> you should 
		add a line like this: </para>

		<para><command>swat    stream  tcp     nowait.400  root
		/usr/local/samba/bin/swat swat</command></para>
	
		<para>One you have edited <filename>/etc/services</filename> 
		and <filename>/etc/inetd.conf</filename> you need to send a 
		HUP signal to inetd. To do this use <command>kill -1 PID
		</command> where PID is the process ID of the inetd daemon. </para>

	</refsect2>


	<refsect2>
		<title>Launching</title>

		<para>To launch SWAT just run your favorite web browser and 
		point it at "http://localhost:901/".</para>

		<para>Note that you can attach to SWAT from any IP connected 
		machine but connecting from a remote machine leaves your 
		connection open to password sniffing as passwords will be sent 
		in the clear over the wire. </para>
	</refsect2>
</refsect1>

<refsect1>
	<title>FILES</title>
	
	<variablelist>
		<varlistentry>
		<term><filename>/etc/inetd.conf</filename></term>
		<listitem><para>This file must contain suitable startup 
		information for the meta-daemon.</para></listitem>
		</varlistentry>

		<varlistentry>
		<term><filename>/etc/services</filename></term>
		<listitem><para>This file must contain a mapping of service name 
		(e.g., swat) to service port (e.g., 901) and protocol type 
		(e.g., tcp).  </para></listitem>
		</varlistentry>

		<varlistentry>
		<term><filename>/usr/local/samba/lib/smb.conf</filename></term>
		<listitem><para>This is the default location of the <filename>smb.conf(5)
		</filename> server configuration file that swat edits. Other 
		common places that systems install this file are <filename>
		/usr/samba/lib/smb.conf</filename> and <filename>/etc/smb.conf
		</filename>.  This file describes all the services the server 
		is to make available to clients. </para></listitem>
		</varlistentry>
	</variablelist>
</refsect1>


<refsect1>
	<title>WARNINGS</title>

	<para><command>swat</command> will rewrite your <filename>smb.conf
	</filename> file. It will rearrange the entries and delete all 
	comments, <parameter>include=</parameter> and <parameter>copy="
	</parameter> options. If you have a carefully crafted <filename>
	smb.conf</filename> then back it up or don't use swat! </para>
</refsect1>


<refsect1>
	<title>VERSION</title>

	<para>This man page is correct for version 2.2 of 
	the Samba suite.</para>
</refsect1>

<refsect1>
	<title>SEE ALSO</title>
	<para><command>inetd(5)</command>,
	<ulink url="smbd.8.html"><command>smbd(8)</command></ulink>, 
	<ulink url="smb.conf.5.html">smb.conf(5)</ulink>
	</para>
</refsect1>

<refsect1>
	<title>AUTHOR</title>
	
	<para>The original Samba software and related utilities 
	were created by Andrew Tridgell. Samba is now developed
	by the Samba Team as an Open Source project similar 
	to the way the Linux kernel is developed.</para>
	
	<para>The original Samba man pages were written by Karl Auer. 
	The man page sources were converted to YODL format (another 
	excellent piece of Open Source software, available at
	<ulink url="ftp://ftp.icce.rug.nl/pub/unix/">
	ftp://ftp.icce.rug.nl/pub/unix/</ulink>) and updated for the Samba 2.0 
	release by Jeremy Allison.  The conversion to DocBook for 
	Samba 2.2 was done by Gerald Carter</para>
</refsect1>

</refentry>
