%Schriftgröße, Layout, Papierformat, Art des Dokumentes
\documentclass[10pt,oneside,a4paper]{scrartcl}

%Einstellungen der Seitenränder
\usepackage[left=2cm,right=2cm,top=1.5cm,bottom=1.5cm,includeheadfoot]{geometry}

%neue Rechtschreibung
\usepackage[ngerman]{babel}

%Umlaute ermöglichen
\usepackage[utf8]{inputenc}

%Gesamtseitenzahl
\usepackage{lastpage}

% Kopf- und Fußzeile
\usepackage[headsepline,footsepline]{scrlayer-scrpage}

%Quellcode-Listings
\usepackage{listings}

%Hyperlinks
\usepackage{hyperref}

%Kopfzeile
\ihead{CISCO}
\chead{}
\ohead{http://kohnlehome.de/cisco/cisco-vpn.pdf}


%Fußzeile
\ifoot{Franz Kohnle}
\cfoot{Seite \thepage\ von  \pageref{LastPage}}
\ofoot{\today}

\pagestyle{scrheadings}

\begin{document}

% Überschrift 
\begin{center}
\LARGE % Schriftgröße
\bfseries % Fettdruck
\sffamily % Serifenlose Schrift
VPN auf Cisco-Router
\end{center}

\section*{Internet Key Exchange (IKE) Phase 1}
Gegenseitige Authentifizierung der Peers: eine bidirektionale Security Association (SA)

\subsection*{1. ISAKMP aktivieren (Internet Security Association and Key Management Protocol)}
\begin{verbatim}
ROUTER(config)# crypto isakmp enable
\end{verbatim}

\subsection*{2. ISAKMP-Policy}
\begin{verbatim}
ROUTER(config)# crypto isakmp policy 1            (1 = priority)
ROUTER(config-isakmp)# authentication pre-share
ROUTER(config-isakmp)# encryption aes 256         (des | 3des | aes 128 | aes 192 | aes 256)
ROUTER(config-isakmp)# group 5                    (Diffie-Hellman: group 1 | 2 | 5)
ROUTER(config-isakmp)# hash sha                   (sha | md5)
ROUTER(config-isakmp)# lifetime 3600              (eine Stunde)
\end{verbatim}

\subsection*{3. Pre-Shared Key und Username (= IP-Adresse)}
\begin{verbatim}
ROUTER(config)# crypto isakmp key XXXX address 1.2.3.4    (IP-Adresse des Gegenübers)
\end{verbatim}
Das Passwort muss für alle Tunnnel gleich sein!





\section*{IKE Phase 2}
IPSec-Tunnel aushandeln: zwei unidirektionale Security Associations (SAs)

\subsection*{1. Interesting Traffic mit ACL}
\begin{verbatim}
ROUTER(config)# ip access-list extended VPNTRAFFIC
ROUTER(config-ext-nacl)# permit ip QUELLE1 ZIEL1
ROUTER(config-ext-nacl)# permit ip QUELLE2 ZIEL2
\end{verbatim}

\noindent
Für jeden Tunnel wird eine eigene ACL benötigt.

\subsection*{2. Transform-Set: confidentiality / integrity algorithms}
\begin{verbatim}
ROUTER(config)# crypto ipsec transform-set MYSET esp-aes 256 esp-sha-hmac
\end{verbatim}

\subsection*{3. Crypto-Map: Verknüpfung von Interesting Traffic, Peer, Transform-Set}
\begin{verbatim}
ROUTER(config)# crypto map MYMAP 10 ipsec-isakmp (eine Map kann mehrere Sequenznummern haben)
ROUTER(config-crypto-map)# match address VPNTRAFFIC
ROUTER(config-crypto-map)# set peer 1.2.3.4      (IP-Adresse des Gegenübers)
ROUTER(config-crypto-map)# set transform-set MYSET

ROUTER(config)# crypto map MYMAP 20 ipsec-isakmp (eine Map kann mehrere Sequenznummern haben)
...
\end{verbatim}

\noindent
Mehrere Tunnel teilen sich eine Map mit unterschiedlichen Sequenznummern.

\subsection*{4. Crypto-Map an Interface hängen}
\begin{verbatim}
ROUTER(config)# interface S2/0
ROUTER(config-if)# crypto map MYMAP
\end{verbatim}

\section*{Diagnose}
\subsection*{IKE Phase 1}
\begin{verbatim}
ROUTER# debug crypto isakmp
ROUTER# show crypto isakmp policy
ROUTER# show crypto isakmp sa
\end{verbatim}

\subsection*{IKE Phase 2}
\begin{verbatim}
ROUTER# debug crypto ipsec
ROUTER# show crypto ipsec sa
ROUTER# show crypto ipsec transform-set
ROUTER# show crypto map
\end{verbatim}

\end{document}
