Added the first details
[educational.data.git] / web / docs / ssh.gen
blob05ce5913cdb9d6435ff572bdc27494aeb24abadd
1 <include-Top-Docs>
2 <h1>Introduktion til ssh-nøgler</h1>
3 Da mange ikke er klar over at de kan skabe et nøgle sæt til at logge på 
4 mip's servere hjemme fra der gør at man nemt kan logge på linux og f.eks. 
5 bruge cvs, vil jeg her give en kort introduktion til dette.<br>
6 Først og fremmest er det en fordel at have en unix skal som emulerer
7 posix systemet installeret på sin windows - hvis man da ikke lige
8 anvender linux.<br>
9 Jeg har ovenfor angivet links til 
10 <a href="http://www.cygwin.com" target=_blank>Cygwin</a> ovenfor som 
11 jeg selv har anvendt meget og kun kan udtrykke min store tilfredshed 
12 med.
13 <p>
14 Selve generation og installation af ssh nøglen kan opridses i følgende
15 steps som er absolut minimum for installation.
16 <ol>
17 <li>Generation af ssh nøgle</li>
18 <li>Opkopiering af ssh nøgle til server</li>
19 <li>Pålogning på server</li>
20 <li>Tilføjelse af offentlig nøgle til <b>Authorized_keys</b></li>
21 <li>Udlogning</li>
22 </ol>
23 Dette skulle i de fleste tilfælde være nok, men i nogle enkelte
24 situationer - er det nødvendigt at eksplicit fortælle ssh hvordan at
25 pålogning skal foregå på serveren.<br>
26 Dette drejer sig om at oprette en config fil som fortæller hvordan at
27 ssh skal opføre sige over for serveren.
28 <p>
29 <h3>Generation af SSH nøgle</h3>
30 Hvis man med succes har fået installeret en cygwin eller på anden led
31 har adgang til et unix system på sin maskine - befinder der sig
32 sansynligvis en kommando på maskinen som hedder ssh-keygen <i>(hvis ikke
33 skal man sikre sig at ssh blev konfigureret under installationen af
34 sit styresystem (eller cygwin)) </i><br>
35 Ellers skulle man være klar til at starte på genereringen af
36 nøgler. Man skal være opmærksom på at mip's servere kun vil acceptere
37 ssh2 protokollen og derfor er det nødvendigt at skrive følgende:
38 <pre class=cmd>
39 [Tobias@zeus ~]$ ssh-keygen -t rsa [return]
40 </pre>
41 Dernæste spørger den efter hvor at den skal gemme de nøgler som at den
42 generer - her er standard helt ok <br>
43 <pre class=cmd>
44 Generating public/private rsa key pair.
45 Enter file in which to save the key (/home/Tobias/.ssh/id_rsa):
46 </pre>
47 Dernæst spørger den to gange efter et password:
48 <pre class=cmd>
49 Enter passphrase (empty for no passphrase): 
50 Enter same passphrase again:
51 </pre>
52 Her er det vigtigt at man ikke giver den et kode ord da man så blot
53 vil blive spurgt for dette næste gang man logger ind.<br>
54 slutligt skriver den:
55 <pre class=cmd>
56 Your identification has been saved in /home/Tobias/.ssh/id_rsa.
57 Your public key has been saved in /home/Tobias/.ssh/id_rsa.pub.
58 The key fingerprint is:
59 4f:7f:b0:3b:20:a7:09:bc:34:59:4b:2d:d0:10:35:02 Tobias@TOBIAS
60 </pre>
61 Herefter skal det nye nøgle par kopieres til serveren.<p>
63 <h3>Kopiering af nøgle par til serveren.</h3>
64 Har man gennemført det ovenstående, vil man i sit hjemme katalog nu
65 have et katalog der hedder .ssh (hvis der befinder sig et . foran et
66 katalog, betyder det at kataloget er skjult - så derfor vil man ikke
67 kunne se noget .ssh katalog hvis man prøver at skrive "ls")<br>
68 I dette katalog befinder sig to centrale filer: id_rsa og id_rsa.pub
69 Den første er din egen nøgle som du bruger til at identificere den
70 server du ønsker at logge på. Den nøgle skal kopieres til serveren for
71 at den kan udføre serveren den anden vej.<br>
72 Dette gøres med følgende kommando
73 <pre class=cmd>
74 [Tobias@zeus ~]$ scp ~/.ssh/id_rsa.pub \
75     [brugernavn på unix server]@mip.sdu.dk:.ssh [return]
76 </pre>
77 herefter spørger den naturligt efter et password.<br>
78 Nøglen befinder sig nu på serveren<p>
79 <h3>Pålogning på serveren</h3>
80 De sidste steps foregår fremover på serveren.<br>
81 For at logge på, skal man skrive følgende:
82 <pre class=cmd>
83 [Tobias@zeus ~]$ ssh [brugernavn]@ftp.mip.sdu.dk [return]
84 </pre>Serveren returnerer med følgende
85 <pre class=cmd>
86 Last login: Wed Oct  9 19:31:19 2002 from 0x50c60687.odnx
87 Sun Microsystems Inc.   SunOS 5.8       Generic Patch   October 2001
89 Problems?        http://www.mip.sdu.dk/~SYSOP/
90 Still problems?  mailto:SYSOP@mip.sdu.dk
92 (tobibobi@falster) ~ > 
93 </pre>
94 Man er nu logget på serveren.<p>
96 <h3>Tilføjelse af nøgle til Authorized_keys</h3>
97 Den sidste del af fasen inden man logger ud er ganske simpel.<br>
98 ssh holder alle offentlige nøgler som har adgang til at logge på denne
99 server gemt i en fil. Nøglerne bliver blot tilføjet en efter en efter
100 hinanden i denne fil - og derfor kan man også udføre den sidste
101 kommando meget enkelt:
102 <pre class=cmd>
103 (tobibobi@falster] ~ > cat .ssh/id_rsa.pub >> .ssh/authorized_keys
104 </pre>
107 <h3>Udlogning og test</h3>
108 Herefter er man færdig med at lægge nøglen ind og man kan nu teste sin
109 opsætning efter man har logget ud.
110 tast CTRL-D for at logge ud.
111 Dernæst skulle man gerne når man forsøger at logge ind, ikke blive
112 spurgt om nøgle.
115 <h3>Hvis det ikke virker, hvad så????</h3>
116 For det meste drejer det sig om at man har gjort en fejl i et at de
117 ovenstående tilfælde, så derfor prøv lige een gang til!<p>
118 Ellers er der den mulighed at ssh per default prøver at logge på med
119 den forkerte protocol, eller at den forsøge at logge på med forkert
120 brugernavn.<br>
121 Hvis dette er tilfældet, kan man også forsøge at oprette filen
122 ~/.ssh/config med følgende indhold:
123 <pre class=cmd>
124 Host ftp.mip.sdu.dk
125         User [brugernavn]
126         Protocol 2
127 </pre>
128 Det der sker ovenfor er at når ssh skal forsøge at lave en opkobling
129 til et bestemt sted, foretager den altid tjek af nogle enkelte filer
130 rundt omkring i systemet (deriblandt .ssh/config) om hvorledes at den
131 skal opføre sig over for en bestemt server.
132 Præcist betyder ovenstående at når ssh skal logge på ftp.mip.sdu.dk,
133 skal den logge på med brugenavnet [Brugernavn] (husk at skifte det ud
134 med dit eget brugernavn) og dernæst at den skal anvende ssh2 til at
135 logge på (som også er en del mere sikker end ssh1)<br>
136 Der kan tilføjes et hav af forskellige optioner - f.eks. også om
137 hvordan at man porter X igennem ssh - men det er mere avanceret og
138 kræver mere tid og plads at forklare end jeg har her - så det må blive
139 en anden gang.<br>Det kan dog siges at man altid kan lave en <b>man
140 ssh</b> for at finde informationer om dette.
142 $Revision: 1.1 $<br>$Author: tobibobi $
143 <include-Bottom>