<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Other Setups — Bazaar 2.6.0 documentation</title> <link rel="stylesheet" href="../_static/default.css" type="text/css" /> <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> <script type="text/javascript"> var DOCUMENTATION_OPTIONS = { URL_ROOT: '../', VERSION: '2.6.0', COLLAPSE_INDEX: false, FILE_SUFFIX: '.html', HAS_SOURCE: true }; </script> <script type="text/javascript" src="../_static/jquery.js"></script> <script type="text/javascript" src="../_static/underscore.js"></script> <script type="text/javascript" src="../_static/doctools.js"></script> <link rel="shortcut icon" href="../_static/bzr.ico"/> <link rel="top" title="Bazaar 2.6.0 documentation" href="../index.html" /> <link rel="up" title="Bazaar System Administrator’s Guide" href="index.html" /> <link rel="next" title="Migration" href="migration.html" /> <link rel="prev" title="Simple Setups" href="simple-setups.html" /> </head> <body> <div class="related"> <h3>Navigation</h3> <ul> <li class="right" style="margin-right: 10px"> <a href="migration.html" title="Migration" accesskey="N">next</a></li> <li class="right" > <a href="simple-setups.html" title="Simple Setups" accesskey="P">previous</a> |</li> <li><a href="http://bazaar.canonical.com/"> <img src="../_static/bzr icon 16.png" /> Home</a> | </li> <a href="http://doc.bazaar.canonical.com/en/">Documentation</a> | </li> <li><a href="../index.html">Table of Contents (2.6.0)</a> »</li> <li><a href="index.html" accesskey="U">Bazaar System Administrator’s Guide</a> »</li> </ul> </div> <div class="document"> <div class="documentwrapper"> <div class="bodywrapper"> <div class="body"> <div class="section" id="other-setups"> <h1>Other Setups<a class="headerlink" href="#other-setups" title="Permalink to this headline">¶</a></h1> <div class="section" id="dumb-servers"> <h2>Dumb servers<a class="headerlink" href="#dumb-servers" title="Permalink to this headline">¶</a></h2> <p>Bazaar can also serve branches over protocols that know nothing about Bazaar’s specific needs. These are called “dumb servers” to distinguish them from Bazaar’s native protocol. Currently HTTP, HTTPS, FTP, SFTP and HTTP+WebDAV can be used to read branches remotely. FTP, SFTP and HTTP+WebDAV can be used for writing as well. To use any of these protocols, it is just necessary to provide access to the server’s filesystem under <tt class="docutils literal"><span class="pre">/srv/bzr</span></tt>.</p> <p>For example, for Apache to provide read-only access to the branches in <tt class="docutils literal"><span class="pre">/srv/bzr</span></tt> the configuration may look like this:</p> <div class="highlight-python"><pre>Alias /code /srv/bzr <Directory /srv/bzr> Options Indexes # ... </Directory></pre> </div> <p>and users could use the URL <tt class="docutils literal"><span class="pre">http://server.example.com/code/projectx/trunk</span></tt> to refer to the trunk branch.</p> <p>Note that SFTP access is often available whenever there is SSH access and it may be a good choice when Bazaar cannot be installed on the server to allow <tt class="docutils literal"><span class="pre">bzr+ssh://</span></tt> access. Dumb servers are slower by their very nature than the native protocol, but they can be a good choice in situations where the software and protocols that can be used on the server or the network is limited.</p> </div> <div class="section" id="smart-server-over-http-s"> <h2>Smart server over HTTP(S)<a class="headerlink" href="#smart-server-over-http-s" title="Permalink to this headline">¶</a></h2> <p>Bazaar can use its native protocol with HTTP or HTTPS requests. Since HTTP is a network protocol that is available on many networks, this can be a good option where SSH access is not possible. Another benefit of this setup is that all of the authentication and access control methods available to the HTTP server (basic, LDAP, ActiveDirectory, etc.) are then available to control access to Bazaar branches. More information about setting up this type of access using Apache and FastCGI or mod_python or WSGI is in the <a class="reference external" href="../user-guide/http_smart_server.html">smart server section of the User’s Guide</a>.</p> </div> <div class="section" id="direct-smart-server-access"> <h2>Direct Smart Server Access<a class="headerlink" href="#direct-smart-server-access" title="Permalink to this headline">¶</a></h2> <p>The built-in server that is used by <tt class="docutils literal"><span class="pre">bzr+ssh://</span></tt> access can also be used as a persistent server on a dedicated port. Bazaar’s official port is 4155, although the port used can be configured. Further information on running the Bazaar smart server from inetd, or directly from the shell is in the <a class="reference external" href="../user-guide/server.html#inetd">User’s Guide</a>. The dedicated Bazaar server does not currently perform any authentication, so this server by default provides read-only access. It can be run with the <tt class="docutils literal"><span class="pre">--allow-writes</span></tt> option, but the smart server does not do any additional access control so this may allow undesired people to make changes to branches. (Which of course can be reverted.) If the user that runs the server has write access to the branches on the filesystem, then anyone with access to port 4155 on the server can make changes to the branches stored there.</p> </div> </div> </div> </div> </div> <div class="sphinxsidebar"> <div class="sphinxsidebarwrapper"> <h3><a href="../index.html">Table Of Contents</a></h3> <ul> <li><a class="reference internal" href="#">Other Setups</a><ul> <li><a class="reference internal" href="#dumb-servers">Dumb servers</a></li> <li><a class="reference internal" href="#smart-server-over-http-s">Smart server over HTTP(S)</a></li> <li><a class="reference internal" href="#direct-smart-server-access">Direct Smart Server Access</a></li> </ul> </li> </ul> <h4>Previous topic</h4> <p class="topless"><a href="simple-setups.html" title="previous chapter">Simple Setups</a></p> <h4>Next topic</h4> <p class="topless"><a href="migration.html" title="next chapter">Migration</a></p> <h3>This Page</h3> <ul class="this-page-menu"> <li><a href="../_sources/admin-guide/other-setups.txt" rel="nofollow">Show Source</a></li> </ul> <div id="searchbox" style="display: none"> <h3>Quick search</h3> <form class="search" action="../search.html" method="get"> <input type="text" name="q" /> <input type="submit" value="Go" /> <input type="hidden" name="check_keywords" value="yes" /> <input type="hidden" name="area" value="default" /> </form> <p class="searchtip" style="font-size: 90%"> Enter search terms or a module, class or function name. </p> </div> <script type="text/javascript">$('#searchbox').show(0);</script> </div> </div> <div class="clearer"></div> </div> <div class="related"> <h3>Navigation</h3> <ul> <li class="right" style="margin-right: 10px"> <a href="migration.html" title="Migration" >next</a></li> <li class="right" > <a href="simple-setups.html" title="Simple Setups" >previous</a> |</li> <li><a href="http://bazaar.canonical.com/"> <img src="../_static/bzr icon 16.png" /> Home</a> | </li> <a href="http://doc.bazaar.canonical.com/en/">Documentation</a> | </li> <li><a href="../index.html">Table of Contents (2.6.0)</a> »</li> <li><a href="index.html" >Bazaar System Administrator’s Guide</a> »</li> </ul> </div> <div class="footer"> © Copyright 2009-2011 Canonical Ltd. Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.1.3. </div> </body> </html>