Sie haben bereits ssh, vim und wget erwähnt, was wesentlich und perfekt ist. Einige zusätzliche Tools, die das Leben erleichtern können:
1. GNU Screen / Byobu
GNU Screen ist ein kostenloser Terminal-Multiplexer, mit dem ein Benutzer auf mehrere separate Terminalsitzungen in einem einzelnen Terminalfenster oder einer Remote-Terminalsitzung zugreifen kann. Er ist nützlich, um mehrere Programme über die Befehlszeile zu verarbeiten und Programme von der Shell zu trennen, die gestartet wurde das Programm." (Von der GNU_Screen-Seite auf Wikipedia)
Ein Hauptvorteil ist, dass Sie ein oder mehrere virtuelle Terminals haben können, die sich in genau dem Zustand befinden, in dem Sie sie verlassen haben, als Sie zurückgekommen sind (dh sich über ssh neu anmelden). Dies ist auch gut, wenn Ihre Verbindung aus irgendeinem Grund unterbrochen ist.
Der Bildschirm funktioniert unabhängig von der Software, mit der Sie eine Verbindung zur Box herstellen (er befindet sich auf dem Server), sodass er gut mit Putty oder den meisten anderen Terminalsoftware kombiniert werden kann.
Dieser Artikel zeigt einige nette Dinge, die Sie damit machen können: http://www.pastacode.de/extending-gnu-screen-adding-a-taskbar/en/
Eine gute Alternative ist byobu, das in einigen Distributionen bereits vorkonfiguriert ist: http://byobu.co/
2. Mitternachtskommandant
Ein konsolenbasiertes grafisches Browsing-Tool zum Anzeigen und Bearbeiten von Dateien und Verzeichnissen.
Kann auch sichere Fernübertragungen durchführen. Es gibt einen eingebauten FISH- und FTP-Client.
Das bedeutet, Sie haben zwei Textfenster nebeneinander in einer Befehlszeilenkonsole und eines zeigt Ihre Remote-Box und das andere, wo immer Sie sie anschließen (dies kann auch Ihr lokales System sein). Dann können Sie beide Dateisysteme nebeneinander und navigieren Markieren oder untersuchen Sie einzelne Dateien oder Dateibäume und kopieren oder verschieben Sie sie zwischen den Speicherorten. FISH ist sicher, FTP nicht. Sehr leistungsfähig und einfach für Anfänger.
3. rsync
Für eine schnelle, sichere und zuverlässige Dateiübertragung und Synchronisierung zwischen verschiedenen Standorten
4. VCS
Verwendung eines verteilten Versionskontrollsystems wie Basar, Quecksilber oder Git, um den Code zu aktualisieren. Github oder Bitbucket bieten kommerzielles Code-Hosting an, dies ist jedoch nicht erforderlich. Sie können es auch effizient auf Ihren eigenen Computern einsetzen.
Joseph Kern: Können Sie erläutern, wie Sie git genau für die Remote-Konfigurationsorganisation verwenden?
5. Terminal-Clients
Auf Unix-ähnlichen Systemen sind sie bereits an Bord, unter Windows können Sie Putty, Tera Term, Mind Term oder Pandora verwenden. Oder machen Sie eine Cygwin-Installation und ssh von den Cygwin-Terminel-Fenstern zu den Remote-Boxen (das hat mehr Vorteile, aber das ist eine Frage, was Sie bevorzugen).
6. Tunneling und Port Forwarding
Es kann hilfreich sein, bestimmte Ports sicher an Ihren lokalen Computer weiterzuleiten. Beispielsweise könnten Sie den mysql-Port TCP 3306 oder den Postgres-TCP 5432 weiterleiten und ein Datenbankverwaltungstool lokal installieren.
Sie können Tunnel aus Windwos-Maschinen mit Putty (oder auf der Kommandozeile basierend mit dem Plink des kleinen Bruders) erstellen, mit Cygwin und Mindterm können Sie auch Port-Forwarding durchführen. Wenn Sie sich lokal auf einem Unix-ähnlichen Computer befinden, können Sie ssh odr plink verwenden, um ein solches Tunneling zu erstellen.
Um ein stabileres und dauerhafteres Tunneln für verschiedene Ports zu erreichen, empfehle ich OpenVPN. Die Tunnelmethode "Pre-Shared-Key" von Punkt zu Punkt ist nicht so schwer zu installieren.
7. Haben Sie ein lokales Unix-ähnliches System
Wenn Ihr lokaler Computer bereits über einen Mac verfügt, können Sie eine lokale Shell öffnen. Wenn Ihre Workstation auf Windows basiert, kann es hilfreich sein, einen lokalen Unix-ähnlichen Server zu erstellen, der sich im selben lokalen Netzwerk befindet. Dies kann eine andere Maschine in einem anderen Raum sein, die an denselben Router oder Switch angeschlossen ist. Wenn Sie nur eine Maschine möchten, können Sie den kostenlosen VMware-Server installieren und eine virtuelle Maschine erstellen, vorzugsweise dasselbe Betriebssystem wie Ihre Remote-Maschine. Wenn Sie einen Samba-Server darauf installieren, können Sie die Samba-Freigaben von Ihrem Desktop aus "netto verwenden".
Wenn Sie einen SSH-Server auf dem lokalen Server haben und Port 22 auf Ihrem Router dafür öffnen, können Sie in Ihr lokales System sshen, wenn Sie sich außerhalb befinden.
Sie können Tunnel für entfernte Maschinen erstellen oder Dateien und ganze Dateibäume mit rsync übertragen und synchronisieren. Sie können es zum Testen, für VSC, für die lokale Entwicklung, als lokalen Webserver für Schulungszwecke verwenden.
Sie können Sicherungen von Remote-Computern abrufen. Sie können lokale Cron-Jobs erstellen, die Backups automatisch durchführen (z. B. Datenbanken, die Sie regelmäßig lokal speichern möchten).
8. X Remote-GUI
Wenn Sie auf einem Linux-ähnlichen System arbeiten, ist es auch möglich, GUI-Anwendungen auf Ihren Linux-Servern auszuführen, die die GUI auf Ihrem lokalen Computer zeichnen. Dies kann ein grafisches Tool zum Vergleichen von Dateien oder fast alles sein, was Sie wollen.
Obwohl es nicht sehr häufig vorkommt und in vielen Fällen keine GUI-Software für die Linux-Box-Administration erforderlich ist, kann es in einigen Fällen hilfreich sein, wenn Sie können.
Stellen Sie auf dem Remote-Computer sicher, dass in / etc / ssh / sshd_config diese Zeile vorhanden ist:
X11Forwarding Yes
Starten Sie den ssh-Server mit neu
/etc/init.d/sshd restart
Dann melden Sie sich das nächste Mal mit
ssh -X me@remote-box
Sie werden einen X-Tunnel haben, versuchen, xclock zu Testzwecken auf dem Remote-Server zu installieren und in der xclock
soeben erwähnten ssh-Sitzung auszuführen . Auf Ihrer Linux-Benutzeroberfläche sollte eine einfache x-Uhr für Testzwecke angezeigt werden.
Dies ist auch auf einem Mac möglich, wenn Sie eine lokale X-Umgebung installieren.
9. Wenn Sie eine Reihe ähnlicher Felder oder Aufgaben haben: Verwenden Sie ein Systemkonfigurationstool
Wenn Sie eine Serverfarm haben oder große Cloud-Bereitstellungen mit vielen redundanten oder auf andere Weise gleichen oder ähnlichen Computern durchführen, können Sie dies verwenden.
Wahrscheinlich wäre es nicht sinnvoll, wenn die meisten Boxen einzeln oder mit unterschiedlichen Betriebssystemen oder unterschiedlichen Versionen ausgeführt werden.
Es gibt verschiedene Tools:
10. Stellen Sie Anwendungscontainer mit bereit docker
Dies geht noch einen Schritt weiter. Docker ist ein Open Source-Projekt, das die Bereitstellung von Anwendungen in Software-Containern automatisiert: https://www.docker.io
11. Verwenden Sie Google Compute Engine für die automatische Bereitstellungsverwaltung
https://cloud.google.com/products/compute-engine/
Google bietet Linux-VMs mit sehr aufregenden Möglichkeiten. Mit Tools wie einer RESTful-API, einer Befehlszeilenschnittstelle und einer webbasierten Konsole können Sie schnell große Cluster virtueller Maschinen bereitstellen. Sie können auch Tools wie RightScale und Scalr verwenden, um Ihre Bereitstellung automatisch zu verwalten .