Jak przyznać tymczasowy dostęp do serwera?

15

Zatrudniłem zdalnego konsultanta, który dostroiłby moje serwery. Teraz nie jestem w 100% pewien, czy podam mu hasło roota i pozwolę mu robić wszystko, co chce robić na serwerach. Idealnie chciałbym zobaczyć wszystko, co robi moim serwerom (w czasie rzeczywistym), a także znaleźć sposób, aby nie udostępniać mu hasła roota.

Czy są jakieś najlepsze praktyki pozwalające zdalnemu konsultantowi na dostęp do twojego serwera?

EDYCJA: Aby to wyjaśnić, chcę zrobić pewnego rodzaju zrzut ekranu z konsultantem. Czy jest jakaś metoda, dzięki której jego polecenia są tunelowane przez moje konto bez otrzymywania hasła?

PS: Moje serwery są na Ubuntu 9.10

Paras Chopra
źródło
4
Myślę, że zaufanie powinno być najważniejsze . Jeśli mu nie ufasz (wystarczająco), nie pozwól mu zadzierać z twoim serwerem. Wykonaj kopię zapasową na wszelki wypadek i staraj się nie mieć żadnych poufnych danych na serwerze.
Cristian Ciupitu,

Odpowiedzi:

8

Możesz pozwolić mu połączyć się ze zwykłym kontem, a następnie monitorować jego sesję SSH . Rozwiązanie oparte na ekranie jest moim zdaniem najlepsze i pozwala na „sparowanie” administracji systemu. Na przykład może wpisać polecenia sudo, a ty wpisz hasło, jeśli będzie potrzebne.

PS Jeśli używasz ekranu, nie oznacza to, że nie powinieneś także używać sudosh2 ani innych rozwiązań.

Cristian Ciupitu
źródło
15

Zamiast przyznać mu hasło roota, użyj sudo.

Jeśli chcesz zobaczyć wszystko, co robi w czasie rzeczywistym jako administrator, sprawdź sudosh2 . Z dokumentów:

sudosh to filtr powłoki inspekcji i może być używany jako powłoka logowania. Sudosh rejestruje wszystkie naciśnięcia klawiszy i dane wyjściowe i może odtwarzać sesję tak jak magnetowid.

„Wszystkie naciśnięcia klawiszy” obejmują naciśnięcia klawiszy ze spacji, usuwania znaków, „wymazywania słowa” BASH itp. Możesz oglądać kłopotliwe literówki i poprawki itp.

sudosh będzie obsługiwał syslog i możesz wysłać logi do zdalnego serwera syslog. Zapewni to, że użytkownik nie będzie mógł usunąć wszystkich kopii dzienników kontroli.

Zauważ, że oryginalny projekt sudosh (pierwsza wersja) został porzucony przez autora. sudosh2 żyje i ma się dobrze.

Stefan Lasiewski
źródło
2

To zależy od tego, jaki poziom dostępu chcesz mu / jej dać. Nigdy nie włączyłem zdalnych loginów roota. Tylko „normalne” konta powinny mieć zdalny dostęp, a następnie skonfigurować sudo na wszystko, czego potrzebuje ta osoba.

Chris S.
źródło
Ale czy konto w sudo nie jest równoznaczne z zapewnieniem dostępu do konta root?
Paras Chopra,
4
@Paras Chopra - zależy od używanej konfiguracji - możesz ograniczyć sudodostęp do niektórych poleceń, na przykład
warren
2

Po pierwsze, powinieneś mieć jasno określone cele dotyczące tego, co chcesz, aby zrobił. Po zdefiniowaniu tych celów możesz przyznać mu poziom dostępu wymagany do osiągnięcia tych celów.

To jak wysadzenie samochodu w warsztacie i kazanie im „naprawić”. Następną rzeczą, o której wiesz, że mam rachunek za tysiące dolarów, a oni zrobili rzeczy, których nie chciałem robić i o które nie prosiłem.

joeqwerty
źródło
0

Dodaję inną, inną odpowiedź w odpowiedzi na twoją aktualizację.

Korzystając z ekranu GNU, możesz udostępnić ekran innemu użytkownikowi. Oznacza to, że może pisać polecenia, a ty widzisz wszystko, co pisze. Możesz pisać polecenia, a on może zobaczyć, co piszesz. Gdy pojawi się monit o hasło, możesz wpisać hasło, ale treść hasła nie jest drukowana na ekranie (Uwaga: tekst nie jest drukowany na ekranie, ale nie jestem pewien, czy inny użytkownik będzie mógł uzyskać dostęp do klawiszy w inny sposób lub masz dostęp do bufora klawiszy itp.).

Więcej informacji na http://www.debian-administration.org/article/Using_GNU_screen%27s_multiuser_feature_for_remote_support

Inna sugestia: wcześniej zmień hasło root na hasło tymczasowe. Kiedy go nie będzie, przywróć hasło roota do oryginalnego hasła.

Stefan Lasiewski
źródło
1
Już zasugerowałem użycie ekranu .
Cristian Ciupitu
0

Jeśli zezwalasz tylko na dostęp do klucza publicznego do serwera, ale nie logujesz się za pomocą hasła, możesz w dowolnym momencie odwołać prawo dostępu, usuwając klucz, który przekazałeś konsultantowi.

Po uruchomieniu na ekranie ekran GNU powinien zapewniać wszystkie pożądane funkcje - jak sugerował Cristian Ciupitu. Jeśli chcesz zwiększyć komfort, sudosh2 może ci pomóc, ale historia twoich powłok i wydruków ekranów mogą pomóc ci później odtworzyć polecenia ...

MaoPU
źródło