odmowa dostępu dla root @ localhost dla połączenia ssh


28

Właśnie zainstalowałem na nim Ubuntu 14.04 i LAMP. Potem chciałem skonfigurować mój serwer, więc wypróbowałem ten samouczek.

Kiedy wydaje polecenie:

ssh root@localhost

Otrzymuję: Odmowa zezwolenia, spróbuj ponownie. Zalogowałem się jako użytkownik root za pomocą polecenia:

sudo -i

Próbowałem również tego samego, logując się przez:

sudo -s

Używam tego samego hasła, którego użyłem do zalogowania się jako użytkownik, ale wciąż pojawia się ten sam komunikat o błędzie.

Czy ktoś mógłby mi pomóc tutaj?

PS: Zastanawiałem się nad tym pytaniem, ale nie wydawało mi się, że działa.

Odpowiedzi:


57

Domyślnie serwer SSH odmawia logowania opartego na haśle dla użytkownika root. W /etc/ssh/sshd_configzmień:

PermitRootLogin without-password

do

PermitRootLogin yes

I uruchom ponownie SSH:

sudo service ssh restart

Lub możesz użyć kluczy SSH. Jeśli go nie masz, utwórz go za pomocą ssh-keygen(trzymaj się domyślnego klucza i pomiń hasło, jeśli masz na to ochotę). Następnie zrób sudo -s(lub jakąkolwiek preferowaną metodę rootowania) i dodaj klucz SSH do /root/.ssh/authorized_keys:

cat /home/user/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys

Otrzymuję ten błąd: cat: /home/user/.ssh/id_rsa.pub: Brak takiego pliku lub katalogu.
vnay92

Ach Przepraszam. Zakładałem, że masz klucz SSH. Jako użytkownik wykonaj ssh-keygen(pomiń hasło do klucza SSH, jeśli chcesz, i pozostań przy domyślnych ustawieniach), aby je utworzyć. Mam również nadzieję, że zastąpiłeś userswoją rzeczywistą nazwę użytkownika.
muru

Obie metody nie działały dla mnie! Sprawdziłem nawet mój folder domowy; to jest puste. Co powinienem zrobić?
Heich-B

5

W niektórych przypadkach po zmianie

PermitRootLogin yes

musisz sprawdzić tę konfigurację:

DenyUsers root
AllowUsers saeid

i aby włączyć logowanie, należy zmienić na:

#DenyUsers root
AllowUsers root OtherUser

4

Jeśli nie podałeś hasła do roota i próbujesz odpalić komendę na platformie Spark lub Haddop ./sbin/stop-all.sh or./sbin/start-all.sh. Jeśli nie masz hasła roota, możesz je skonfigurować za pomocą

sudo passwd

i komendy ognia.


1

Miałem podobny problem do tego. Potrzebowałem dwóch komputerów , jednego na Ubuntu, a drugiego na Arch , aby zsynchronizować pliki przez Unison, ale wystąpił ten sam błąd odmowy uprawnień. Dla dobra tych, którzy mają ten sam problem, co ja, oto co zrobiłem:

Po pierwsze: zainstalowałem tę samą wersję Unison na obu komputerach. Było to trochę trudne, ponieważ ten dostępny w centrum oprogramowania był opóźniony w stosunku do tego, co było łatwo dostępne dla Arch. Tak więc nie mogłem znaleźć wyższej wersji dla Ubuntu, więc zamiast tego zastąpiłem tą w Arch na niższą. Znalazłem tutaj: http://zdia.de/downloads/unison-2.40.102-linux-x86_64 . Ta sama wersja znajduje się w centrum oprogramowania dla Ubuntu.

Po drugie: wykonałem następujące kroki: https://www.howtoforge.com/setting-up-unison-file-synchronization-between-two-servers-on-debian-squeeze (Uwaga: Arch był moim serwerem 1, a Ubuntu był mój serwer 2.)

Wystąpił problem w kroku 3, gdy próbowałem skopiować ssh. Ale problem został rozwiązany przez zmianę „id_dsa.pub” na „id_rsa.pub” w wierszu „ssh-copy-id -i $ HOME / .ssh / id_dsa.pub root@192.168.0.101”. Prawdopodobnie moja wina, bo chyba zapomniałem dodać „-t dsa”. W każdym razie najpierw wypróbuj oryginalne polecenie. JEŻELI pojawi się błąd, a następnie przejść do RSA.

Po wykonaniu powyższych kroków okazało się, że nadal nie mogę zmusić Unison do połączenia się z innym serwerem, ani nie mogę się zalogować (bez Unison) przez ssh na innym serwerze. W końcu, po godzinach wyszukiwania w Google, zaprowadzono mnie na tę stronę, a odpowiedź udzielona przez mojego Muru przypieczętowała umowę.

Po zastosowaniu mogłem teraz zalogować się przez SSH na serwer 2.

Więc uruchomiłem Unison, poprawiłem ustawienia profilu i altówkę!

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.