OpenSSH Server

Bevezetés

az OpenSSH hatékony eszközgyűjtemény a hálózati számítógépek közötti adatátvitelhez. Az OpenSSH server alkalmazás segítségével megismerheti néhány lehetséges konfigurációs beállítást, valamint azt is, hogyan változtathatja meg őket az Ubuntu rendszeren.

az OpenSSH a Secure Shell (SSH) protokollcsalád szabadon elérhető verziója a számítógépek közötti fájlok távoli vezérlésére vagy átvitelére. Az ilyen funkciók-például a telnet vagy az rcp-végrehajtásához használt hagyományos eszközök nem biztonságosak, ezért használat közben a felhasználó jelszavát cleartext-ben továbbítja. Az OpenSSH szerver démon és kliens eszközöket biztosít a biztonságos, titkosított távirányító és fájlátviteli műveletek megkönnyítésére, hatékonyan helyettesítve a régi eszközöket.

az OpenSSH server komponens, az sshd folyamatosan figyeli az ügyfélkapcsolatokat bármelyik kliens eszközről. Amikor csatlakozási kérés történik, az sshd a megfelelő kapcsolatot állítja be a kliens eszköz csatlakoztatásának típusától függően. Ha például a távoli számítógép csatlakozik az ssh kliens alkalmazáshoz, az OpenSSH szerver a hitelesítés után távvezérlési munkamenetet állít be. Ha egy távoli felhasználó csatlakozik egy OpenSSH kiszolgálóhoz az scp segítségével, az OpenSSH server démon a hitelesítés után biztonságos fájlmásolatot kezdeményez a szerver és az ügyfél között. Az OpenSSH számos hitelesítési módszert használhat, beleértve a sima jelszót, a nyilvános kulcsot és a Kerberos jegyeket.

telepítés

az OpenSSH kliens és szerver alkalmazások telepítése egyszerű. Telepítsük az OpenSSH kliens alkalmazások az Ubuntu rendszer, használja ezt a parancsot egy terminál parancssor:

sudo apt install openssh-client

telepíteni az OpenSSH server alkalmazás valamint a kapcsolódó támogatja fájlok, használja ezt a parancsot egy terminál parancssor:

sudo apt install openssh-server

Beállítások

lehet beállítani az alapértelmezett viselkedés az OpenSSH szerver alkalmazás, sshd, által a fájl szerkesztése /etc/ssh/sshd_config. További információk a konfigurációs irányelvek használják ezt a fájlt, lehet, megtekintheti a megfelelő man oldalt a következő paranccsal kiadott egy terminál parancssor:

man sshd_config

sok irányelvek az sshd konfigurációs fájl ellenőrzése olyan dolgok, mint a kommunikációs beállítások, majd a hitelesítési mód. A következő példák a konfigurációs irányelvekre, amelyek megváltoztathatók a /etc/ssh/sshd_config fájl szerkesztésével.

Tip

a konfigurációs fájl szerkesztése előtt készítsen egy másolatot az eredeti fájlról, és védje meg az írástól, hogy az eredeti beállításokat hivatkozásként használja, és szükség szerint újrafelhasználhassa.

másolja át a /etc/ssh/sshd_config fájlt, és védje meg a következő parancsokkal történő írástól, amelyet egy terminal prompt-ban adtak ki:

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.originalsudo chmod a-w /etc/ssh/sshd_config.original

Továbbá mivel egy ssh-kiszolgáló elvesztése azt jelentheti, hogy elveszíti az utat a szerver eléréséhez, ellenőrizze a konfigurációt annak megváltoztatása után, mielőtt a szerver újraindítása:

sudo sshd -t -f /etc/ssh/sshd_config

A következő példák a konfigurációs irányelvek lehet változtatni:

  • annak beállításához, Hogy a OpenSSH, hogy figyelj a TCP port 2222, ahelyett, hogy az alapértelmezett TCP port 22, változnak a Kikötői irányelv, mint például:

Port 2222

  • a OpenSSH server jelenítse meg a tartalmát a /etc/issue.net fájl, mint egy előzetes bejelentkezés banner, egyszerűen hozzáadása vagy módosítása, ezt a sort a /etc/ssh/sshd_config fájl:

Banner /etc/issue.net

a /etc/ssh/sshd_config fájl módosítása után mentse el a fájlt, majd indítsa újra az sshd server alkalmazást, hogy a változtatásokat a következő parancs segítségével végezze el egy terminálsoron:

sudo systemctl restart sshd.service

warning

sok más konfigurációs irányelvek sshd állnak változtatni a szerver alkalmazás viselkedését, hogy megfeleljen az Ön igényeinek. Ha azonban a szerverhez való hozzáférés egyetlen módja az ssh, és hibát követ el az sshd konfigurálásában a /etc/ssh/sshd_config fájlon keresztül, előfordulhat, hogy az újraindítás után ki van zárva a szerverről. Továbbá, ha helytelen konfigurációs irányelv érkezik, az sshd szerver megtagadhatja az indítást, ezért legyen különösen óvatos, ha ezt a fájlt távoli kiszolgálón szerkeszti.

SSH Keys

SSH engedélyezze a hitelesítést két gazda között jelszó nélkül. Az SSH kulcs hitelesítése privát kulcsot és nyilvános kulcsot használ.

a billentyűk generálásához egy terminálsorból írja be:

ssh-keygen -t rsa

Ez generálja a kulcsokat az RSA algoritmus segítségével. Az írás idején a generált kulcsok 3072 bittel rendelkeznek. A bitek számát a -b opcióval módosíthatja. Például 4096 bites kulcsok létrehozásához a következőket teheti:

ssh-keygen -t rsa -b 4096

a folyamat során jelszót kér. Egyszerűen nyomja meg az Enter billentyűt, amikor kéri a kulcs létrehozását.

alapértelmezés szerint a nyilvános kulcs a ~/.ssh/id_rsa.pub fájlba kerül, míg a ~/.ssh/id_rsa a privát kulcs. Most másolja át a id_rsa.pub fájlt a távoli gazdagépre, majd csatolja azt a ~/.ssh/authorized_keys – hoz, beírva:

ssh-copy-id username@remotehost

végül ellenőrizze duplán a authorized_keys fájl engedélyeit, csak a Hitelesített felhasználó kellett volna írni-olvasni jogosultságokat. Ha az engedélyek nem helyesek, változtassa meg őket:

chmod 600 .ssh/authorized_keys

most már képesnek kell lennie arra, hogy SSH-t küldjön a gazdagépnek anélkül, hogy jelszót kérne.

kulcsok importálása a nyilvános kulcstartókból

manapság sok felhasználó már regisztrált ssh kulcsokat olyan szolgáltatásokkal, mint a launchpad vagy a github. Azok könnyen importálhatók a:

ssh-import-id <username-on-remote-service>

Az előtag lp: hallgatólagos, illetve azt jelenti, elragadó a launchpad, az alternatív gh: lesz, hogy az eszköz hozza a github helyett.

kétfaktoros hitelesítés U2F/FIDO

OpenSSH 8.2 Hozzáadott támogatása U2F/FIDO hardver hitelesítési eszközök. Ezeket az eszközöket arra használják, hogy extra biztonsági réteget biztosítsanak a meglévő kulcsalapú hitelesítés tetején, mivel a hardver tokennek jelen kell lennie a hitelesítés befejezéséhez.

nagyon egyszerűen használható és beállítható. Az egyetlen extra lépés egy új billentyűzet létrehozása, amelyet a hardver eszközzel lehet használni. Ehhez két kulcstípus használható: ecdsa-skés ed25519-sk. Az előbbi szélesebb hardver támogatással rendelkezik, míg az utóbbinak szüksége lehet egy újabb eszközre.

miután a keypair keletkezik, akkor lehet használni, mint akkor általában bármilyen más típusú kulcs openssh. Az egyetlen követelmény az, hogy a privát kulcs használatához az U2F eszköznek jelen kell lennie a gazdagépen.

például dugja be az U2F eszközt, és hozzon létre egy billentyűzetet a használatához:

$ ssh-keygen -t ecdsa-skGenerating public/private ecdsa-sk key pair.You may need to touch your authenticator to authorize key generation. <-- touch deviceEnter file in which to save the key (/home/ubuntu/.ssh/id_ecdsa_sk): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/ubuntu/.ssh/id_ecdsa_skYour public key has been saved in /home/ubuntu/.ssh/id_ecdsa_sk.pubThe key fingerprint is:SHA256:V9PQ1MqaU8FODXdHqDiH9Mxb8XK3o5aVYDQLVl9IFRo ubuntu@focal

most csak helyezze át a nyilvános részt a kiszolgálóra ~/.ssh/authorized_keys és készen áll a továbblépésre:

$ ssh -i .ssh/id_ecdsa_sk [email protected] user presence for key ECDSA-SK SHA256:V9PQ1MqaU8FODXdHqDiH9Mxb8XK3o5aVYDQLVl9IFRo <-- touch deviceWelcome to Ubuntu Focal Fossa (GNU/Linux 5.4.0-21-generic x86_64)(...)[email protected]:~$

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük