
Nemrég rendelkeztem egy Ubuntu virtuális magánszerverrel (VPS) a Vultr-on. Magam is részleges vagyok a CentOS-nál, de az a feladat, amin dolgoztam, ajánlotta az Ubuntut.
A kulcsalapú hitelesítés beállításához a laptopomról a szerverre,
- A következő paranccsal hoztam létre egy új SSH kulcspárot („ubuntu” néven) a Mac gépemen:
ssh-keygen -t rsa -b 4096
- Ezután a
ssh-copy-id
segédprogrammal átmásoltam a nyilvános kulcsomatauthorized_keys
a Vultr VPS-en lévő fájlba:ssh-copy-id -i .ssh/ubuntu [email protected]
Ahogy számítottam rá, a segédprogram a nyilvános kulcs átadásának befejezéséhez kérte a VPS jelszavamat. Amikor minden elkészült, megpróbáltam bejelentkezni a VPS-re.
Jelszóigény nélkül kellett volna átengednie:
ssh -i .ssh/ubuntu [email protected]
De folyamatosan kaptam jelszó megadását. ?
- Ellenőriztem
authorized_keys
a fájlomat a VPS-en, hogy megbizonyosodjak arról, hogy a nyilvános kulcsomat helyesen másolták-e át. Jelölje be. ?? - Gondoskodtam arról, hogy a fájlt csak magamnak és senki másnak olvashassam-írhassam. Jelölje be. ??
- Győződtem meg arról, hogy a következő opciók engedélyezve voltak
/etc/ssh/sshd_config
:PubkeyAuthentication yes
ésAuthorizedKeysFile .ssh/authorized_keys
. Jelölje be. ??
Ennek ellenére a laptopomról történő bejelentkezéskor folyamatosan jelszót kértem.
Néhány perc múlva a StackOverflow-on megismertem a Titkosított Otthoni Könyvtárakat, amelyek alapértelmezettek bizonyos környezetekben, beleértve az Ubuntut is.
A titkosított otthoni könyvtárakat csak addig lehet visszafejteni, amíg az első bejelentkezés sikeres. A authorized_keys
fájlom azonban a saját könyvtáramban van tárolva.
Ezért az első csatlakozási kísérletemhez jelszóra lesz szükség. A későbbi kapcsolatok jelszó nélkül sikeresek lesznek, mivel az SSH szolgáltatás képes lesz olvasni authorized_keys
a fájlomat a visszafejtett otthoni könyvtárban.
Ennek kiküszöbölésére létrehoztam egy könyvtárat, amelyet a felhasználónevemről aritdev
neveztem el az otthoni könyvtáramon kívül (én választottam /etc/
), és teljes engedélyeket adtam magamnak, de olvasási-végrehajtási engedélyeket mindenki másnak. Ezután áthelyeztem a authorized_keys
fájlomat /etc/aritdev/
. Ezután frissítettem a AuthorizedKeysFile
paramétert /etc/ssh/sshd_config
:
AuthorizedKeysFile /etc/%u/authorized_keys
Végül újraindítottam az SSH szolgáltatást. A teszteléshez kijelentkeztem a VPS-ből, majd megpróbáltam újra bejelentkezni. BOOM - sikerült! ??
Milyen problémákat tapasztalt a szerver hitelesítésével kapcsolatban? Hogyan oldotta meg őket? Kérjük, ossza meg alább! ??