Voit itse lisätä ja muuttaa sisältöä muokkaa-painikkeiden avulla

Ennen tallennusta suositellaan ottamaan kopio muokkausruudusta (ctrl-a -> ctrl-c)

 Olet itse vastuussa tämän teoksen käytöstä aiheutuvista vahingoista Lue lisää.

Ero sivun ”SSH” versioiden välillä

Wikikko - kansan taitopankkista
Siirry navigaatioon Siirry hakuun
imported>WikikkoSysop
 
 
(8 välissä olevaa versiota 2 käyttäjän tekeminä ei näytetä)
Rivi 1: Rivi 1:
== SSH-avaimien poistaminen ==
* MacOS:
** rm ~/käyttäjänimi/.ssh id_rsa
** rm ~/käyttäjänimi/.ssh id_rsa
** Poista tiedostosta known_hosts tarpeettomat
*** vi ~/käyttäjänimi/.ssh/known_hosts
== Yhteys palvelimeen ==
* Istunto aloitetaan kirjautumalla järjestelmään komentotulkin kautta. Esimerkiksi jonkin graafisen sovellusohjelman kautta tai pääteohjelmalla yksinkertaisimmillaan komennolla:
ssh käyttäjätunnus@domain.fi
** Odota hetki kunnes kysyy salasanaa.
* logout ---selitys: kirjautuminen ulos. Myös lo tai exit
** There are suspended jobs. -ilmoitus kertoo että käynnissä on jotain. Anna komento jobs, josta saat prosessinumeron ja sitten komento: % kill -HUP %prosessinumero lopettaa työn.
=== Lataus palvelimelta ===
* scp käyttäjätunnus@palvelin.fi:/polku/tiedostonimi.txt /kohdepolku
* Hakemisto alahakemistoineen: scp -r username@remote:/path/to/folder /dest/local/path
** -v: Näyttää kopioinnin etenemisen.
==SSH kytkeytyminen päätteellä==
==SSH kytkeytyminen päätteellä==
* Asenna tarvittaessa ensin avaimet, kts. SSH asennus cPanel
* Asenna tarvittaessa ensin avaimet, kts. SSH asennus cPanel
Rivi 19: Rivi 38:
=== perl: warning: Setting locale failed. ===
=== perl: warning: Setting locale failed. ===
Palvelimella jokaisen komennon yhteydessä tulee rimpsu "virheitä". Aiheesta löytyy tietoa esimerkiksi sivulta https://stackoverflow.com/questions/2499794/how-to-fix-a-locale-setting-warning-from-perl  
Palvelimella jokaisen komennon yhteydessä tulee rimpsu "virheitä". Aiheesta löytyy tietoa esimerkiksi sivulta https://stackoverflow.com/questions/2499794/how-to-fix-a-locale-setting-warning-from-perl  
* Vaihtoehto 1: macOS. Terminal > Preferences... > Profiles > Advanced > poista valinta kohdasta 'Set locale environment variables on startup'. Tämä toimii ainakin sillä profiililla, jolla kirjaudut palvelimelle ja on asetusvalikon vasemmassa palkissa merkitty 'Startup'.  
* Vaihtoehto 1: macOS. Terminal > Settings... > Profiles > Advanced > poista valinta kohdasta 'Set locale environment variables on startup'. Tämä toimii ainakin sillä profiililla, jolla kirjaudut palvelimelle ja on asetusvalikon vasemmassa palkissa merkitty 'Startup'.  
* Vaihtoehto 2: Kirjaudu seuraavalla komennolla palvelimelle. Eli tällöin oman tietokoneen .ssh-hakemiston config-tiedosto välitetään palvelimelle?
* Vaihtoehto 2: Kirjaudu seuraavalla komennolla palvelimelle. Eli tällöin oman tietokoneen .ssh-hakemiston config-tiedosto välitetään palvelimelle?
  ssh -F .ssh/config käyttäjätunnus@palvelin.pääte
  ssh -F .ssh/config käyttäjätunnus@palvelin.pääte
=== perl: warning: Setting locale failed ===
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LC_CTYPE = "UTF-8",
LANG = (unset)
    are supported and installed on your system.
Anna komennot:
export LC_CTYPE=en_US.UTF-8
export LC_ALL=en_US.UTF-8
== SSH-kytkeytyminen Oracle Cloud Free Tier ==
* OCI on herkkä sen osalta, että esimerkiksi apt upgrage saattaa estää SSH-kytkeytymisen OCIn ulkopuolelta. Samoin esimerkiksi komento iptables-restore < /etc/iptables/rules.v4
'''Omalta työpäätteeltä'''
Instanssin lisäämisen yhteydessä suositeltavaa tai jälkikäteen Compute > Instances > Instance details > Console connection ja vasemmalta palkista Console connection > Create local connection >
* macOS
# Generate a key pair for me > lataa Save private key ja Save public key (jos jälkikäteen, paina vielä Create console connection
# Kopioi tiedostot käyttäjän .ssh-hakemistoon  ~/käyttäjänimi/.ssh nimillä id_rsa ja id_rsa.pub
## cp ~/Downloads/ssh-key-vvvv-kk-pp.key id_rsa
## cp ~/Downloads/ssh-key-vvvv-kk-pp.key.pub id_rsa.pub
## chmod 400 ~/.ssh/id_rsa
## chmod 644 ~/.ssh/id_rsa.pub
# Tarvittaessa
## chmod 700 ~/.ssh
## vi /etc/ssh/sshd_config
### ota risuaita pois kohdasta PubkeyAuthentication yes
# Kirjautuminen ssh -i id_rsa ubuntu@iposoite
## Kirjautuminen ssh -i ~/.ssh/id_rsa ubuntu@iposoite
## ubuntu kun on asennettu Ubuntu Linux
## rocky kun on asennettu Rocky Linux
'''Cloud Shell:n sisällä'''
# Kyseisen instanssin verkkosivu > vasemmalta Console connection > Launch Cloud Shell connection
# Odotetaan niin kauan, että ilmestyy ''vnic-nimi login:'' > syötetään ubuntu -käyttäjäntunnus
# Password: syötetään aiemmin ubuntu -käyttäjälle annettu salasana
## Tämä on annettu palvelimella aiemmin komennolla sudo passwd ubuntu
* '''SSH-avaimella'''
** Käytetään samaa avainta, mitä edellä, tai ladataan yllä olevan mukaisesti OCIsta.
# Avaa OCI ja ikkunan yläreunasta kuvaruutukuvake > Cloud Shell.
# Alas avautuvassa konsoliruudussa > ratas > Upload
# Lataa yksityinen avain, päättyy .key
# Anna komento chmod 400 avainnimi.key  tai 600 jos 400 ei riitä
# Anna komento ssh -i avainnimi.key käyttäjätunnus@iposoite


== SSH kytkeytyminen iPhone iOS Buffer -applikaatio ==
== SSH kytkeytyminen iPhone iOS Buffer -applikaatio ==
Rivi 51: Rivi 117:
== SSH asennus ==
== SSH asennus ==
=== cPanel ===
=== cPanel ===
HUOM! Jos et pysty kirjautumaan pääte-ohjelmalla vaikka aiemmin olet pystynytkin, kannattaa tehdyä seuraava asennus kokonaan uudestaan.
HUOM! Jos et pysty kirjautumaan pääte-ohjelmalla vaikka aiemmin olet pystynytkin, kannattaa tehdä seuraava asennus kokonaan uudestaan.





Nykyinen versio 13. huhtikuuta 2025 kello 14.17

SSH-avaimien poistaminen[muokkaa]

  • MacOS:
    • rm ~/käyttäjänimi/.ssh id_rsa
    • rm ~/käyttäjänimi/.ssh id_rsa
    • Poista tiedostosta known_hosts tarpeettomat
      • vi ~/käyttäjänimi/.ssh/known_hosts

Yhteys palvelimeen[muokkaa]

  • Istunto aloitetaan kirjautumalla järjestelmään komentotulkin kautta. Esimerkiksi jonkin graafisen sovellusohjelman kautta tai pääteohjelmalla yksinkertaisimmillaan komennolla:
ssh käyttäjätunnus@domain.fi
    • Odota hetki kunnes kysyy salasanaa.
  • logout ---selitys: kirjautuminen ulos. Myös lo tai exit
    • There are suspended jobs. -ilmoitus kertoo että käynnissä on jotain. Anna komento jobs, josta saat prosessinumeron ja sitten komento: % kill -HUP %prosessinumero lopettaa työn.

Lataus palvelimelta[muokkaa]

  • scp käyttäjätunnus@palvelin.fi:/polku/tiedostonimi.txt /kohdepolku
  • Hakemisto alahakemistoineen: scp -r username@remote:/path/to/folder /dest/local/path
    • -v: Näyttää kopioinnin etenemisen.

SSH kytkeytyminen päätteellä[muokkaa]

  • Asenna tarvittaessa ensin avaimet, kts. SSH asennus cPanel
  • ssh käyttäjätunnus@omadomainosoite.fi -pPORTTINUMERO
  • ssh käyttäjätunnus@omadomainosoite.fi
    • Porttinumerot: Siteground 18765, Louhi 22.
  • Kirjautuminen ei vaadi salasanan antamista jos on asennettu avaimet vaan pääset suoraan palvelimen hakemistoon. Jos tulee ponnahdusikkuna, jossa kysytään salasanaa, kannattaa harkita koko avaimen uudelleen asennusta.
    • Ensimmäisellä kirjautumiskerralla tulee ilmoitus:
The authenticity of host '[IPNUMEROTÄSSÄ]:PORTTINRO ([IPNUMEROTÄSSÄ]:PORTTINRO)' can't be established.
RSA key fingerprint is XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX.
Are you sure you want to continue connecting (yes/no)? yes
  • Jos avaimet on aiemmin luotu eli kirjautumiseen käytettävällä tietokoneella on vanha avain olemassa, mutta nyt kirjaudutaan palvelimelle, jossa avainta ei aseteta cPanelin kautta:
The authenticity of host 'omadomainosoite.fi (IPNUMEROTÄSSÄ)' can't be established.
ECDSA key fingerprint is SHA256:XXX.
Are you sure you want to continue connecting (yes/no/[fingerprint])? --> vastaa yes
Warning: Permanently added 'omadomainosoite.fi,IPNUMEROTÄSSÄ' (ECDSA) to the list of known hosts.
Enter passphrase for key '/Users/jokukansio/.ssh/id_dsa': --> syötä avaimen salasana
käyttäjätunnus@omadomainosoite.fi passqord: --> syötä palvelun johon kirjaudutaan käyttäjätunnuksen salasana

perl: warning: Setting locale failed.[muokkaa]

Palvelimella jokaisen komennon yhteydessä tulee rimpsu "virheitä". Aiheesta löytyy tietoa esimerkiksi sivulta https://stackoverflow.com/questions/2499794/how-to-fix-a-locale-setting-warning-from-perl

  • Vaihtoehto 1: macOS. Terminal > Settings... > Profiles > Advanced > poista valinta kohdasta 'Set locale environment variables on startup'. Tämä toimii ainakin sillä profiililla, jolla kirjaudut palvelimelle ja on asetusvalikon vasemmassa palkissa merkitty 'Startup'.
  • Vaihtoehto 2: Kirjaudu seuraavalla komennolla palvelimelle. Eli tällöin oman tietokoneen .ssh-hakemiston config-tiedosto välitetään palvelimelle?
ssh -F .ssh/config käyttäjätunnus@palvelin.pääte

perl: warning: Setting locale failed[muokkaa]

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_CTYPE = "UTF-8",
	LANG = (unset)
    are supported and installed on your system.

Anna komennot:

export LC_CTYPE=en_US.UTF-8
export LC_ALL=en_US.UTF-8

SSH-kytkeytyminen Oracle Cloud Free Tier[muokkaa]

  • OCI on herkkä sen osalta, että esimerkiksi apt upgrage saattaa estää SSH-kytkeytymisen OCIn ulkopuolelta. Samoin esimerkiksi komento iptables-restore < /etc/iptables/rules.v4

Omalta työpäätteeltä Instanssin lisäämisen yhteydessä suositeltavaa tai jälkikäteen Compute > Instances > Instance details > Console connection ja vasemmalta palkista Console connection > Create local connection >

  • macOS
  1. Generate a key pair for me > lataa Save private key ja Save public key (jos jälkikäteen, paina vielä Create console connection
  2. Kopioi tiedostot käyttäjän .ssh-hakemistoon ~/käyttäjänimi/.ssh nimillä id_rsa ja id_rsa.pub
    1. cp ~/Downloads/ssh-key-vvvv-kk-pp.key id_rsa
    2. cp ~/Downloads/ssh-key-vvvv-kk-pp.key.pub id_rsa.pub
    3. chmod 400 ~/.ssh/id_rsa
    4. chmod 644 ~/.ssh/id_rsa.pub
  3. Tarvittaessa
    1. chmod 700 ~/.ssh
    2. vi /etc/ssh/sshd_config
      1. ota risuaita pois kohdasta PubkeyAuthentication yes
  4. Kirjautuminen ssh -i id_rsa ubuntu@iposoite
    1. Kirjautuminen ssh -i ~/.ssh/id_rsa ubuntu@iposoite
    2. ubuntu kun on asennettu Ubuntu Linux
    3. rocky kun on asennettu Rocky Linux

Cloud Shell:n sisällä

  1. Kyseisen instanssin verkkosivu > vasemmalta Console connection > Launch Cloud Shell connection
  2. Odotetaan niin kauan, että ilmestyy vnic-nimi login: > syötetään ubuntu -käyttäjäntunnus
  3. Password: syötetään aiemmin ubuntu -käyttäjälle annettu salasana
    1. Tämä on annettu palvelimella aiemmin komennolla sudo passwd ubuntu


  • SSH-avaimella
    • Käytetään samaa avainta, mitä edellä, tai ladataan yllä olevan mukaisesti OCIsta.
  1. Avaa OCI ja ikkunan yläreunasta kuvaruutukuvake > Cloud Shell.
  2. Alas avautuvassa konsoliruudussa > ratas > Upload
  3. Lataa yksityinen avain, päättyy .key
  4. Anna komento chmod 400 avainnimi.key tai 600 jos 400 ei riitä
  5. Anna komento ssh -i avainnimi.key käyttäjätunnus@iposoite

SSH kytkeytyminen iPhone iOS Buffer -applikaatio[muokkaa]

  1. Muodosta alla avaimet allakuvatun kohdan 2 avulla.
  2. Kopioi yksityinen ja julkinen avain esim. Notes-muistioon tai muutoin siirrä avaimet tietokoneelta kännykkään
  3. Muodosta Local Files -hakemistoon uusi hakemisto nimeltä jokuhakemisto
  4. Lisää sinne kaksi tiedostoa, id_rsa ja id_rsa.pub joihin liitä yksityinen ja julkinen avain (pub)
  5. Muodosta + -kohdasta SSH-yhteys
    1. Name: jokuhakemisto eli se minkä nimesit Local Files -kohtaan
    2. Host: palvelimen domain, esim. jokupalvelin.fi
    3. Port: 18765 (tämä esim. Siteground-palvelimella)
    4. Username: käyttäjätunnus
    5. Password: salasana, jonka annoit avaimia muodostaessa
    6. Initial Path: ~ tai sitten esim. ~/public_html/alihakemisto joka avaa valmiiksi halutun hakemiston
    7. Keys path: tyhjä, jos salausavaimet löytyy edellä mainitusti jokuhakemisto -hakemistosta Local Files kansiosta, jonka nimi on sama kuin Name-kohdassa.

SSH kytkeytyminen Cyberduck[muokkaa]

SSH asennus[muokkaa]

cPanel[muokkaa]

HUOM! Jos et pysty kirjautumaan pääte-ohjelmalla vaikka aiemmin olet pystynytkin, kannattaa tehdä seuraava asennus kokonaan uudestaan.


Kaksi vaihtoehtoa on esitetty tässä, joista suositeltava on ehkä 2-vaihtoehto: 1) luo avaimet palvelimella ja asenna yksityinen avain omaan tietokoneeseen tai 2) luo avaimet Pääte-ohjelmalla ja siirrä julkinen avain palvelimelle.

  • Vaihtoehto 1a (ohjeessa käytetään Mac OSX -järjestelmää ja Siteground-palvelinta)

Asennusohje päivitetty 28.3.2018

  1. cPanel > Advanced > SSH/Shell Access > Poista mahdollinen vanha avain (Remove Key) > Generate new SSH key pair
    1. Anna etunimi, sukunimi, sähköpostiosoite ja keksi salasana. Salasana tulee kirjoittaa näppäimistöllä, ei cmd-v -toiminnolla.
    2. Ota salasana talteen!
    3. IP osoite ei ole välttämätön
  2. Kopioi (cmd-a > cmd-c) Private Key leikepydälle.
  3. Siirry Pääte-ohjelmalla käyttäjähakemistosi .ssh -hakemistoon esm. /käyttäjänimi/.ssh
    1. cd .ssh
    2. Jos hakemistoa ei ole olemassa, luo se ja aseta sopivat oikeudet komennolla: mkdir .ssh; chmod 700 ~/.ssh
  4. Tee tiedosto nimellä id_dsa pääte-ohjelmalla komennolla: vi id_dsa > paina a-kirjainta > liitä cmd-v > paina esc : wq
  5. Anna komento: chmod 600 id_dsa
  6. Anna komento: ssh-add -K ~/.ssh/id_dsa ja syötä cPanelissa antamasi salasana
  7. SSH Key on nyt avainnipussa.
  8. Testaa komennolla ssh käyttäjätunnus@osoite.fi -p18765 ja vastaa kysymykseen yes
    1. käyttäjätunnus on palvelimen käyttäjätunnuksesi
  • Vaihtoehto 1b (ohjeessa käytetään Mac OSX -järjestelmää esimerkkinä)

Asennusohje x.x.201x

  1. SSH Access > Manage SSH Keys > Generate a New Key
    1. Key Name: id_rsa
    2. Key Password: keksi salasana ja ota se talteen!
    3. Key Type RSA, Key Size 2048
    4. > Generate Key
  2. Public Keys > Manage > Authorize
  3. Private Keys > View
  4. Kopioi (cmd-a > cmd-c) Private Key leikepydälle.
  5. Siirry .ssh hakemistoon Pääte-ohjelmalla käyttäjähakemistosi .ssh -hakemistoon esm. /käyttäjänimi/.ssh
    1. cd .ssh
  6. Tee tekstitiedosto nimellä id_rsa Pääte-ohjelmalla komennolla: vi id_rsa ja paina a-kirjainta, liitä cmd-v, paina esc : wq ja enter
  7. Anna komento: chmod 600 id_dsa
  8. Anna komento: ssh-add -K ~/.ssh/id_dsa ja syötä cPanelissa antamasi Key Password
  9. SSH Key on nyt avainnipussa.
  10. Testaa komennolla ssh käyttäjätunnus@osoite.fi
    1. käyttäjätunnus on palvelimen käyttäjätunnuksesi
  • Vaihtoehto 2 (Mac OS)

Tätä käytetään esim. kytkettäessä iOS-aplikaatio Buffer, johon tarvitaan sekä yksityinen että julkinen avain. Tämä toimii myös esim. tietokoneen Cyberduck-sovelluksen kanssa.

  1. Tee seuraavat Pääte-ohjelmassa tietokoneella, joka kytketään
  2. cd ~/.ssh
  3. ssh-keygen -t rsa
    1. vastaa enterillä seuraavaan: Enter file in which to save the key (/Users/omakäyttäjätunnustietokoneella/.ssh/id_rsa):
    2. anna vahva salasana
  4. ssh-add /Users/omakäyttäjätunnustietokoneella/.ssh/id_rsa
    1. anna edellä syötetty salasana
  5. Kopioi julkinen avain leikepöydälle: pbcopy < ~/.ssh/id_rsa.pub
  6. cPanel > Advanced > SSH/Shell Access > Upload SSH key > Public Key (DSA or RSA bigger than 2048 bits only): Lisää tähän leikepöydällä oleva julkinen avain cmd-v > Upload

Asennus useammalle palvelimelle[muokkaa]

  • Lisää .ssh -hakemistoon tiedosto nimeltä config ja siihen seuraava sisältö domain-osoitteidesi ja haluamiesi tiedostonimien mukaan. Esimerkiksi
Host domainisi1.fi
IdentityFile ~/.ssh/avain_domain1

Host domainisi2.fi
IdentityFile ~/.ssh/avain_domain2
  • Tee normaalisti avaimet, mutta nimeä tiedostot yksityisavaimelle antamiesi nimien mukaan.

Operation timed out[muokkaa]

  • Kokeile ssh -vvv käyttäjätunnus@osoite.fi -p22
  • Jos virhe ilmoitus vain jatkuu ja taustalla on useampia epäonnistuneita kirjautumisyrityksiä, kokeile myöhemmin uudestaan, jopa vuorokauden kuluttua.

Yhteyden katkeamisen estäminen[muokkaa]

Palvelin on saatettu asettaa katkaisemaan SSH-yhteys määräajan kuluttua, jos käyttäjä ei kommunikoi palvelimen kanssa. Tämä saattaa olla rasittavaa, jos kirjautuminen palvelimelle on esimerkiksi kaksivaiheinen ja salasanat monimutkaisia.

  • Pääteohjelmassa
  1. cd .ssh
  2. Tarkista ls -komennolla onko tiedostoa config. Jos löytyy muokkaa sitä, muutoin luo se:
    1. echo > config
  3. Muokkaa config-tiedostoa esimerkiksi vi-editorilla ja lisää seuraava:
Host *
    ServerAliveInterval 240
  1. Sulje pääteohjelma ja käynnistä se uudestaan.