From cdcaab18ecc7930e18dc48bba2adfa8e1286e8d3 Mon Sep 17 00:00:00 2001 From: Mart Lubbers Date: Wed, 11 Jun 2014 22:14:20 +0200 Subject: [PATCH] Truukjes section done, needs checking though Notes need to be made for all the slides, als more detailed agent forwarding needs to be explained --- img/firefox_socks.png | Bin 0 -> 52771 bytes pres.tex | 5 +- truuk.tex | 133 ++++++++++++++++++++++++++++++++++++++++-- 3 files changed, 129 insertions(+), 9 deletions(-) create mode 100644 img/firefox_socks.png diff --git a/img/firefox_socks.png b/img/firefox_socks.png new file mode 100644 index 0000000000000000000000000000000000000000..9c20532097f37aabc7f59b9c6b6e6c6df628e8fd GIT binary patch literal 52771 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 S*n6A^zSLEid literal 0 HcmV?d00001 diff --git a/pres.tex b/pres.tex index 9a9fda6..65205fa 100644 --- a/pres.tex +++ b/pres.tex @@ -18,13 +18,10 @@ } \lstset{ - basicstyle=\footnotesize, + basicstyle=\tiny, breakatwhitespace=false, breaklines=true, - frame=L, keepspaces=true, - numbers=left, - numberstyle=\tiny, tabsize=2 } diff --git a/truuk.tex b/truuk.tex index 546a4ba..37f6ea6 100644 --- a/truuk.tex +++ b/truuk.tex @@ -1,12 +1,12 @@ -\begin{frame} +\begin{frame}[fragile] \frametitle{Public key authentication} \pause - \begin{block}{Standaard key file} - \textasciitilde/.ssh/idrsa\\ + \begin{block}{Nut} + Mogelijk geen wachtwoord en veiliger \end{block} \pause \begin{block}{Command line vlag} - \lstinline{\$ ssh -i ~/.ssh/keyfile user@server.nl} + \lstinline{ssh -i ~/.ssh/keyfile user@server.nl} \end{block} \pause \begin{block}{Config file} @@ -14,18 +14,141 @@ \end{block} \end{frame} -\begin{frame} +\begin{frame}[fragile] + \frametitle{Public key authentication} + \framesubtitle{Genereren van een sleutelpaar} + \begin{block}{\$ ssh-keygen} + \begin{lstlisting} +Generating public/private rsa key pair. +Enter file in which to save the key (/home/user/.ssh/id_rsa): + /home/user/.ssh/github +Enter passphrase (empty for no passphrase): +Enter same passphrase again: +Your identification has been saved in /home/user/.ssh/github. +Your public key has been saved in /home/user/.ssh/github.pub. +The key fingerprint is: +92:92:6e:b8:3f:d5:76:e8:1b:73:ed:97:c4:e5:87:ba user@system +The key's randomart image is: ++--[ RSA 2048]----+ +| | +| | +| | +| . . .| +| o o.S. . + | +| o ...+ .. + o| +| . o. oo.. .o ..| +| o. .+ .. o | +| .... .. Eo | ++-----------------+ + \end{lstlisting} + \end{block} +\end{frame} + +\begin{frame}[fragile] + \frametitle{Public key authentication} + \framesubtitle{Installeren van een sleutel} + \begin{block}{Publieke sleutel: \textasciitilde/.ssh/github.pub} + \begin{lstlisting} +ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDBrgcK05XzRRbtmPyXQner5ef8 +suOAErDvInRDQbl2bjR0PGizL2t5lM9zE+mS0HHigteGLKma1NxVBBeam0CrodJN +BcW55x3LR/2fLSujUqcloQNwLUpD5da6eGg9yPo1fEaAOK1ssHGA30o6nmDEZEHy +PFgBtPwtDw5TPXPpzslaJx1u7CdeyzqpYsUycxzboy3GBcCsvG4nzD4C9vd0yk5o +jlDeECul4mwyg7NuEjltaY89RzrSa8NtqtURyg/JFQW2IVGe+oBXeTL/eQRuo1Nj +GhYyPm1VMVM+NvaYQZXxGfLpoDoP2V+deD+gP5DuC8WW4LSGnkHKhDEin0Yl mar +t@valhalla + \end{lstlisting} + \end{block} + \pause + \begin{block}{Geheime sleutel: \textasciitilde/.ssh/github} + \begin{lstlisting} +-----BEGIN RSA PRIVATE KEY----- +9RnNnrD2DkJBqoX/Aph2wVZg1y/I8t27C7yPR66xUNyHWG4J+k+q7REhA/K4fvjl +NNvNtbc4EeNI+NxaaftH1qo6yBIF5yDwuEYKixeconLCeGl9/exdlyMyXbuuTrU9 +d5DgKnWxgJPHnDjmwqTeX3A5S34m/qJKK67IF9WqedeHxeMKzMZYcZpcsFxdvHk/ +... +-----END RSA PRIVATE KEY----- + \end{lstlisting} + \end{block} + \pause + \begin{block}{Installeren op de server} + De inhoud van het publieke bestand moet in + \lstinline{~/.ssh/authorized_keys} komen te staan + \end{block} +\end{frame} + +\begin{frame}[fragile] \frametitle{X forwarding} + \begin{block}{Nut} + Grafische programma's draaien op een machine die niet perse binnen + handbereik is. + \end{block} + \pause + \begin{block}{Command line vlag} + \lstinline{ssh -X user@server.nl} + \end{block} + \pause + \begin{block}{Config file} + \lstinline{ForwardX11 yes} + \end{block} + \pause + \begin{block}{Caveat} + Veiligheid + \end{block} \end{frame} \begin{frame} \frametitle{Port forwarding} + \begin{block}{Nut} + Onversleutelde communicatie versleutelen + \end{block} + \pause + \begin{block}{Command line vlag} + \lstinline{ssh -L port:host:hostport}\\ + \lstinline{ssh -R port:host:hostport} + \end{block} + \pause + \begin{block}{Config file} + \lstinline{LocalForward port host:hostport}\\ + \lstinline{RemoteForward port host:hostport} + \end{block} \end{frame} \begin{frame} \frametitle{Agent forwarding} + \begin{block}{Nut} + Je SSH cache meenemen naar een andere server + \end{block} + \pause + \begin{block}{Command line vlag} + \lstinline{ssh -A user@system} + \end{block} + \pause + \begin{block}{Config file} + \lstinline{ForwardAgent yes} + \end{block} \end{frame} \begin{frame} \frametitle{SOCKS proxy} + \begin{block}{Nut} + Al je internet verkeer via een \textit{vertrouwde} locatie laten lopen + \end{block} + \pause + \begin{block}{Command line vlag} + \lstinline{ssh -D port} + \end{block} + \pause + \begin{block}{Config file} + \lstinline{DynamicForward port} + \end{block} + \pause + \begin{block}{Instellen in Chromium} + \lstinline{chromium --proxy-server="socks5://host:8080" --host-resolver-rules="MAP * 0.0.0.0 , EXCLUDE host"} + \end{block} +\end{frame} + +\begin{frame} + \frametitle{Instellen in Firefox} + Edit - Preferences - Advanced - Network - Settings + \includegraphics[width=200px]{./img/firefox_socks.png} \end{frame} -- 2.20.1