Po miesiącach zaniedbań, płomieni e-mail i bitew zarządczych nasz obecny sysadmin został zwolniony i przekazał mi „poświadczenia serwera”. Takie dane uwierzytelniające obejmują hasło roota i nic więcej: brak procedur, dokumentacji, wskazówek, nic.
Moje pytanie brzmi: zakładając, że pozostawił miny pułapki, jak mogę z wdziękiem przejąć serwery przy jak najmniejszym przestoju?
Oto szczegóły:
- jeden serwer produkcyjny zlokalizowany na farmie serwerów w piwnicy; Serwer Ubuntu 9.x prawdopodobnie z łatkami Grsec (plotki, które słyszałem ostatnim razem, gdy zapytałem administratora)
- jeden wewnętrzny serwer, który zawiera całą wewnętrzną dokumentację, repozytorium plików, wiki itp. Ponownie, serwer ubuntu, kilka lat.
Załóżmy, że oba serwery są załatane i aktualne, więc wolałbym nie próbować włamać się, chyba że jest ku temu dobry powód (np. Można to wytłumaczyć wyższemu kierownictwu).
Serwer produkcyjny ma kilka hostowanych stron internetowych (standardowy apache-php-mysql), serwer LDAP, pakiet / serwer poczty e-mail ZIMBRA i, o ile wiem, kilka uruchomionych stacji roboczych vmware. Nie mam pojęcia, co się tam dzieje. Prawdopodobnie jednym z nich jest mistrz LDAP, ale zgaduje.
Serwer wewnętrzny ma wewnętrzny wiki / cms, podrzędny LDAP, który replikuje poświadczenia z serwera produkcyjnego, kilka innych stacji roboczych vmware i uruchomione kopie zapasowe.
Mógłbym po prostu pójść do administratora farmy serwerów, wskazać na serwer, powiedzieć im „ sudo
zamknij ten serwer, proszę”, zalogować się w trybie pojedynczego użytkownika i mieć z tym dostęp. To samo dotyczy serwera wewnętrznego. Oznaczałoby to jednak przestój, zdenerwowanie wyższej kadry kierowniczej, stary sysadmin odpychający mnie, mówiąc „rozumiesz? nie możesz wykonywać mojej pracy i innych uciążliwości, a co najważniejsze musiałbym stracić potencjalnie kilka tygodni nieopłaconego czasu.
Na drugim końcu spektrum mógłbym zalogować się jako root i cala przez serwer, aby spróbować zrozumieć, co się dzieje. Po całym ryzyku wywołania niespodzianek.
Szukam rozwiązania pośrodku: staraj się, aby wszystko działało tak, jak jest, jednocześnie rozumiejąc, co się dzieje i jak, a co najważniejsze, unikając wyzwalania pułapek .
Jakie są twoje sugestie?
Do tej pory myślałem o „ćwiczeniu” z wewnętrznym serwerem, odłączaniu sieci, ponownym uruchamianiu z Live CD, zrzucaniu głównego systemu plików na dysk USB i ładowaniu go na odłączoną, izolowaną maszynę wirtualną, aby zrozumieć dawny sysadmin myślenie (a-la „poznaj swojego wroga”). Mogłoby to zrobić to samo z serwerem produkcyjnym, ale pełny zrzut zwróciłby na to uwagę. Być może mogę po prostu zalogować się jako root, sprawdzić crontab, sprawdzić plik .profile pod kątem uruchomionych poleceń, zrzucić ostatni dziennik i cokolwiek, co przychodzi mi do głowy.
I dlatego tu jestem. Wszelkie wskazówki, bez względu na to, jak małe, byłyby bardzo mile widziane.
Problemem jest także czas: za kilka godzin lub za kilka tygodni mogą pojawić się czynniki uruchamiające. Czujesz się jak jeden z tych złych hollywoodzkich filmów, prawda?