%
% chronyd.tex
% Last Update: $Id$
%
%%%%%%%%%%%%%%%%%%%%%%%%% Kapitel chronyd %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\chapter{Chrony - NTP Server und Client}
\index{chrony}


\section{Allgemein}

    \glqq{}chrony\grqq{} ist eine vielseitige Implementierung des
    Network Time Protocol (NTP). Es kann die Systemuhr mit NTP-Servern,
    Referenzuhren (z. B. GPS-Empf"anger) und manueller Eingabe "uber
    Armbanduhr und Tastatur synchronisieren. Er kann auch als NTPv4-Server
    (RFC 5905) und Peer fungieren, um anderen Computern im Netzwerk einen
    Zeitdienst bereitzustellen.

    Es wurde entwickelt, um unter einer Vielzahl von Bedingungen eine
    gute Leistung zu erbringen, einschlie"slich intermittierender
    Netzwerkverbindungen, stark "uberlasteter Netzwerke, wechselnder
    Temperaturen (normale Computeruhren sind temperaturempfindlich) und
    Systemen, die nicht kontinuierlich oder auf einer virtuellen Maschine
    ausgef"uhrt werden.

    Die typische Genauigkeit zwischen zwei "uber das Internet
    synchronisierten Maschinen liegt innerhalb weniger Millisekunden;
    In einem LAN liegt die Genauigkeit typischerweise bei mehreren zehn
    Mikrosekunden. Mit Hardware-Zeitstempeln oder einer Hardware-
    Referenzuhr kann eine Genauigkeit von weniger als einer Mikrosekunde
    m"oglich sein.

    In chrony sind zwei Programme enthalten, chronyd ist ein Daemon, der
    beim Booten gestartet werden kann, und chronyc ist ein
    Befehlszeilenschnittstellenprogramm, mit dem die Leistung von
    chronyd "uberwacht und verschiedene Betriebsparameter ge"andert
    werden k"onnen, w"ahrend es l"auft.
    [Quelle: chrony.tuxfamily.org]



\section{Das Men"u im Setup-Programm}

    Das Men"u im Setup-Programm ist wie folgt aufgebaut:

    \mbox{}

    \begin{tabular}{llll}
    & 4. &  Service administration \\
    \end{tabular}
\eline
    \begin{tabular}{p{1cm}llll}
    & x. &  Chronyd timeservice - administration \\
    \end{tabular}
\eline
    \begin{tabular}{p{2cm}llll}
    & 1. &  View documentation \\
    & 2. &  Edit configuration \\
    & 3. &  Advanced configuration file handling \\
    & 4. &  Show status \\
    & 5. &  Stop service \\
    & 6. &  Start service \\
    & 7. &  Show time status \\
    & 8. &  Show sources \\
    \end{tabular}

    \mbox{}


\section{Die "Anderung der Konfiguration}

    Die Konfiguration wird "uber den Men"upunkt \glqq{}Edit configuration\grqq{}
    ge"andert.

    Es wird gefragt, ob die Konfiguration angewendet (aktiviert) werden
    soll. Wird dieses verneint, so unterbleibt die Aktivierung.

    Wird die Aktivierung best"atigt, werden über ein Skript die
    durchgef"uhrten "Anderungen wirksam gemacht. Dazu werden die Dienste,
    auch wenn sich die Konfiguration nicht ge"andert hat, gestoppt und
    neu gestartet.


\section{Die Konfigurationsdatei}

    In der Konfigurationsdatei, welche "uber das Men"u zug"anglich ist,
    sind folgende Parameter vorhanden; wer sie von Hand editieren will,
    findet sie unter \\
    \texttt{/etc/config.d/chrony}.


\section{Die Parameter}

\begin{description}

\config{START\_CHRONYD}
{START\_CHRONYD}
{STARTCHRONYD}
{
    Für die Aktivierung dieser Konfiguration muss diese Variable
    lediglich auf den Wert 'yes' gestellt werden. Die Einstellung
    'no' schaltet die Aktivierung dieser Konfiguration ab.

    G"ultige Werte: yes, no

    Standardeinstellung: \texttt{START\_CHRONYD='no'}
}

\end{description}


\subsection{Timeserver}


\begin{description}

\config{CHRONYD\_USE\_POOL\_NTP\_ORG}
{CHRONYD\_USE\_POOL\_NTP\_ORG}
{CHRONYDUSEPOOLNTPORG}
{
    Hier wird angegeben, ob die Server von pool.ntp.org benutzt werden
    sollen, was die default-Einstellung darstellt.

    G"ultige Werte: yes, no

    Standardeinstellung: \texttt{CHRONYD\_USE\_POOL\_NTP\_ORG='yes'}
}


\config{CHRONYD\_NTP\_SERVER\_N}
{CHRONYD\_NTP\_SERVER\_N}
{CHRONYDNTPSERVERN}
{
    Hier wird angegeben, wie viele NTP Server aufgelistet werden
    sollen.

    G"ultige Werte: Zahl

    Standardeinstellung: \texttt{CHRONYD\_NTP\_SERVER\_N='0'}
}


\config{CHRONYD\_NTP\_SERVER\_x\_NAME}
{CHRONYD\_NTP\_SERVER\_x\_NAME}
{CHRONYDNTPSERVERxNAME}
{
    Hier kann eine beliebige Zeichenkette zur eigenen Benennung des Servers
    eingetragen werden. chrony wertet diese Option nicht aus.

    G"ultige Werte: alles

    Standardeinstellung: \texttt{CHRONYD\_NTP\_SERVER\_x\_NAME='{}'}
}


\config{CHRONYD\_NTP\_SERVER\_x\_ACTIVE}
{CHRONYD\_NTP\_SERVER\_x\_ACTIVE}
{CHRONYDNTPSERVERxACTIVE}
{
    Hier wird angegeben, ob der NTP Server aktiv sein soll.

    G"ultige Werte: yes, no

    Standardeinstellung: \texttt{CHRONYD\_NTP\_SERVER\_x\_ACTIVE='no'}
}


\config{CHRONYD\_NTP\_SERVER\_x\_ADDR}
{CHRONYD\_NTP\_SERVER\_x\_ADDR}
{CHRONYDNTPSERVERxADDR}
{
    Hier wird der Name oder die IP-Adresse des NTP Servers angegeben.

    G"ultige Werte: Hostname, IP-Adresse des Servers

    Standardeinstellung: \texttt{CHRONYD\_NTP\_SERVER\_x\_ADDR='{}'}
}

\end{description}


\subsection{Berechtigungen}


    \glqq{}chrony\grqq{} f"ur \eisfair ist Standardm"a"sig als
    Zeitserver ausgelegt, d.h. er stellt seine Dienste im Netz bereit.

    \achtung{Bei der Einstellung \texttt{CHRONYD\_ACL\_N='0'} ist
             die Abfrage f"ur alle Rechner und Netze erlaubt. Um die
             Zugriffsrechte einzuschr"anken, m"ussen entsprechend
             ACL-Regeln angelegt werden.}


\begin{description}

\config{CHRONYD\_ACL\_N}
{CHRONYD\_ACL\_N}
{CHRONYDACLN}
{
    Hier wird angegeben, wie viele Berechtigungen vergeben werden
    sollen

    \achtung{Bei der Einstellung \texttt{CHRONYD\_ACL\_N='0'} ist
             die Abfrage f"ur alle Rechner und Netze erlaubt.}

    G"ultige Werte: Zahl

    Standardeinstellung: \texttt{CHRONYD\_ACL\_N='0'}
}


\config{CHRONYD\_ACL\_x\_MODE}
{CHRONYD\_ACL\_x\_MODE}
{CHRONYDACLMODE}
{
    Hier wird angegeben, ob mit dieser Regel der Zugriff erlaubt
    oder eingeschr"ankt werden soll.

    \begin{tabular}{llll}
    & allow & \pfeil & erlaubt den Zugriff \\
    & deny  & \pfeil & verbietet den Zugriff \\
    \end{tabular}

    G"ultige Werte: allow, deny

    Standardeinstellung: \texttt{CHRONYD\_ACL\_x\_MODE='allow'}
}



\config{CHRONYD\_ACL\_x\_NETWORK}
{CHRONYD\_ACL\_x\_NETWORK}
{CHRONYDACLNETWORK}
{
    Hier wird angegeben, aus welchem Netzwerk oder welcher einzelne
    Host diese Berechtigung hat.

    \achtung{Bleibt dieser Wert leer und wird bei  \texttt{CHRONYD\_ACL\_MODE='allow'}
             eingetragen, dann wird damit die Abfrage f"ur alle
             Rechner und Netze erlaubt.}

    Beispiel: 192.168.6 192.168.6.1 192.168.6.0/24

    G"ultige Werte: leer, IP-Adresse

    Standardeinstellung: \texttt{CHRONYD\_ACL\_x\_NETWORK='{}'}
}


\end{description}
