-
Goik Martin authoredGoik Martin authored
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
cloud.xml 8.74 KiB
<?xml version="1.0" encoding="UTF-8"?>
<chapter annotations="slide" version="5.1" xml:id="cloud"
xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xila="http://www.w3.org/2001/XInclude/local-attributes"
xmlns:xi="http://www.w3.org/2001/XInclude"
xmlns:trans="http://docbook.org/ns/transclusion"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:m="http://www.w3.org/1998/Math/MathML"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns:db="http://docbook.org/ns/docbook">
<title>File cloud</title>
<figure xml:id="cloud_fig_general">
<title>File services</title>
<informaltable border="0">
<tr>
<td valign="top"><itemizedlist>
<listitem>
<para>Centralized remote file storage.</para>
</listitem>
<listitem>
<para>Proprietary protocols.</para>
</listitem>
<listitem>
<para>File Up- and Download.</para>
</listitem>
</itemizedlist></td>
<td valign="top"><itemizedlist>
<listitem>
<para>Multi client synchronization.</para>
</listitem>
<listitem>
<para>Network file system support.</para>
</listitem>
<listitem>
<para>Ubiquitous access.</para>
</listitem>
</itemizedlist></td>
</tr>
</informaltable>
</figure>
<figure xml:id="cloud_fig_demands">
<title>Customer demands</title>
<informaltable border="0">
<tr>
<td valign="top"><itemizedlist>
<listitem>
<para>Integrated backup.</para>
</listitem>
<listitem>
<para>Versioning.</para>
</listitem>
<listitem>
<para>Sharing on user / group level.</para>
</listitem>
<listitem>
<para>Secure access, Encryption</para>
</listitem>
</itemizedlist></td>
<td valign="top"><itemizedlist>
<listitem>
<para>Consistent availability.</para>
</listitem>
<listitem>
<para>Federation support.</para>
</listitem>
</itemizedlist></td>
</tr>
</informaltable>
</figure>
<figure xml:id="cloud_fig_reasons">
<title>Driving factors</title>
<itemizedlist>
<listitem>
<para>Local hardware does not scale:</para>
<itemizedlist>
<listitem>
<para>Systems interoperability</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>Storage as a service</para>
</listitem>
<listitem>
<para>Economy of scale: Cheap hardware, distributed system</para>
</listitem>
</itemizedlist>
</figure>
<figure xml:id="cloud_fig_services">
<title>Selected cloud file services</title>
<informaltable border="0">
<tr>
<td valign="top"><itemizedlist>
<listitem>
<para><productname>Google Drive</productname></para>
</listitem>
<listitem>
<para><productname>Dropbox</productname></para>
</listitem>
<listitem>
<para><productname>OneDrive</productname></para>
</listitem>
<listitem>
<para><productname>iCloud Drive</productname></para>
</listitem>
</itemizedlist></td>
<td valign="top"><itemizedlist>
<listitem>
<para><productname>Box</productname></para>
</listitem>
<listitem>
<para><productname>Amazon Cloud Drive</productname></para>
</listitem>
</itemizedlist></td>
</tr>
</informaltable>
</figure>
<figure xml:id="cloud_fig_serverSoftware">
<title>Selected self hosting products</title>
<itemizedlist>
<listitem>
<para><productname
xlink:href="https://nextcloud.com">Nextcloud</productname>,
<productname
xlink:href="https://owncloud.org">Owncloud</productname></para>
</listitem>
<listitem>
<para><productname
xlink:href="https://www.seafile.com">Seafile</productname></para>
</listitem>
<listitem>
<para><productname
xlink:href="https://cozy.io">Cozy</productname></para>
</listitem>
<listitem>
<para><productname
xlink:href="https://www.resilio.com">Resilio</productname></para>
</listitem>
</itemizedlist>
</figure>
<figure xml:id="cloud_fig_nextcloud">
<title><productname
xlink:href="https://nextcloud.com">Nextcloud</productname>
features</title>
<informaltable border="0">
<tr>
<td valign="top"><itemizedlist>
<listitem>
<para>Open source (<xref linkend="glo_PHP"/>)</para>
</listitem>
<listitem>
<para><link
xlink:href="https://nextcloud.com/install/#install-clients">Sync
clients</link></para>
</listitem>
<listitem>
<para><link
xlink:href="https://nextcloud.com/endtoend">End-to-end
encryption support</link></para>
</listitem>
<listitem>
<para>Full text search</para>
</listitem>
</itemizedlist></td>
<td valign="top"><itemizedlist>
<listitem>
<para><link xlink:href="https://apps.nextcloud.com/">Plugin
extendability</link></para>
<itemizedlist>
<listitem>
<para><link
xlink:href="https://en.wikipedia.org/wiki/CardDAV">CardDav</link></para>
</listitem>
<listitem>
<para><link
xlink:href="https://en.wikipedia.org/wiki/CalDAV">CalDav</link></para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para><xref linkend="glo_LDAP"/> support</para>
</listitem>
</itemizedlist></td>
</tr>
</informaltable>
</figure>
<figure xml:id="cloud_fig_nextcloudLighning">
<title><productname>Lightning</productname> integration</title>
<mediaobject>
<imageobject>
<imagedata fileref="Fig/lightning.png"/>
</imageobject>
</mediaobject>
</figure>
<section xml:id="sdi_cloud_exercises_sect">
<title>Exercises</title>
<para>Set up a <productname>Nextcloud</productname> server based on
<productname>Apache</productname> and <productname>Mysql</productname>
following <link
xlink:href="https://help.nextcloud.com/t/complete-nc-installation-on-debian-9-stretch-and-manual-update/21881">Complete
NC Installation on Debian 9 Stretch and manual update</link>. Mind the
following hints:</para>
<orderedlist>
<listitem>
<para>Use <code>https://sdiXY.mi.hdm-stuttgart.de/nextcloud</code>
rather than <code>https://sdiXY.mi.hdm-stuttgart.de</code> as base URL
to your server reusing your existing <productname>Apache</productname>
server installation. This should be mapped to a
<productname>Nextcloud</productname> root directory
<filename>/var/www/nextcloud</filename>outside e.g.
<filename>/var/www/html/nextcloud</filename> denying attackers getting
access to sensitive configuration data.</para>
</listitem>
<listitem>
<para>If you've already configured a <productname>Mysql</productname>
server use that one instead of the installation manual's
<productname>MariaDB</productname> server.</para>
</listitem>
<listitem>
<para>Depending on the <filename>/etc/passwd</filename> home directory
settings of user <code>www-data</code> you may have to use
<command>sudo -u www-data php /var/www/html/nextcloud/occ ...
</command> rather than simply <command>sudo -u www-data ./occ
...</command>.</para>
</listitem>
</orderedlist>
<para>After this step log in as user <code>ncadmin</code> and follow <link
xlink:href="https://docs.nextcloud.com/server/13/admin_manual/configuration_user/user_auth_ldap.html">User
authentication with LDAP</link> configuring <xref linkend="glo_LDAP"/>
access. Use ldap1.hdm-stuttgart.de as <xref linkend="glo_LDAP"/>
provider.</para>
<tip>
<para>The default <xref linkend="glo_LDAP"/> attribute
<property>displayName</property> has to be changed to
<property>cn</property>.</para>
</tip>
<para>Test your installation by logging in using your own HdM account
credentials.</para>
</section>
</chapter>