GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Server bei Inaktivität automatisch herunterfahren (SSH)?

Seit Januar 2013 bietet Amazon CloudWatch eine Option zum Verwenden von Amazon CloudWatch zum Erkennen und Herunterfahren nicht verwendeter Amazon EC2-Instances. Weitere Informationen zu dieser Funktion finden Sie im einführenden Blogbeitrag Amazon CloudWatch – Alarmaktionen:

Heute geben wir Ihnen die Möglichkeit, aufzuhören oder beenden Sie Ihre EC2-Instanzen, wenn ein CloudWatch-Alarm ausgelöst wird . Sie können dies als Ausfallsicherheit (Erkennen einer anormalen Bedingung und dann Handeln) oder als Teil der Verarbeitungslogik Ihrer Anwendung (Warten auf eine erwartete Bedingung und dann Handeln) verwenden. [Hervorhebung von mir]

Ihr Anwendungsfall ist im Abschnitt Failsafe Ideas aufgeführt speziell:

Wenn Sie (oder Ihre Entwickler) vergesslich sind, können Sie ungenutzte EC2-Instances erkennen und herunterfahren. Sie können dies tun, indem Sie über einen längeren Zeitraum einen sehr niedrigen Lastdurchschnitt erkennen. Diese Art von Failsafe könnte verwendet werden, um Ihre AWS-Rechnung zu reduzieren, indem sichergestellt wird, dass Sie nicht für Ressourcen bezahlen, die Sie nicht tatsächlich verwenden.

Wie skizziert, hängt dies davon ab, dass Sie in der Lage sind, die entsprechende Bedingung heuristisch zu erkennen, die den Alarm auslöst und die Instanz stoppt – Sie können es auf die nächste Ebene bringen, indem Sie benutzerdefinierte Metriken in CloudWatch veröffentlichen, basierend auf der Anzahl der angemeldeten SSH-Benutzer, der Leerlaufzeit oder andernfalls und gewinnen Sie wiederum mehr Kontrolle/Präzision für den gewünschten Erkennungs- und Abschaltprozess.


Sie könnten direkt auf der Instanz selbst ein Cron-Job-Skript erstellen, das einen Befehl wie

verwendet
netstat | grep ssh | grep ESTABLISHED

und wenn kein Ergebnis zurückgegeben wird, schreiben Sie das in die Datei, dann versucht es der Cron erneut, und wenn es erneut keine Ergebnisse zurückgibt, führt das Skript dies aus.

/sbin/shutdown -h now

Wenn alles, wonach Sie suchen, darin besteht, den Server am Laufen zu halten, während Sie angemeldet sind, und Ihre Sitzung für weniger als n im Leerlauf zu halten Zeiteinheiten können Sie dies über ein Cron-Skript tun, das Sie erwähnt haben, indem Sie die Ausgabe von w(1) überwachen was IDLE meldet Zeit für eingeloggte Benutzer, die Sie nutzen können.


Linux
  1. sshd sperren

  2. Ssh – Eine laufende Anwendung auf einen anderen X-Server verschieben??

  3. Ssh, Sudo, dann herunterladen?

  4. Wie kann man mit einem anderen Server per SSH auf einen Server zugreifen?

  5. SSH-Probleme beheben

SSH-Tunneling und Proxying

SSH-Server

So fügen Sie dem Server einen öffentlichen SSH-Schlüssel hinzu

12 Dinge, die nach der Installation eines Linux-Servers zu tun sind

So führen Sie SSH zum Server über Linux

So sperren Sie Ihren CentOS-Server mit IPTables