Nach Monaten der Vernachlässigung, E-Mail-Flammen und Management-Kämpfen wurde unser aktueller Systemadministrator gefeuert und mir "die Server-Anmeldeinformationen" übergeben. Solche Anmeldeinformationen bestehen aus einem Root-Passwort und nichts anderem: keine Prozeduren, keine Dokumentation, keine Tipps, nichts.
Meine Frage ist: Angenommen, er hat Sprengfallen zurückgelassen, wie übernehme ich die Server mit so wenig Ausfallzeiten wie möglich?
Hier sind die Details:
- ein Produktionsserver in einer Serverfarm im Keller; Ubuntu Server 9.x wahrscheinlich mit Grsec-Patches (Gerüchte, die ich das letzte Mal gehört habe, als ich den Administrator gefragt habe)
- Ein interner Server, der die gesamte interne Dokumentation, das Datei-Repository, die Wikis usw. enthält. Wieder ein Ubuntu-Server, einige Jahre alt.
Angenommen, beide Server sind gepatcht und auf dem neuesten Stand, also würde ich lieber nicht versuchen, mich einzumischen, es sei denn, es gibt einen guten Grund (dh das kann dem oberen Management erklärt werden).
Auf dem Produktionsserver sind einige Websites gehostet (Standard-Apache-PHP-MySQL), ein LDAP-Server, eine ZIMBRA-E-Mail-Suite / ein ZIMBRA-E-Mail-Server und, soweit ich das beurteilen kann, einige VMware-Workstations, die ausgeführt werden. Keine Ahnung, was da drin passiert. Wahrscheinlich ist einer der LDAP-Master, aber das ist eine wilde Vermutung.
Der interne Server verfügt über ein internes Wiki / CMS, einen LDAP-Slave, der die Anmeldeinformationen vom Produktionsserver repliziert, einige weitere VMware-Workstations und ausgeführte Sicherungen.
Ich könnte einfach zum Administrator der Serverfarm gehen, auf den Server zeigen, ihnen sagen, dass sie sudo
diesen Server bitte herunterfahren sollen, sich im Einzelbenutzermodus anmelden und mich damit abfinden. Gleiches gilt für den internen Server. Trotzdem würde das Ausfallzeiten bedeuten, das obere Management wäre verärgert, und der alte Systemadministrator würde auf mich zurückschießen und sagen: „Sehen Sie? Sie können meinen Job und andere Belästigungen nicht erledigen, und vor allem müsste ich möglicherweise ein paar Wochen unbezahlte Zeit verlieren.
Am anderen Ende des Spektrums konnte ich mich einfach als Root anmelden und mich über den Server bewegen, um zu verstehen, was passiert. Mit allen Risiken, Überraschungen auszulösen.
Ich suche nach einer Lösung in der Mitte: Versuchen Sie, alles so zu halten, wie es ist, während Sie verstehen, was und wie passiert, und vor allem vermeiden, dass Sprengfallen zurückbleiben .
Was sind deine Vorschläge?
Bisher habe ich darüber nachgedacht, mit dem internen Server zu „üben“, das Netzwerk zu trennen, mit einer Live-CD neu zu starten, das Root-Dateisystem auf ein USB-Laufwerk zu laden und es auf eine getrennte, isolierte virtuelle Maschine zu laden, um die frühere Systemadministration zu verstehen Denken (a-la 'kenne deinen Feind'). Könnte das gleiche Kunststück mit dem Produktionsserver schaffen, aber ein vollständiger Speicherauszug würde jemanden auffallen lassen. Vielleicht kann ich mich einfach als root anmelden, crontab überprüfen, das .profile auf Befehle überprüfen, die gestartet wurden, das letzte Protokoll sichern und alles, was mir in den Sinn kommt.
Und deshalb bin ich hier. Jeder noch so kleine Hinweis wäre sehr dankbar.
Zeit ist auch ein Problem: In einigen Stunden oder Wochen können Auslöser auftreten. Fühlt sich an wie einer dieser schlechten Hollywood-Filme, nicht wahr?
quelle
Antworten:
Wie andere gesagt haben, sieht das nach einer lockeren Situation aus.
(Beginnend am Ende)
Natürlich können Sie nicht einfach die Server herunterfahren und das Installationsprogramm zaubern lassen.
Allgemeiner Prozess
rm -rf $service
(klingt harsch, aber ich meine die Außerbetriebnahme des Dienstes)Was hast du gewonnen?
Wurde dort das gemacht, macht es überhaupt keinen Spaß :(
Warum müssen Sie es vom Management abzeichnen lassen?
Oh, und präsentieren Sie ihnen den Gesamtplan, bevor Sie beginnen , mit einigen Schätzungen darüber, was im schlimmsten und besten Fall passieren wird.
Es wird viel Zeit unabhängig von Umschichtungen kosten , wenn Sie Dokumentation nicht haben. Sie müssen nicht an Hintertüren denken. Wenn Sie keine Dokumentation haben, ist eine fortlaufende Migration der einzige Weg, um einen vernünftigen Zustand zu erreichen, der einen Mehrwert für das Unternehmen bietet.
quelle
Haben Sie Grund zu der Annahme, dass der vorherige Administrator etwas Schlechtes hinterlassen hat, oder schauen Sie sich einfach viele Filme an?
Ich möchte nicht scherzhaft sein, ich versuche eine Vorstellung davon zu bekommen, welche Art von Bedrohung Ihrer Meinung nach vorhanden ist und wie wahrscheinlich sie ist. Wenn Sie der Meinung sind, dass die Chancen sehr hoch sind, dass tatsächlich ein ernsthaft störendes Problem vorliegt, würde ich vorschlagen, es so zu behandeln, als wäre es ein erfolgreicher Netzwerkeinbruch .
In jedem Fall möchten Ihre Vorgesetzten nicht, dass Ausfallzeiten unterbrochen werden, während Sie sich damit befassen. Wie stehen sie zu geplanten Ausfallzeiten, um Systeme aufzuräumen, im Vergleich zu ungeplanten Ausfallzeiten, wenn ein Fehler im System vorliegt (ob ein echter Fehler oder ein Fehler)? Rogue Admin) und wenn ihre Einstellung realistisch ist im Vergleich zu Ihrer Einschätzung der Wahrscheinlichkeit, dass Sie hier wirklich ein Problem haben werden.
Was auch immer Sie tun, beachten Sie Folgendes:
Machen Sie sich jetzt ein Bild von den Systemen . Bevor Sie etwas anderes tun. Nehmen Sie zwei und legen Sie eine beiseite und berühren Sie sie erst wieder, wenn Sie wissen, was, wenn überhaupt, mit Ihrem System passiert. Dies ist Ihre Aufzeichnung darüber, wie das System war, als Sie es übernommen haben.
Stellen Sie den "zweiten" Satz von Images auf einigen virtuellen Maschinen wieder her und verwenden Sie diese, um zu prüfen, was gerade passiert. Wenn Sie befürchten, dass Dinge nach einem bestimmten Datum ausgelöst werden, legen Sie das Datum in der virtuellen Maschine etwa ein Jahr vor.
quelle
Wenn Sie zusätzliche Zeit in dieses Projekt investieren möchten, würde ich Ihnen zunächst raten, dafür tatsächlich bezahlt zu werden. Es scheint, dass Sie unbezahlte Überstunden als Tatsache akzeptiert haben, gemessen an Ihren Worten - meiner Meinung nach sollte es nicht so sein, und besonders nicht, wenn Sie wegen der Schuld eines anderen in einer solchen Notlage sind (sei es das Management, der alte Systemadministrator oder wahrscheinlich eine Kombination aus beiden).
Fahren Sie die Server herunter und starten Sie im Einzelbenutzermodus (init = / bin / sh oder 1 bei grub), um nach Befehlen zu suchen, die bei der Anmeldung von root ausgeführt werden. Hier sind Ausfallzeiten erforderlich. Machen Sie dem Management klar, dass es keine andere Wahl gibt als Ausfallzeiten, wenn Sie sicher sein möchten, dass Sie Ihre Daten behalten können.
Schauen Sie sich danach alle Cronjobs an, auch wenn sie echt aussehen. Führen Sie außerdem so bald wie möglich vollständige Sicherungen durch - auch wenn dies Ausfallzeiten bedeutet. Sie können Ihre vollständigen Sicherungen in laufende VMs umwandeln, wenn Sie möchten.
Wenn Sie dann neue Server oder fähige VMs in die Hände bekommen können, würde ich die Dienste tatsächlich nacheinander in neue, saubere Umgebungen migrieren. Sie können dies in mehreren Schritten tun, um wahrgenommene Ausfallzeiten zu minimieren. Sie erwerben dringend benötigte fundierte Kenntnisse der Dienste und stellen gleichzeitig Ihr Vertrauen in die Basissysteme wieder her.
In der Zwischenzeit können Sie mit Tools wie chkrootkit nach Rootkits suchen . Führen Sie nessus auf den Servern aus, um nach Sicherheitslücken zu suchen, die der alte Administrator möglicherweise verwendet.
Bearbeiten: Ich glaube, ich habe den "anmutigen" Teil Ihrer Frage nicht so gut angesprochen, wie ich konnte. Der erste Schritt (in den Einzelbenutzermodus wechseln, um nach Anmeldefallen zu suchen) kann wahrscheinlich übersprungen werden - der alte Systemadministrator, der Ihnen das Root-Passwort gibt und die Anmeldung für a
rm -rf /
einrichtet, entspricht fast dem Löschen aller Dateien selbst wahrscheinlich macht das keinen Sinn. Gemäß dem Sicherungsteil: Versuchen Sie, einersync
basierte Lösung zu verwenden, damit Sie den größten Teil der anfänglichen Sicherung online durchführen und Ausfallzeiten minimieren können.quelle
Ich werde Zeit investieren, um zu lernen, welche Apps auf diesen Servern ausgeführt werden. Nachdem Sie wissen, was was ist, können Sie jederzeit einen neuen Server installieren. Wenn Sie der Meinung sind, dass dies eine Hintertür sein könnte, ist es eine gute Idee, einfach im Einzelmodus zu booten oder eine Firewall zwischen den Servern und dem externen Netz zu haben.
quelle
Sie werden paranoid in Bezug auf Sicherheit. Es besteht keine Notwendigkeit, paranoid zu werden. (Weil du über Sprengfallen sprichst). Gehen Sie die installierte Softwareliste durch. Sehen Sie, was der Dienst ausführt (netstat, ps usw.), siehe Cron-Jobs. Deaktivieren Sie das vorherige sys admin-Benutzerkonto, ohne das Konto zu löschen (einfach durch Zeigen der Shell auf nologin). Sehen Sie sich die Protokolldateien an. Ich denke, mit diesen Schritten und aufgrund Ihres Wissens über die Unternehmensanforderungen, anhand derer Sie die Verwendung der Server erraten können, sollten Sie in der Lage sein, sie ohne größere Fehler zu warten.
quelle