SSH-asiakasohjelma Windowsissa
On olemassa useita ohjelmia, joilla voidaan muodostaa etä-SSH-yhteys Windows-järjestelmässä. Tämä sivu sisältää ohjeet kolmeen suosittuun vaihtoehtoon: MobaXterm, PuTTY ja Windows PowerShell. PowerShell sisältyy oletuksena kaikkiin nykyaikaisiin Windows-koneisiin. MobaXterm ja PuTTY täytyy asentaa.
Tiedostonsiirtoon suosittuja vaihtoehtoja ovat WinSCP, FileZilla, Cyberduck ja MobaXtermin SFTP-selain.
SSH-asiakasohjelmien käyttöön CSC:n supertietokoneiden kanssa vaaditaan SSH-avaimet.
Windowsissa on laajasti käytössä kaksi eri avaintyyppiä:
- OpenSSH-avaimet (samat kuin Linuxissa/Macissa), joita käytetään MobaXtermin, PowerShellin ja Cyberduckin kanssa.
- PuTTY-avaimet
.ppk, joita käytetään PuTTYn, MobaXtermin, WinSCP:n, FileZillan ja Cyberduckin kanssa.
Windowsin SSH- ja SFTP-työkalut Roihulle
SSH certificates are required to connect to Roihu over SSH
To connect to Roihu, users must sign their public key in MyCSC to obtain a time-based SSH certificate. Each certificate is valid for 24 hours, and once it expires, a new one must be generated by signing the public key again.
CSC tarjoaa kaksi vaihtoehtoa SSH-avainten allekirjoittamiseen Roihua varten:
- Vaihtoehto 1, SSH-varmenteen manuaalinen lataus MyCSC:stä
- Vaihtoehto 2, varmenneaputyökalu
Joten Roihun osalta kannattaa huomioida myös, miten eri työkalut tukevat SSH-varmenteen päivittämistä:
| Tool | Roihu, option 1 | Roihu, option 2 |
|---|---|---|
| MobaXterm, inc SFTP browser | ||
| PuTTY | ||
| PowerShell | ||
| WinSCP | ||
| FileZilla | Vaikea | Vain Pageantin kanssa |
| Cyberduck |
Ensikäyttöön ja kevyeen käyttöön Roihun selainkäyttöliittymä voi olla helpoin aloitusvaihtoehto, sillä se tarjoaa pääsyn kirjautumis- ja laskentasolmujen komentotulkkeihin sekä graafisen tiedostonsiirtotyökalun. Sitä ei kuitenkaan voi käyttää datan siirtämiseen suoraan supertietokoneiden välillä.
SSH-avainten luominen
Using SSH keys
See the page on setting up SSH keys for general information about using SSH keys and certificates for authentication. Please note that it is mandatory to add your public key to MyCSC – copying it directly to a CSC supercomputer does not work!
Supported key types are Ed25519 and RSA 4096 through 16384. We strongly recommend Ed25519.
Riippuen siitä, mitä työkaluja aiot käyttää (ks. yllä) SSH-yhteyteen ja tiedostojen siirtämiseen, luo oikeantyyppiset SSH-avaimet.
Voit luoda PuTTYn SSH-avaimia PuTTYgen- tai MobaKeyGen-työkaluilla. Tavallisesti PuTTYgeniä ei tarvitse asentaa erikseen, koska se toimitetaan PuTTYn asennuspaketin mukana. MobaKeyGen sisältyy MobaXtermin asennukseen.
Käynnistä PuTTYgen tai MobaXterm ja seuraa SSH-avainten käyttöönotto-ohjetta. Vaikka ohje on muodollisesti kirjoitettu MobaKeyGenille, ohjeita voi helposti soveltaa PuTTYgeniin, koska käyttöliittymä on käytännössä identtinen.
Voit myös tutustua PuTTYgenin dokumentaatioon tai asiaankuuluvaan SSH Academyn ohjeeseen.
Luodaksesi SSH-avaimet MobaXtermillä tai PowerShellillä, avaa pääte ja suorita:
Jos et ole aiemmin ottanut SSH-avaimia käyttöön, voit huoletta hyväksyä oletusnimen
ja -sijainnin painamalla ENTER (suositeltu). Jos oletustiedostonimen käyttö kuitenkin
korvaisi olemassa olevan avaimen, saat seuraavanlaisen varoituksen:
Yleensä olemassa olevia avaimia ei kannata korvata, joten syötä n, suorita
ssh-keygen uudelleen ja anna pyydettäessä eri tiedostonimi. Katso myös
osio
SSH-avain- tai varmennetiedosto ei-oletusnimellä tai ei-oletussijainnissa.
Seuraavaksi sinulta pyydetään tunnuslausetta. Valitse turvallinen tunnuslause. Sen tulisi olla vähintään 8 merkkiä pitkä ja sisältää numeroita, kirjaimia ja erikoismerkkejä. Älä koskaan jätä tunnuslausetta tyhjäksi luodessasi SSH-avainparia!
Jos haluat luotujen avainten säilyvän MobaXtermin uudelleenkäynnistysten yli,
määritä MobaXtermille pysyvä kotihakemisto ohjelman asetuksissa
(Settings --> Configuration --> General). Huomaa, että tämä vaaditaan vain, jos
olet luonut avaimesi päätteen kautta, ei MobaKeyGenillä.
PuTTYgeniä tai MobaKeyGeniä voidaan käyttää myös avainten muuntamiseen OpenSSH-muodosta PuTTY-muotoon ja päinvastoin.
Kun olet luonut SSH-avainparin, sinun täytyy lisätä julkinen avain MyCSC-portaaliin. Roihuun yhdistämistä varten sinun täytyy lisäksi allekirjoittaa julkinen avaimesi saadaksesi aikaan perustuvan SSH-varmenteen, jota tarvitaan tunnistautumiseen.
Voit myös halutessasi määrittää todennusagentin, jotta SSH-avainten käyttö olisi helpompaa.
Peruskäyttö
Kun olet ottanut SSH-avaimet käyttöön, lisännyt julkisen avaimesi MyCSC:hen ja ladannut SSH-varmenteen (vaaditaan vain Roihulle), voit muodostaa yhteyden CSC:n supertietokoneeseen.
Yhdistä MobaXtermillä avaamalla pääte ja suorittamalla:
# Replace <username> with the name of your CSC user account and
# <host> with "roihu-cpu" or "roihu-gpu"
ssh <username>@<host>.csc.fi
Tämä olettaa, että SSH-avaimet (ja Roihun varmenne) on tallennettu vakiosijaintiin vakiotiedostonimillä:
- Yksityinen avain:
~/.ssh/id_<algorithm> - Julkinen avain:
~/.ssh/id_<algorithm>.pub - Varmenne:
~/.ssh/id_<algorithm>-cert.pub
missä <algorithm> on joko ed25519 tai rsa.
Vaihtoehtoisesti voit yhdistää graafisen käyttöliittymän kautta tämän ohjeen mukaisesti.
Kun käynnistät PuTTYn, sinua pyydetään määrittämään SSH-istunto. Tee se alla olevan taulukon mukaisesti:
| Option | Value |
|---|---|
| Host Name | roihu-cpu.csc.fi or roihu-gpu.csc.fi |
| Port | 22 |
| Connection type | SSH |
| Connection -> Data -> Auto-login username | csc_username |
On suositeltavaa käyttää Pageantia SSH-avainten tarjoamiseen. Jos et käytä Pageantia, lisää avaimet käsin: valitse yksityinen avain ja
varmennetiedosto (vain jos yhdistät Roihuun) kohdassa
Connection --> SSH --> Auth --> Credentials.
Lopuksi napsauta Open. Jos et käytä Pageantia, sinulta kysytään SSH-avaimen tunnuslausetta.
Jos yhdistät ensimmäistä kertaa, PuTTY kysyy, luotatko
palvelimeen. Napsauta Accept.
Avaa PowerShell ja suorita:
# Replace <username> with the name of your CSC user account and
# <host> with "roihu-cpu" or "roihu-gpu"
ssh <username>@<host>.csc.fi
Tämä olettaa, että SSH-avaimet (ja Roihun varmenne) on tallennettu vakiosijaintiin vakiotiedostonimillä:
- Yksityinen avain:
~/.ssh/id_<algorithm> - Julkinen avain:
~/.ssh/id_<algorithm>.pub - Varmenne:
~/.ssh/id_<algorithm>-cert.pub
missä <algorithm> on joko ed25519 tai rsa.
Corrupted MAC on input
Kun yhdistät Windowsin OpenSSH-asiakasohjelmistolla, saatat kohdata virheen "Corrupted MAC on input". Tämä on tunnettu ongelma, ja sen voi välttää valitsemalla nimenomaisesti toisen MAC-algoritmin. Lisätietoja on UKK-sivullamme aiheesta.
SSH-avain- tai varmennetiedosto ei-oletusnimellä tai ei-oletussijainnissa
Jos yhdistät MobaXtermin päätteen tai PowerShellin kautta ja olet tallentanut
SSH-avaimesi ja/tai varmennetiedostosi ei-oletusnimellä tai
ei-oletussijaintiin (muualle kuin ~/.ssh/id_<algorithm>), sinun täytyy
kertoa ssh-komennolle, mistä nämä tiedostot löytyvät. Käytä -i-valitsinta
seuraavasti:
# Replace <username> with the name of your CSC user account,
# <host> with "roihu-cpu" or "roihu-gpu", and
# <path-to-private-key> with the path to your SSH private key
ssh <username>@<host>.csc.fi -i <path-to-private-key> -i <path-to-certificate>
Graafinen yhteys
Note
For performance reasons, we generally recommend using the HPC web interfaces to run applications which require displaying graphics.
Ottaaksesi grafiikan näyttämisen käyttöön SSH:n yli, käytä -X-valitsinta (X11-välitys) tai -Y-valitsinta
(luotettu X11-välitys) yhteyttä luotaessa:
Kun yhdistät MobaXtermin graafisella käyttöliittymällä, varmista, että X11-Forwarding-asetus
kohdassa Session --> SSH --> Advanced SSH settings on käytössä.
Jos haluat muodostaa yhteyden graafisella tuella,
voit käyttää esimerkiksi
Xming X serveriä. Ottaaksesi käyttöön
grafiikan etänäyttämisen, valitse PuTTYn ohjelma-asetuksista Enable X11 forwarding
(Connection --> SSH --> X11).
Jos haluat muodostaa yhteyden graafisella tuella, voit käyttää esimerkiksi Xming X serveriä. Ottaaksesi käyttöön grafiikan etänäyttämisen, suorita:
Käytä sitten -X-valitsinta (X11-välitys) tai -Y-valitsinta (luotettu X11-välitys), kun
muodostat yhteyden:
Todennusagentti
SSH-todennusagentit auttavat hallitsemaan avaimiasi ja niiden tunnuslauseita. Ne voivat pitää SSH-avaimesi ja varmenteesi muistissa.
Eri todennusagentit toimivat eri työkalujen kanssa:
- Pageant: PuTTY, WinSCP, FileZilla, MobaXterm, Cyberduck
- Windowsin ssh-agent: PowerShell, Cyberduck, MobaXterm
- MobAgent: MobaXterm
SSH-avainten lisääminen todennusagentteihin
Järjestelmissä, jotka eivät käytä SSH-varmenteita (esim. LUMI), SSH-avaimet tarvitsee lisätä vain kerran, minkä jälkeen niitä voidaan käyttää pidemmän aikaa. Alla ovat ohjeet SSH-avainten lisäämiseen SSH-agenttiin käsin.
- Käynnistä Pageant. Se lisää kuvakkeen ilmaisinalueelle.
- Napsauta Pageantin kuvaketta hiiren oikealla painikkeella ja valitse valikosta
View Keysnähdäksesi yksityiset avaimet, joita Pageant pitää hallussaan. Kun käynnistät Pageantin, sillä ei ole avaimia, joten luetteloruutu on tyhjä. - Lisää avain Pageantiin painamalla
Add Key-painiketta. - Etsi yksityisen avaimesi tiedosto
Select Private Key File-valintaikkunassa ja painaOpen. Pageant pyytää sinua syöttämään avaimen tunnuslauseen. - Käynnistä nyt PuTTY tai muu Pageantia tukeva työkalu. PuTTY huomaa, että Pageant on käynnissä, hakee avaimen automaattisesti Pageantista ja käyttää sitä tunnistautumiseen. Voit nyt avata niin monta istuntoa kuin haluat ilman, että sinun tarvitsee kirjoittaa tunnuslausettasi uudelleen.
Windowsin ssh-agent -palvelu on yleensä pysäytetty tai poistettu käytöstä Windowsissa oletuksena,
ja sen käynnistäminen vaatii järjestelmänvalvojan oikeudet.
Suorita seuraavat komennot korotetussa PowerShell-kehotteessa:
# Configure ssh-agent to start automatically.
Get-Service ssh-agent | Set-Service -StartupType Automatic
# Start the service.
Start-Service ssh-agent
# The following command should return a status of Running.
Get-Service ssh-agent
# Load your key files into ssh-agent.
ssh-add $env:USERPROFILE\.ssh\id_ed25519
Kun lisäät avaimen asiakkaasi ssh-agent-palveluun,
ssh-agent-palvelu hakee automaattisesti paikallisen yksityisen avaimen (ja
varmenteen) ja välittää sen SSH-asiakasohjelmallesi.
MobaXtermissä on sisäinen MobAgent, mutta se tukee myös Pageantia ja
Windowsin ssh-agentia. Niitä kaikkia voidaan käyttää samanaikaisesti, jos haluat.
- Ota MobAgent käyttöön:
Settings --> Configuration --> SSH --> SSH agents. - Lisää avaintiedostosi napsauttamalla
+-painiketta ja valitsemalla yksityiset avaimet, jotka haluat ladata käynnistyksen yhteydessä. - Napsauta
OKja käynnistä MobaXterm uudelleen. Sinua pyydetään syöttämään avaimen tunnuslause.
Todennusagentit Roihun kanssa
Roihussa SSH-avainten lisäksi vaaditaan SSH-varmenne. Jos käytät SSH-agenttia, uusi SSH-varmenne täytyy lisätä päivittäin. CSC tarjoaa tähän kaksi vaihtoehtoa:
- Vaihtoehto 1, SSH-varmenteen manuaalinen lataus MyCSC:stä
- Vaihtoehto 2, varmenneaputyökalu
Vaihtoehtoa 1 voi käyttää sellaisenaan ilman lisäasennuksia. Vaihtoehto 2 tarjoaa helpomman ja sujuvamman tavan allekirjoittaa ja ladata SSH-varmenteet Roihuun yhdistämistä varten, mutta se edellyttää skriptin lataamista sekä Pythonin ja WinSCP:n asentamista. Tärkeää on myös, että se lisää SSH-avaimesi ja varmenteesi automaattisesti Windowsin ssh-agentiin ja/tai Pageantiin. Skripti ei päivitä MobAgentia, joten MobaXtermin käyttäjille suositellaan Pageantin käyttöä.
Vaihtoehto 1 vaatii joitakin lisävaiheita SSH-varmenteen lisäämiseksi SSH-agenttiin.
SSH-varmenteen lisäämiseksi MobAgentiin tai Pageantiin sinun täytyy ensin
"yhdistää" varmenne ja PuTTYn .ppk-yksityinen avain.
- Avaa PuTTYgen tai MobaKeyGen (MobaXtermin Tools-välilehti).
- Lataa yksityinen avaimesi (
File --> Load private key). - Lisää avaimeen voimassa oleva varmenne (
Key --> Add certificate to key). Voimassaoloajan voi tarkistaa valitsemallaCertificate info. - Tallenna yksityinen avain nimellä
<key>-cert.ppk, esimerkiksiid_ed25519-cert.ppk. - Uusi yksityinen avain, joka sisältää varmenteen, voidaan nyt lisätä
Pageantiin ja/tai MobAgentiin yllä olevien ohjeiden mukaisesti. Onnistuneesti
yhdistetty avain ja varmenne näkyvät Pageantissa/MobAgentissa muodossa
Ed25519 cert.
Windowsin ssh-agentin käyttäjien täytyy varmistaa, että manuaalisesti
ladattu SSH-varmenne tallennetaan samaan hakemistoon kuin SSH-yksityinen avain
ja nimetään muodossa <private-key-name>-cert.pub, jotta se voidaan lisätä
SSH-agenttiin ssh-add-komennolla. Jos tämä onnistuu, ssh-add tulostaa:
Jos varmenne on tallennettu ja/tai nimetty millään muulla tavalla, sitä ei voida lisätä todennusagenttiin, koska OpenSSH käyttää kovakoodattuja nimeämiskäytäntöjä.
Huomaa:
- Jos aiot yhdistää Roihuun hyppypalvelimen kautta (esim. siirtäessäsi dataa toiselta CSC-palvelimelta Roihuun), myös SSH-varmenne täytyy lisätä SSH-agenttiin, jotta se voidaan välittää oikein.
- Vaihtoehtoisesti voit yhdistää Roihuun ja noutaa dataa palvelimilta, jotka eivät vaadi SSH-varmennetta (esim. LUMI). Tässä tapauksessa riittää, että välität vain SSH-avaimesi.
- Lue lisää SSH-agentin välityksestä alta.
SSH-agentin välitys
Note
You should only forward your SSH agent to remote servers that you trust and only when you really need it. Forwarding your SSH agent by default to any server you connect to is considered insecure.
Agentin välitys on hyödyllinen mekanismi, jossa SSH-asiakasohjelma määritetään
sallimaan SSH-palvelimen käyttää paikallista ssh-agentiasi palvelimella ikään kuin se olisi
paikallinen siellä. Tämä tarkoittaa käytännössä sitä, että voit esimerkiksi yhdistää suoraan
CSC:n supertietokoneiden välillä käyttäen paikallisella koneellasi olevia SSH-avaimia ja varmenteita,
eli sinun ei tarvitse luoda uutta SSH-avainjoukkoa CSC:n supertietokoneille.
Agentin välitys on myös erittäin kätevä, jos sinun täytyy kopioida dataa suoraan CSC:n supertietokoneiden välillä tai esimerkiksi tehdä push yksityiseen Git-repositorioon CSC:n supertietokoneilta.
Kun käytät paikallista päätettä, ota agentin välitys käyttöön lisäämällä -A-lippu
ssh-komentoosi:
MobaXtermin graafisessa käyttöliittymässä agentin välitys otetaan käyttöön kytkemällä päälle Allow
agent forwarding -asetus, joka löytyy kohdasta Session --> SSH --> Advanced SSH
settings --> Expert SSH settings.
Ottaaksesi agentin välityksen käyttöön PuTTYssä varmista ensin, että Pageant on käynnissä.
Kytke sitten päälle Allow agent forwarding -asetus, joka löytyy kohdasta Connection
--> SSH --> Auth, ennen uuden istunnon luomista.
Kun yhteys on muodostettu, voit varmistaa, että SSH-agentin välitys toimii, suorittamalla:
Jos näet SSH-avaintesi ja varmenteidesi sormenjäljet lueteltuina,
agentin välitys toimii. Todennusagentissa olevilla toisiinsa liittyvillä SSH-avaimilla ja varmenteilla on
samat sormenjäljet, ja ne on merkitty tunnisteilla
<ALGORITHM> ja <ALGORITHM>-CERT. Esimerkiksi:
256 SHA256:ZXG7TvhDAWOv8VveFAlt/UYarsO9Nx5md4owX+FE5/M optional_comment (ED25519)
256 SHA256:ZXG7TvhDAWOv8VveFAlt/UYarsO9Nx5md4owX+FE5/M optional_comment (ED25519-CERT)
Jos käytät yhdistettyä SSH-avain- ja varmennetiedostoa (PuTTYgen- ja
MobaKeyGen-menetelmät), sinun pitäisi nähdä vain <ALGORITHM>-CERT-rivi.