more clarification on SSH configuration
[ach-master.git] / src / practical_settings.tex
index 2cafa6b..a275eb2 100644 (file)
@@ -645,9 +645,11 @@ There already is a working patch to provide support:\\
 % do we need to documment starttls in detail?
 %\subsubsection{starttls?}
 
-\subsection{SSH}
-
+\subsection{OpenSSH}
+\paragraph*{sshd_config}
 \begin{lstlisting}[breaklines]
+       # ...
+
        Protocol 2
        PermitEmptyPasswords no
        PermitRootLogin no
@@ -659,18 +661,19 @@ There already is a working patch to provide support:\\
 \end{lstlisting}
 
 % XXX: curve25519-sha256@libssh.org only available upstream(!)
-Note: older linux systems won't support SHA2. PuTTY (Windows)  does not support RIPE-MD160. Curve25519, AES-GCM and UMAC are only available upstream (OpenSSH 6.1).
+Note: Older linux systems won't support SHA2. PuTTY (Windows) does not support RIPE-MD160. Curve25519, AES-GCM and UMAC are only available upstream (OpenSSH 6.1). DSA host keys have been removed on purpose, the DSS standard does not support for DSA keys stronger than 1024bit
+\footnote{\url{https://bugzilla.mindrot.org/show_bug.cgi?id=1647}} 
+which is far below current standards (see section \ref{section:keylengths}). Legacy systems can use this configuration and simply omit unsupported ciphers, key exchange algorithms and MACs.
 \\
 
 
 \subsection{VPNs}
 \todo{write this subsection}
-\subsubsection{IPSec in general}
+\subsubsection{IPSec}
 \label{section:IPSECgeneral}
 
 
 \todo{cm: check if there are downgrade attacks for checkpoint \& co} \\
-\todo{cm: change this to a table format: Variant ((A,B), (recommendations, recommendations))} \\
 
 \begin{description}
 
@@ -870,9 +873,17 @@ Please note that these settings restrict the available algorithms for
 
 
 \subsubsection{OpenVPN}
+
+\begin{description}
+
+\item[Tested with Version:] OpenVPN 2.3.2 from Debian backports linked against openssl (libssl.so.1.0.0) 
+
 \todo{cm: please write this subsubsection}
 \todo{We suppose user uses easy-rsa which is roughly used in all HOWTO\footnote{\url{http://openvpn.net/index.php/open-source/documentation/howto.html}}}
 
+
+\item[Additional settings:] \mbox{}
+
 \paragraph{Fine tuning at installation level}
 
 When installing an OpenVPN server instance, you are probably using {\it easy-rsa} tools to generate the crypto stuff needed.
@@ -901,9 +912,14 @@ Note that TLS is used only for negotiation bla bla bla...
 
 \todo{cm: explain how openvpn crypto works; make configA/B sections/tables}
 
+\item[Settings:] \mbox{}
+
 % openvpn --show-ciphers
 % --show-tls
 
+\todo{cm: changelog 2.3.1: ``Switch to IANA names for TLS ciphers'' --
+give both types of strings?}
+
 \begin{lstlisting}[breaklines]
 cipher AES-256-CBC   # AES
 
@@ -937,6 +953,7 @@ CAMELLIA-256-CBC
 SEED-CBC
 \end{lstlisting}
 
+
 \paragraph{Client Configuration}
 
 Client and server have to use identical configuration otherwise they can't communicate.
@@ -954,14 +971,25 @@ tls-remote server.example.com
 \todo{what about tls-auth keys/ta.key? }. 
 \todo{what about auth sha512 ?}
 
+\item[Justification for special settings (if needed):]
+
+\item[References:] \url{http://openvpn.net/index.php/open-source/documentation/security-overview.html}
+
+\item[How to test:]
+\todo{write me please}
+
+
+\end{description}
+
+
 \subsubsection{PPTP}
 
-PPTP is broken, Microsoft recommends to ``use a more secure VPN
+PPTP is considered insecure, Microsoft recommends to ``use a more secure VPN
 tunnel''\footnote{\url{http://technet.microsoft.com/en-us/security/advisory/2743314}}.
 
 There is a cloud service that cracks the underlying MS-CHAPv2
 authentication protocol for the price of USD~200\footnote{\url{https://www.cloudcracker.com/blog/2012/07/29/cracking-ms-chap-v2/}},
-and given the resulting MD4 hash, all PPTP traffic for that user can
+and given the resulting MD4 hash, all PPTP traffic for a user can
 be decrypted.
 
 \subsubsection{Cisco IPSec}