1

私は遊んでいる小さなRaspberry Piを持っています。ヘッドレスで実行しており、特定の条件が満たされたときにポートの 1 つをリモート サーバーに転送する必要があります。

ただし、サーバーが接続を閉じるまで、接続を無期限に維持したくありません。 一定時間後にSSH 接続(クライアントから、サーバーへのルートがない)を閉じる方法はありますか? 理想的には ssh コマンドを介して直接行うのですが、Python 3 で書いているので、Python でこれを行う方法があれば、私はすべて耳にします。

4

3 に答える 3

2

/etc/ssh/sshd_config で:

ClientAliveInterval <time interval in seconds>
ClientAliveCountMax 0

したがって、最初のディレクティブで 300 を使用すると、5 分間のアイドル後に接続が開始されます。有効にするには、sshd を再起動する必要があります。

于 2013-01-28T04:38:36.673 に答える
0

「-N」オプションを指定して実行sshしない限り、通常、リモート システム (この場合は Pi) である種のコマンドまたはシェルが起動されます。このリモート コマンドが終了すると、Ssh が切断されます。

ポート転送を作成するためだけに ssh を実行している場合は、「-N」を指定して実行しているか、ssh セッションをコマンド プロンプトに置いている可能性があります。代わりに、必要な時間後に終了するコマンドを Pi で起動することができます。sleepたとえば、次のコマンドを使用できます。

ssh -Lwhatever -Rwhatever user@pi "sleep 3600"
于 2015-02-27T19:06:57.310 に答える