Porównaj ceny domen i usług IT, sprzedawców z całego świata

ssh: użytkownik niedozwolony powłoka nie istnieje


  • Apache
  • CentosOS 5
  • Plesk 10

Nowość w linii poleceń i ssh.
Podczas próby połączenia wielu użytkowników (znajomego root git) z ssh do tej samej powłoki i ustanowienia połączenia bez hasła, musiałem popełnić błąd.
Ja więcej

nie można zalogować się przez ssh jako root

lub git, ale mogę jako przyjaciel, którego powłokę zdałem, edytując etc/passwd.
Na szczęście nadal mogę zalogować się do plesk, więc edycja plików gui jest możliwa.
oto co znalazłem w moim dzienniku błędów sshd
sshd[11999]: User git not allowed because shell/bin/bash\r does not exist
sshd[12000]: input_userauth_request: invalid user git
sshd[11999]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=xxx.xxx.xxx.dynamic.upc.nl user=git
sshd[11999]: Failed password for invalid user git from xxx.xxx.xxx port 54851 ssh2

Czytałem coś o sudo i losowym logowaniu: dzwoniąc \ r
Ale gdzie przywrócić?
Oto kilka konfiguracji
etc/ssh/sshd_config :
PubkeyAuthentication yes

Ect/muszle
/bin/sh
/bin/bash
/sbin/nologin
/bin/tcsh
/bin/csh
/bin/false
/usr/local/psa/bin/chrootsh
/bin/rbash

etc/hasło
git:x:10009:10009::/home/git:/bin/bash
friend:x:10010:10010::/home/git:/bin/bash

wcześniej próbowałem ustawić hasło bez połączenia
więc jest plik .ssh/id_rsa gdzieś na serwerze i na mojej lokalnej maszynie.
Po odczytaniu

Słynny „BŁĄD: Odmowa dostępu użytkownikowi .git”
https://coderoad.ru/5335197/
próbowałem
ssh-add -l
Could not open a connection to your authentication agent

Mój problem jest podobny do tego:

https://serverfault.com/questi ... shell
https://serverfault.com/questi ... shell
Jeśli jestem zalogowany przez ssh jako przyjaciel, nie mogę sudo root:
sudo root 
friend is not in the sudoers file

i nie mogę shhh
[friend@vpsXXX ~]$ chsh -s/bin/bash root
chsh: Running UID doesn't match UID of user we're altering, shell change denied

Mam nadzieję, że ktoś może mi to wyjaśnić.
W razie potrzeby chętnie udzielę dodatkowych informacji.
Zaproszony:
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

/bin/bash\r

oznacza, że ​​edytowałeś/etc/passwd lub/etc/shells używając edytora Windows, ponieważ zawiera on linie Windows
\ r \ n
. Linux interpretuje tylko
\ n
i zakłada, że ​​pozostała część
\ r
jest częścią nazwy binarnej.
Rozwiązanie: otwórz pliki w edytorze Linux, usuń znak nowej linii i dodaj go ponownie.
Alternatywnie możesz zainstalować pakiet
tofrodos
i uruchomić:
fromdos/etc/passwd
fromdos/etc/shells

Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się