2013-10-29 09:41:47 +00:00
\subsection { SSH-Server}
2013-10-31 10:10:02 +00:00
\label { sub:ssh_ server}
2013-11-04 10:23:07 +00:00
2014-03-20 07:41:07 +00:00
Wir haben uns für \emph { OpenSSH} als SSH-Server entschieden. Diesen haben wir mit folgenden Shell-Befehl installiert:
2013-11-04 10:23:07 +00:00
\shellcmd { pacman -S openssh}
2014-03-20 07:41:07 +00:00
Desweiteren wurden in \emph { /etc/ssh/sshd\_ config} (siehe \emph { aufgabe2.3/sshd\_ config} ) folgende Zeilen verändert, um den ''root-Account'' zu deaktivieren und den passwortlosen Zugriff zu aktivieren:
2013-11-04 10:23:07 +00:00
2013-11-05 09:50:33 +00:00
\begin { lstlisting}
PermitRootLogin no
PasswordAuthentication no
ChallengeResponseAuthentication no
\end { lstlisting}
2013-11-04 10:23:07 +00:00
\subsubsection { iptables}
2013-11-13 14:31:08 +00:00
Um den Zugriff auf das universitätsinterne Netz zu beschränken wurde ein
2014-04-03 09:37:41 +00:00
Filter-Chain \emph { uni} zur \emph { iptables.rules} unter \emph { /etc/iptables}
(siehe \emph { aufgabe2.3/iptables.rules} ) hinzugefügt, der nur IP-Adressen aus
den Bereichen 141.30.0.0/16 und 141.76.0.0/16 akzeptiert und die Zugriffe auf
den SSH-Port 22 beschränkt.
2013-11-05 09:50:33 +00:00
\subsubsection { Absicherung für externen Zugriff}
2014-04-03 09:37:41 +00:00
Um den Zugriff aus einem externen Netz abzusichern, gibt es verschiedene
Möglichkeiten
\begin { enumerate}
\item den externen SSH-Port auf einen anderen Port als 22 legen, so dass
dieser nicht zu leicht erraten werden kann
\item per \emph { Fail2ban} IPs, die z.B. per
Bruteforce zu häufig versuchen sich einzuloggen, aussperren
\item den externen SSH-Port erst per Port-Knocking freischalten, bei dem
der Client z.B. mit einem Script erst an mehrere Ports »klopfen« muss, bevor
er sich verbinden kann
\item den Login auf bestimmte Benutzer begrenzen
\end { enumerate}
2013-11-05 09:50:33 +00:00
\subsubsection { Automatisierung für neue Nutzer}
2014-04-03 09:37:41 +00:00
Das automatisierte Hinzufügen neuer Nutzer haben wir über ein Script
\texttt { newuser} (siehe \emph { aufgabe2.3/newuser} ) gelöst. Dieses Script legt
einen neuen Benutzer an, erstellt dessen Home-Verzeichnis, generiert ein neues
Public-Private-Key-Paar für SSH und trägt den eigenen Public-Key in die
\emph { authorized\_ keys} ein und ermöglich den Zugriff auf das git-Repository.