SSHログインなしのシステム稼働時間

SSHログインなしのシステム稼働時間

私は多くのLinuxサーバーを持っています稼働時間を確認したいただし、それぞれログインする必要があります。 Linuxサーバーの稼働時間を確認できますか?SSHログインは不要それに?

PS。私のディストリビューションはRHEL 7/8とOL 8です。

答え1

サーバーが1つまたは複数のネットワークセグメントにある信頼できる安全なネットワークにある場合は、以前のrwhodサービスとそのクライアント(rwhoおよび.net ruptime)をインストールすることも資格がある可能性があります。 Debian では、2 つのパッケージ (rwhodと ) をインストールしてこれらのサービスをパッケージ化してインストールすることができるので、rwhoディストリビューションで提供して要件を満たしている場合は、最も簡単なソリューションになります。

RHEL 7(および関連ディストリビューション)は、サービスとクライアントを単一のrwhoパッケージにパッケージ化します。 RHEL 8以降では、このパッケージは含まれていないようです。

rwhod毎分ブロードキャストパケットを送信し、ログインしたユーザーと現在の稼働時間を一覧表示し、他の同様のブロードキャストを受信します。コマンドは、rwho過去11分間にブロードキャストしたすべてのホストruptimeから収集したレポートを取得して出力します。最後に受信したレポートに基づいて、各ブロードキャストホストにログインしたユーザーを一覧表示します。各レポートホストの稼働時間を一覧表示します。rwhodrwhoruptime

答え2

次のように「xinetd」サービスを作成します。

# cat /etc/xinetd.d/uptime
service uptime
{
    port        = 10200
        disable         = no
        socket_type     = stream
        protocol        = tcp
        log_on_success += USERID 
        log_on_failure += USERID
        server          = /usr/bin/uptime
        user            = root
        instances       = UNLIMITED
        wait            = no
        log_type        = SYSLOG daemon debug
}

# service xinetd restart

# netstat -ant | grep 10200
tcp6       0      0 :::10200                :::*                    LISTEN  

# telnet localhost 10200
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
 08:59:39 up 23 days, 16:36,  1 user,  load average: 0.00, 0.01, 0.05

答え3

サーバーが多く、稼働時間だけに興味がないと仮定する場合正しいこのツールは各デバイスにSNMPをロードし、snmptrap応答用の監視ステーションを設定します。これはメインプレイヤーが使用します。表示された方法のどれもブート損失を表示しませんが、SNMPは表示します。

答え4

パーティーに遅れていますが(稼働時間が大規模なサーバーファームの状態に関する唯一の関心事ではないと仮定)、作業に適したツールを使用することをお勧めします。

使用を検討してくださいプロメテウス、稼働時間などの指標を含め、5分ごとにデバイスからさまざまな指標を取得します。

素晴らしい。マシンの稼働時間node_time() - node_boot_time()(つまり、秒単位の稼働時間、さまざまな時間単位で自由に計算可能)を照会するには、これが本質的にあなたが必要とするものです。

関連情報