SSH-terminal

Ett säkert sätt att sköta sin webbplats är att använda hotellets kontrollpanel.
Shell-access med telnet eller SSH är där ett komplement för avancerade användare.
På Algonet-plattformen saknas kontrollpanel.

Man kan numera logga in med lösenord mot Algonet via SSH! Testa PuTTY eller snabbinstallationen (enl Mathias Axelsson):
"Installera TeraTerm + TTSSH. Starta TTSSH, ange t.ex. kairos.algonet.se och SSH. Knappa in lösenordet för ditt konto och ange Use plain password to log in och sedan är det klart". D v s teminalinloggningen.
Detaljer och fler finesser nedan! Ett alternativ som har hjälpt mig är MindTerm (SSH2) som går att köra som Java-applet. Beskrivs här bara kortfattat. (Kunde köra appleten på en publik dator där man inte fick köra egna program)

Installation med TTSSH 1.5.4 (SSH1) och MindTerm (SSH2)
Inställningar
Skapa nycklar på Algonet. OBS! behövs ej!
Tangentbord och Pico
Läsa News och skicka e-post på Algonet _Nytt_ 11 apr 2005!
Köra från diskett
SSH med X forwarding
Säkerhet, förlängning av tunneln
Sammanställning
Problem och tips, bl a
    /ssh-v
    Port upptagen
    FTP-överföring
    Z-modem

Se också:
Ssh (Secure Shell) FAQ - Frequently asked questions - by Thomas König.

Installation

OBS! Eftersom jag har internetkonto på Algonet är mycket nedan anpassat till detta. Man kan välja mellan host01, host02 och host03.algonet.se (kairos, aristotle resp wilhelmina.algonet.se). För en del typer av åtkomst utifrån krävs en .remote fil (enl Algonet FAQ) i roten på kontot. En del nedan kan säkert tillämpas på andra servrar med Secure SHell-protokollet installerat! Algonet har bytt version (feb -01) och kör numera SSH2 men SSH1-klienter (som Teraterm) stöds tills vidare.

Teraterm
Har länge använt gratisprogrammet Teraterm (terminalemulator med telnet, skärmbuffert, filöverföring, eget scriptspråk, möjlighet att ändra fonter, tangentbordsuppsättning mm. När jag hittade en ny version av Teraterm (2.3) på Teraterm Home Page såg jag också en länk till TTSSH: An SSH Extension to Teraterm som fungerar i Windows9x och NT.

Jag tycker Teraterm är robust och anpassningsbar. Lägger man till filerna från TTSSH i samma katalog får man komprimering och ytterligare konfigureringsmöjligheter. Begriper den bättre än SSH Windows Client.

Hämta hem Teraterm ttermp23.zip; 943376 bytes och ttssh154.zip (271777 bytes).

Installera först Teraterm (ttermp23.zip innehåller setup.exe). Packa också upp filerna i ttssh154.zip i programkatalogen (t ex C:\PROGRAM\TTERMPRO eller /amerikansk windows/ C:\PROGRAM FILES\TTERMPRO).

MindTerm
Om man vill använda SSH2 finns MindTerm helt skriven i Java. Går att använda både som applikation och som applet (via webbläsare - se demo). MindTerm får användas fritt för privat bruk. Det krävs att man har Java installerat (med webbläsaren eller separat). På en långsam dator tar det påtagligt lång tid att starta javamotorn, men bara applikationen startat får man normal "terminalfart".

För att köra MindTerm som applikation tar man hem binärer (och handbok som PDF-fil) från AppGates nedladdningssida. Packa upp filerna i t ex c:\Mindterm. Starta Mindterm.jar. Läs och godkänn licensvillkoren. Bekräfta skapande av hemkatalog för MindTerm (typ C:\WINNT\Profiles\user\mindterm\ - varierar med bl a OS och webbläsare).

SSH Server/Alias: host02.algonet.se
No settings file for host02.algonet.se found.
(^C = cancel, ^D or empty = don't save)
Save as alias : host02           
Current settings file: 'C:\WINNT\Profiles\userid\mindterm\host02.mtp'

Connected to server running SSH-1.99-OpenSSH_2.9p2

Bekräfta skapande av Known hosts directory (...\hostkeys) och lägg till hosten.

Server's hostkey (ssh-rsa) fingerprint:
openssh md5:  34:a3:07:25:fd:8c:8f:d9:f0:ed:de:dc:a1:c6:17:7a
bubblebabble:
xuhih-kalal-zytel-vybaf-micyf-lenom-myvuf-dydom-labos-bokez-pexox

host02.algonet.se login: userid  
userid@host02.algonet.se's password: ******
Last login:  ...
Sun Microsystems Inc.   SunOS 5.8       Generic February 2000
aristotle:~>

Du är inloggad!

I filen host02.mtp läggs automatiskt alla inställningar. För att komma åt News på Algonet med sin favoritläsare får man kan i Tunnels Basic, välja Protocol nntp mot Remote host news.algonet.se, så får man en tunnel till News. MindTerm har dessutom inbyggd SCP File Transfer. Däremot har jag inte fått Create keypair att fungera.

Sitter man bakom en brandvägg och måste använda proxy, kan man välja mellan http, socks4 och socks5. Har själv bara testat via http-proxyn i WinGate, vilket fungerar smidigt.

Åter början

Skapa nycklar - Kan hoppas över (alt lösenord)

Starta ttermpro, gå in på host01.algonet.se med ditt användarnamn (userid) och lösenord.Nu ska du skapa en publik och en privat RSA krypteringsnyckel. Du får ange en Passphrase, som du ska använda vid inloggning med SSH.

Det står
aristotle:userid>, skriv dit
aristotle:userid>ssh-keygen
Efter en stund står det
Key generation complete.
Enter file in which to save the key (/home/userx/userid/.ssh/identity):
Tryck Enter
Enter passphrase: Skriv de(t) ord du vill använda vid inloggning, tryck Enter
Enter the same passphrase again: Upprepa
Your identification has been saved in /home/userx/userid/.ssh/identity.
Your public key is ...
Your public key has been saved in /home/userx/userid/.ssh/identity.pub

Ladda hem identity-filen till lokala TERATERM-katalogen:
aristotle:userid>cd .ssh
aristotle:userid>sz identity
I Teraterm kör du File, Transfer, Zmodem, Receive så laddas filen hem.

Därefter döper du om identity.pub till authorized_keys.
aristotle:userid>mv identity.pub authorized_keys

MindTerm, kör SSH2 med DSA krypteringsnyckel. Du får ange en Passphrase, som du kan använda vid inloggning med SSH (men som sagt fungerar det ju med användarnamn/lösenord mot Algonet). Eftersom MindTerm körs krypterat är det inget principiellt fel att alstra filen så här. Radera bara den privata id_dsa på servern när du kollat att allt fungerar

Det står
aristotle:userid>, skriv dit
aristotle:userid>ssh-keygen -d
så alstras DSA-nyckelpar:
Generating public/private dsa key pair.
Efter en stund står det
Enter file in which to save the key (/home/user4/arnek/.ssh/id_dsa):

Tryck Enter
Enter passphrase (empty for no passphrase): Skriv de(t) ord du vill använda vid inloggning, tryck Enter
Enter the same passphrase again: Upprepa
Your identification has been saved in /home/userx/userid/.ssh/id_dsa.
Your public key has been saved in /home/userx/userid/.ssh/id_dsa.pub The key fingerprint is: ....

Starta SCP och gå till .ssh på servern, markera id_dsa och ladda hem den.
(Passa samtidigt på att döpa om id_dsa.pub till authorized_keys2. Man kan ändra i sin host02.mtp, men jag har inte hittat hur man ska ändra inloggningsmetod via menyer. Man får skapa en ny fil via Settings New Server. Välj nu Authentication publickey och spara som nytt alias.

Åter början

Inställningar TeraTerm

(Jag har inte hållt på så mycket med MindTerm att jag kan ge detaljerade anvisningar.)

Font, t
ex 
FixedsysStäng ner TeraTermm och starta nu i stället ttssh.exe så får du en del nya menyval.
Välj nu först din favoritfont så att texten blir tydlig och du får med åäö!


komprimeringI Setup.SSH... anges som ReadWrite-fil ssh_known_hosts. Dessutom kan du välja om du vill ha komprimering mellan dig och servern. På ett LAN är det bäst att stänga av den helt, cpu:n kommer inte att kunna komprimera i den takt LAN:et kan svälja data så man vinner inget på det.

Sitter man på en modemkoppling kan det helt klart löna sig - Den stora vinsten gör man på forwardade kopplingar (till t.ex. mail och newsserver). Här skapas mycket output som är ren text och därför kan komprimeras mycket bra.

Slutsats: sitter du med modem, skruva upp komprimeringen på högsta om du inte har en gammal dator. Skruva ner om du tycker att ditt skal känns långsamt. Sitter du på LAN eller kabelmodem så kan du testa att sätta den på 3-4, men testa om det verkligen ger någon förbättring.
(Fritt efter Jesper Trägårdh)

Algonet stöder efter uppgradering inte DES-chiffer, se till att det är avstängt!


I Setup.SSH Authentication... skriver du ditt egna Userid, väljer Use RSA key to log in och pekar på Identity-filen som Private key file. (Alternativt väljer du "Use plain Password to log in")


Ta bort bocken för Telnet och byt till Port# 22 under Setup.TCP/IP (för att slippa ange /ssh). Där kan du också skriva in de vanligaste host-namnen.

-> Spara till slut setup-en!!
Du har väl inte glömt att spara setup-en?!

När du startar sökväg\ttssh.exe host01.algonet.se får du upp en "Security Warning". För att slippa den i fortsättningen bockar du i Add this machine and its key to the known hosts file och klickar Continue.
User name enligt ovan är ifyllt, skriv dit Passphrase enligt ovan. Tryck Enter så är du inne på Algonet.

Åter början

Tangentbord

När man installerat TeraTerm används automatiskt filen KEYBOARD.CNF. Några olika tangentbordslayouter finns med:

IBMKEYB.CNF      IBM-PC/AT 101-tang.
PC98KEYB.CNF     NEC PC 98 tangentbord (Japanese Windows 95)
NT98KEYB.CNF     NEC PC 98 tangentbord (Japanese Windows NT)
KEYBOARD.CNF    (vid installation kopia av IBMKEYB.CNF)

Du kan välja olika tangentfunktioner, för t ex VT terminal, användardefinierade teckensträngar, Tera Term-kommandon och makrofiler. Varje tangent eller tangentkombination har en unik tangentkod, "PC key code". Visas när du startat det bifogade programmet Keycode.exe och håller ned en tangent(kombination). OBS! CNF-filen får innehålla varje PC-tangentkod bara en gång.

Inställningsfilen har sex sektioner:
[VT editor keypad]
[VT numeric keypad]
[VT function keys]
[X function keys]
[Shortcut keys] och
[User keys].
Formatet är <VT/Xterm/Shortcut ... tangent>=<PC-tangentkod> resp
<User key name>=<PC key code>,<Control flag>,<Character string>

För att bli vän med olika *nixprogram som Pine och framför allt Pico ("The Pine Composer") ska man först lära sig snabbtangenterna. Läs också om Pine hos t ex LiU eller högskolan i Dalarna och om Pico hos MdH eller Chalmers! När inte det räcker kan man ändra definitionen för tangenter man ofta vill använda.

Jag har lagt till Delete; (annars Ctrl-D), Ctrl-^ (Markera i Pico, annars Ctrl-Shift-6 på svenskt tangentbord) och $ under [User keys] (och ibland *, när det inte fungerar ändå ...)

[USER KEYS]
;Delete
User1=339,0,$04
;^^ eller Ctrl-^
User2=1051,0,$1E
;$ 
User3=3077,0,$24
;* (kan fungera ändå; testa!)
User4=55,0,*

där
User1 är första användardefinierade tangenten (av max 99)
339 är PC-koden för tangenten
0 "skickas oförändrad" och
$04 är tecken(strängen), i det här fallet en hexidecimal ASCCI-kod. Tyvärr fungerar det lite olika beroende på dator/handhavande (?!) (har jag märkt ...), så testa!

Vill man ange att ett tangentvärde inta ska användas, ange t ex EditCopy=off. Kontrollera också att du inte får dubletter t ex 55 och 339! Man kan direkt ladda sina ändringar genom Setup.Load key map. Se vidare Keycode.txt med exempel!

Åter början

Läsa News på och skicka e-post via Algonet

Tack för tips från Jesper Trägårdh och Marcus!

Om du vill kunna läsa tninet/algonet-grupperna samt posta från t ex jobbet, använd då SSH och logga in på en av algonets unixmaskiner. Kör sk port forwarding. I newsläsaren kopplar du upp dig till localhost. SSH forwardar förbindelsen och news.algonet.se (extern newsfeed har slutat fungera, testa där news.telenor.se _Nytt_ 11 apr 2005!) ser dig som en lokalt inloggad klient (från algonets unixmaskin). Likaså kan du få smtp.algonet.se (servern för utgående e-post) att se dig som lokalt inloggad och du kan skicka e-post via fast lina från ditt favoritprogram. OBS! ange localhost som adress för utgående e-post (SMTP).

Du kan i genvägen till programmet antingen ange portarna eller spara i en ini-fil enl ett av alternativen nedan (/ssh behövs inte om du har valt bort telnet och bytt till port # 22 ovan):

* OBS! programkatalogen får du i svensk Windows ändra från amerikanska C:\PROGRAM FILES\TTERMPRO till C:\PROGRAM\TTERMPRO eller -allmänt- till den katalog du angivit vid installationen. Högerklicka, välj egenskaper, ändra under fliken Genväg!

(OBS! Det finns en bugg i TTSSH 1.4 (tidigare version). Problemet var att kommandoradsparametrarna som styr forwardingen var trasiga, varför ovanstående inte gäller där! Man måste i stället konfigurera denna forwarding via menyval.)

Metoden kan också användas i version 1.5.1 - spara inställningarna i en eller flera ini-filer. Välj Setup.SSH forwarding ... och fyll i enl nedan. Glöm som sagt inte att spara! (Setup.Save Setup!). Genom att göra om inställningarna och spara olika ini-filer får du flera färdiga startalternativ. Genväg enligt mönstret ovan.
Forwarding
Setup

Jämför också ... säker kanal med SSH under Telnet i Algonet FAQ, där Mathias Axelsson beskriver hur han löst problemet under Linux!

Åter början

Köra från diskett

Är du ute på resa och vill köra SSH får du med de nödvändiga filerna på diskett:

 Katalog i A:\

KEYBOARD CNF         2 819  00-06-14  10.46 KEYBOARD.CNF
ALGO     LNK           461  00-08-16  11.03 ALGO.LNK
TTSSH    EXE        20 480  98-11-18  16.36 TTSSH.EXE
IDENTITY               530  98-09-29  17.40 IDENTITY
TTERMPRO EXE       251 904  98-03-10   0.00 TTERMPRO.EXE
TTPCMN   DLL        56 320  98-03-10   0.00 TTPCMN.DLL
TTXSSH   DLL       182 272  98-12-24  11.08 TTXSSH.DLL
LIBEAY32 DLL       393 216  98-11-18  10.12 LIBEAY32.DLL
TERATERM BAK         6 465  99-08-24   8.57 TERATERM.BAK
TTPSET   DLL        77 824  98-03-10   0.00 TTPSET.DLL
TTPFILE  ORG       108 544  98-03-10   0.00 TTPFILE.ORG
TTPDLG   DLL        86 016  98-03-10   0.00 TTPDLG.DLL
TTPTEK   DLL        80 384  98-03-10   0.00 TTPTEK.DLL
TERATERM INI         6 456  00-08-16  11.38 TERATERM.INI
SSH_KN~1             5 070  00-10-29  15.03 ssh_known_hosts
        16 fil(er)      1 279 126 byte
         0 kat            177 152 byte lediga

Det krävs att du får köra egna program och att du håller reda på disketten med den viktiga identity-filen!

Och så tar det ganska lång tid att läsa in hela programmet ...

Åter början

SSH med X forwarding

Jesper Trägårdh tipsar om att man kan använda SSH med X forwarding för att köra X Window System (Grafiskt fönstersystem i *nix) mot Algonet. Sätt en bock i rutan under Forwarding Setup! (Se ovan, Gäller från version 1.4 av TTSSH!). Dels behöver man inte veta vilken ip-adress man har (eftersom DISPLAY kommer att sättas automagiskt), dels krypteras och komprimeras all trafik. Den här metoden fungerar även om man sitter bakom en brandvägg/router som kör typ NAT, dvs att man har privata ip-adresser på alla maskiner som sedan mappas mot ett par publika. Dock måste brandväggen släppa igenom ssh-trafiken utåt - kolla med nätadministratören.

Du måste också installera en X window-server t ex MI/X for Windows 95/98/NT 3.51 or 4.0 (Intel) (Version 19 Mar 1997, gratis) eller WinaXe (Demo, 30 min per gång, tidigare namn X-WinPro) på din PC. Sedan du startat TTSSH och X-servern är det bara att starta en X-applikation på Algonet, så poppar programmet upp i PC-n. På Algonet finns under /usr/openwin/bin ett antal X-applikationer.

Skriv: setenv PATH "${PATH}:/usr/openwin/bin" så läggs katalogen till i din path.

Vill du titta på minbild.jpg skriv xview minbild.jpg så dyker den upp i X-terminalen.

Vill gärna ha tips vad som kan köras och vilka problem man kan få över långsamma linor!.

Åter början

Säkerhet

I dokumentationen för TTSSH står

In version 1.5, I introduced an option to allow anyone to connect to forwarded ports. This is VERY STUPID. If you use it you are quite likely to create a gaping wide security hole. It is only accessible by setting the variable "LocalForwardingIdentityCheck" to 0 in the .INI file. Rejected connections to forwarded ports now display the attacker IP address correctly.

Undviker man denna "dumma inställning" bör alltså TTSSH i sig vara säkert.

På sitt hemmanätverk får man själv ordna både framkomlighet och säkerhet. Har själv ett nät på två datorer med WinGate 2.1 (gammal). (Svensk representant Upstream.)

Där lägger man till SSH som TCP Mapping service:
Connection to service, Accept connections on port 8023
Enable default mapping to server host01.algonet.se on port 22.

På den andra datorn pekar jag genvägen mot WinGate-burken: sökväg\ttssh.exe 192.168.0.1:8023 /ssh-L119:news.algonet.se:119 /ssh-L25:smtp.algonet.se:25 /ssh

Från säkerhetssynpunkt är det viktigt att begränsa åtkomsten att gälla kort i det lokala nätet (standard 192.168.0.1) och localhost, anges under Bindings. (WinGate "lyssnar" på dessa och inga andra.)

Har man bredbandsanslutning vill man antagligen nå nätet utifrån från ett begränsat antal IP-adresser. Använder för detta ZoneAlarm, där man förutom kortet mot det lokala nätet (192.168.0.1) kan ange ett antal adresser på Internet som "lokala". Mer information på svenska från Slottsbergsgymnasiet!

Åter början

Sammanställning av tjänster och portar

Vill du ... Tjänst Port "Växel"   Anmärkning
använda news NNTP 119 /ssh-L119:news.algonet.se:119    
skicka e-post SMTP 25 /ssh-L25:smtp.algonet.se:25    
läsa e-post POP3 110 /ssh-L110:pop.algonet.se:110    
göra filöverföringar FTP 21 /ssh-L21:ftp.algonet.se:21   Bocka för rutan Passive transfers. (Testat i WS_FTP).

Säker kanal har du mellan din egen dator och host0x.algonet.se (sedan blir det "osäker" mellan Algonets burkar)

Åter början

Problem och tips:

Jag har fått mail från om "misslyckade" installationer; ofta löser det sig om man helt enkelt installerar om. Skriver man in /ssh-v (eller -ssh-v) på kommandoraden dumpar TTSSH ut en logfil TTSSH.LOG. Den kan hjälpa till att hitta problem.

Script som ligger i aktuell katalog kan inte köras: skriv "./kommando" i stället för "kommando". Har lagt mina egna kommandon i en ~/bin-katalog, så fungerar de "överallt" vid nästa inloggning.

I TeraTerm kan man få felmeddelande om port upptagen:

"Some socket(s) required for port could not be initialized. Some port forwarding services may not be available."

Kolla med netstat -a så ser man om problemet verkligen beror på att någon applikation huggit port 25. Man kan också (utan att ha ssh med portforwarding igång) telnetta till localhost, port 25 och se om något svarar. Det troliga är att ett SMTP-program, t ex det som följer med NT:s Option Pack är igång. Du vill antagligen inte använda någon egem SMTP-server om du inte ens vet att den är installerad! Ta bort den och kör port forvarding enligt grundtipset!! (Tips från Jesper Trägårdh m fl.)

En ful-lösning (om du t ex inte får/kan ta bort mailservern som kör på din maskin) är att använda en annan lokal port (t.ex. 8025) och forwarda den till smtp.algonet.se, port 25. Kräver också att man konfiguerar om mailklienten till att prata med localhost, port 8025.

Även andra program kan använda någon port du vill använda via SSH, t ex FTP, port 21. Håll reda på vilka program som körs ...

När man stänger TeraTerm kan man få meddelandet:

Waiting for forwarded connections to terminate...
The following connections are open:
127.0.0.1

Meddelandet får man om man fortfarande använder någon av portarna som man forwardar, t.ex. för att hämta hem news. TeraTerm kopplar ner så snart porten blir ledig - inget att normalt oroa sig för ...

FTP: Lösenorden och alla kommandon går krypterat, däremot går filöverföringarna i klartext så säkerheten är större med ssh. I många fall hade man velat ha krypterad filöverföring också, men pga det sätt FTP-protokollet är konstruerat går det inte (om man vill använda ssh för krypteringen). Alternativ är zmodem-överföring via ssh-terminalen - Jesper Trägårdh

Z-modem används via menyval (File.Transfer.ZMODEM.Send). För att hämta används sz. I teraterm.ini kan du ange ; ZMODEM auto receive ZmodemAuto=on så startar nedladdningen automatiskt (till Teraterm-katalogen eller den du anger under File.Change directory ...). Skriv sz -h för mer information!

När man loggar in med SSH på Algonet står det "no mail" fast det finns mail. Detta beror på att skalet på t ex kairos tittar i /var/mail/kontonamn och där finns inga mail. Mailen finns på en helt annan server som kairos och aristotle inte känner till alls. Förvirrande men förklaring finns alltså ...

Det finns fler inställningsmöjligheter som bara nås via ini-filen eller genom att editera KEYBOARD.CNF.

Det är säkert inte så enkelt att förstå alla moment, mycket nytt med terminal-inloggningar, ev skapa krypteringsnycklar, filöverföring, programinställningar mm. Efter lite knåpande går det säkert bra, och sedan går liknande uppgifter så mycket lättare!

Åter början


Sidan besökt 13739 gånger sedan 24 dec 1998

Åter hemsidan

Se också sidor om:

Error robot   Skapa anpassade felmeddelanden (bättre kolla fellogg)
Mailman   Program för e-postlistor  _Nytt!_ Använder jag till nyhetsbrev
PHP   Tester med PHP på Algonet  
WAP   Grunder för att publicera för WAP-telefon  
XSSI   Extended Server Side Includes Anpassar för datum, webbläsare mm
Allmänt   Tekniska grunder Varför sidorna flyttats till Oderland & Co
    Titta gärna in hos Folkmusikhuset i Stockholm

Kontakta Arne Kjellman arnek@sverge.nu
Uppdaterad 2005-04-11

Valid
   HTML 4.01! Visas bäst med Valfri web-läsare
Server 91.201.60.12