Authorized_keys:
-rw-r--r-- 1 root root 0 Apr 28 11:48 /root/.ssh/authorized_keysSve u svemu, deluje mi kao višak, a ne manjak prava ...
-rw-rw-r-- 1 user user 393 Apr 28 20:36 /home/user/.ssh/authorized_keys
Jesi li ikada cuo za onu poznatu "Less is more"? :-)
Bas u tom visku i jeste stvar ... /home/user/.ssh/authorized_keys ti je otvoren za upisivanje za grupu (permisije su ti 664). Bolje postavi oba fajla da ti budu:
chmod 600 /root/.ssh/authorized_keys /home/user/.ssh/authorized_keys
Proof of Concept ... iliti takticko-pokazna vezba
Ako su permisije na authorized_keys '400', ssh sa serera na samog sebe koriscenjem public key auth - radi:
-r-------- 1 beri other 230 Apr 15 2018 .ssh/authorized_keys
[beri@vps ~]$ ssh 0 -l beri
Last login: Mon Apr 29 00:11:16 2019 from localhost
[beri@vps ~]$ exit
Connection to 0 closed.
Ako promenimo permisije - stavimo npr. 660:
-rw-rw---- 1 beri other 230 Apr 15 2018 .ssh/authorized_keys
[beri@vps ~]$ ssh 0 -l beri
beri@0's password:
Kao sto vidis, trazi mi password. Ako vratim na 400:
-r-------- 1 beri other 230 Apr 15 2018 .ssh/authorized_keys
[beri@vps ~]$ !ssh
ssh 0 -l beri
Last login: Mon Apr 29 00:12:15 2019 from localhost
[beri@vps ~]$ logout
To opet radi.
Usput, takodje proveri:
# find /root /home -name id_rsa
On mora da bude strogo postavljen na 400 ili 600, inace imas isti problem - funkcija safe_path() u 'misc.c' vraca -1 (izvor: OpenSSH Source @ GitHub)
Ako ti je okruzenje 'trusted' - tj. ako ti je mreza zatvorena, niko ne moze da joj pridje sa spoljne strane i ne plasis se uljeza mozes da u /etc/ssh/sshd_config na strani servera ukines striktnu kontrolu vlasnistva i permisija, tako sto ces da stavis:
Ovo samo ako nikako ne uspes da se izboris sa problemom. Ali niposto ako su ti serveri izlozeni spoljnom svetu.