OpenSSH (Nyissa meg a Biztonságos héjat) olyan alkalmazások összessége, amelyek lehetővé teszik a hálózaton keresztüli titkosított kommunikációt az protokoll SSH. A program ingyenes és nyílt alternatívájaként jött létre Secure Shell, amely saját szoftver. « Wikipedia.
Egyes felhasználók úgy gondolhatják, hogy a bevált gyakorlatokat csak a szervereken szabad alkalmazni, és ez nem így van. Sok GNU / Linux disztribúció alapértelmezés szerint tartalmazza az OpenSSH-t, és néhány dolgot szem előtt kell tartani.
Biztonság
Ez a 6 legfontosabb szempont, amelyet szem előtt kell tartani az SSH konfigurálásakor:
- Használjon erős jelszót.
- Módosítsa az SSH alapértelmezett portját.
- Mindig az SSH protokoll 2. verzióját használja.
- Tiltsa le a root hozzáférést.
- Korlátozza a felhasználói hozzáférést.
- Használja a kulcs hitelesítését.
- Egyéb opciók
Erős jelszó
A jó jelszó az, amely alfanumerikus vagy speciális karaktereket, szóközöket, kis- és nagybetűket stb. tartalmaz. Itt bent DesdeLinux Számos módszert mutattunk be a jó jelszavak generálására. Meglátogatható ezt a cikket y ez a másik.
Módosítsa az alapértelmezett portot
Az SSH alapértelmezett portja 22. A változtatáshoz csak a fájlt kell szerkesztenünk / Etc / ssh / sshd_config. Megkeressük azt a sort, amely ezt mondja:
#Port 22
visszavonjuk, és a 22-et másik számra cseréljük .. például:
Port 7022
A terminálon futtathatjuk azokat a portokat, amelyeket nem használunk a számítógépünkben / szerverünkön:
$ netstat -ntap
Most, hogy hozzáférjünk számítógépünkhöz vagy szerverünkhöz, ezt a -p opcióval kell megtenni a következőképpen:
$ ssh -p 7022 usuario@servidor
Használja a 2. protokollt
Ahhoz, hogy megbizonyosodhassunk arról, hogy az SSH protokoll 2. verzióját használjuk, szerkesztenünk kell a fájlt / Etc / ssh / sshd_config és keresse meg a sort, amely ezt mondja:
# 2. protokoll
Megszüntetjük és újraindítjuk az SSH szolgáltatást.
Ne engedélyezze a hozzáférést root felhasználóként
Annak megakadályozása érdekében, hogy a root felhasználó távolról hozzáférhessen az SSH-n keresztül, megkeressük a fájlt/ Etc / ssh / sshd_config a vonal:
#PermitRootLogin no
és nem vesszük észre. Szerintem érdemes tisztázni, hogy ennek megtétele előtt meg kell győződnünk arról, hogy felhasználónk rendelkezik-e a szükséges engedélyekkel az adminisztrációs feladatok elvégzéséhez.
Korlátozza a felhasználók hozzáférését
Nem árt, ha csak bizonyos megbízható felhasználók számára engedélyezünk SSH-n keresztüli hozzáférést, ezért visszatérünk a fájlhoz / Etc / ssh / sshd_config és hozzáadjuk a sort:
Az AllowUsers elav usemoslinux kzkggaara
Ahol nyilvánvalóan az elav, az usemoslinux és a kzkggaara felhasználók lesznek képesek hozzáférni.
Használja a kulcs hitelesítését
Bár ez a módszer a leginkább ajánlott, különös gonddal kell eljárnunk, mert a kiszolgálóhoz a jelszó megadása nélkül fogunk hozzáférni. Ez azt jelenti, hogy ha egy felhasználónak sikerül belépnie a munkamenetünkbe, vagy ellopják a számítógépünket, akkor bajban lehetünk. Lássuk azonban, hogyan kell csinálni.
Az első dolog egy pár (nyilvános és privát) kulcs létrehozása:
ssh-keygen -t rsa -b 4096
Ezután átadjuk a kulcsunkat a számítógépnek / szervernek:
ssh-copy-id -i ~/.ssh/id_rsa.pub elav@200.8.200.7
Végül meg kell jegyeznünk a dossziét / Etc / ssh / sshd_config a vonal:
AuthorizedKeysFile .ssh/authorized_keys
Egyéb opciók
30 másodpercre csökkenthetjük azt a várakozási időt, amelyben a felhasználó sikeresen bejelentkezhet a rendszerbe
LoginGraceTime 30
Annak érdekében, hogy elkerüljük a ssh támadásokat a TCP Spoofing révén, a titkosított életet hagyva az ssh oldalon, legfeljebb 3 percig aktív maradjon, aktiválhatjuk ezt a 3 lehetőséget.
TCPKeepAlive nincs ClientAliveInterval 60 ClientAliveCountMax 3
Tiltsa le a rhosts vagy a shosts fájlok használatát, amelyeket biztonsági okokból kérünk, hogy ne használjanak.
IgnoreRhosts igen IgnoreUserKnownHosts igen RhostsAuthentication nem RhostsRSAAuthentication nem
A bejelentkezés során ellenőrizze a felhasználó tényleges engedélyeit.
StrictModes yes
Engedélyezze a kiváltságok szétválasztását.
UsePrivilegeSeparation yes
következtetéseket:
Ezekkel a lépésekkel extra biztonságot adhatunk számítógépeinknek és szervereinknek, de soha nem szabad megfeledkeznünk arról, hogy van egy fontos tényező: mi van a szék és a billentyűzet között. Ezért ajánlom az olvasást ezt a cikket.
forrás: HowToForge
Kiváló post @elav, és néhány érdekes dolgot hozzáfűzök:
BejelentkezésGraceTime 30
Ez lehetővé teszi számunkra, hogy 30 másodpercre csökkentse azt a várakozási időt, amelyben a felhasználó sikeresen bejelentkezhet a rendszerbe
TCPKeepAlive sz
ClientAlive intervallum 60
ClientAliveCountMax 3
Ez a három lehetőség nagyon hasznos az ssh támadások elkerülésére a TCP Spoofing segítségével, így a titkosított életben marad az ssh oldalon, legfeljebb 3 percig aktív.
IgnoreRhosts igen
IgnoreUserKnownHosts igen
RhostsHitelesítési sz
RhostsRSAHitelesítési sz
Letiltja a rhosts vagy a shosts fájlok használatát, amelyeket biztonsági okokból arra kérünk, hogy ne használják.
StrictModes igen
Ez az opció a felhasználó tényleges engedélyeinek ellenőrzésére szolgál a bejelentkezés során.
UsePrivilegeSeparation igen
Engedélyezze a kiváltságok szétválasztását.
Nos, egy idő után szerkesztem a bejegyzést, és hozzáadom a bejegyzéshez 😀
Felesleges megjegyzés, hogy ne változtassuk meg a sort. A megjegyzéssel ellátott sorok az egyes opciók alapértelmezett értékét mutatják (olvassa el a fájl elején található magyarázatot). A root hozzáférés alapértelmezés szerint le van tiltva, stb. Ezért a megjegyzés nélküli semmilyen hatása nincs.
Igen, de például honnan tudjuk, hogy csak a protokoll 2. verzióját használjuk? Mert jól használhatnánk az 1-et és a 2-et egyszerre. Ahogy az utolsó sor mondja, ennek az opciónak a meg nem jegyzése például felülírja az alapértelmezett beállítást. Ha alapértelmezés szerint a 2. verziót használjuk, akkor jó, ha nem, akkor IGEN vagy IGEN 😀
Köszönöm a megjegyzést
Nagyon jó cikk, több dolgot tudtam, de egy dolog, ami számomra soha nem világos, a kulcsok használata, valójában mik azok és milyen előnyei vannak, ha kulcsokat használok, akkor használhatok jelszavakat is ??? Ha igen, akkor miért növeli a biztonságot, és ha nem, hogyan érhetem el egy másik számítógépről?
Üdvözlet, telepítettem a debian 8.1-et, és a Windows PC-ről nem tudok a WINSCP-vel csatlakozni a debianhoz, az 1. protokollt kell használnom? bármilyen segítség .. köszönöm
Viszlát
Lehet, hogy érdekli ez az Opensh-ről szóló videó https://m.youtube.com/watch?v=uyMb8uq6L54
Néhány dolgot itt szeretnék kipróbálni, többeket már kipróbáltam az Arch Wikinek köszönhetően, másokat lustaság vagy ismerethiány miatt. Mentem, amikor elindítom az RPi-t