SSHサーバー経由でログイン後にシリアルクライアントを起動する

SSHサーバー経由でログイン後にシリアルクライアントを起動する

シリアルポートにSSHを接続する方法が必要です。シェルを使用してシリアルポートに接続されたデバイスがあります。デフォルトでは、SSHクライアントをシリアルポートに直接接続したいと思います。デフォルトでは、SSHを介してシリアルコンソールに接続します。

SSHクライアント - > SSHサーバー - >シリアルポート接続デバイス。

どうすればいいですか? SSHをシリアルポートに接続します。クライアントはどのコマンドも実行しないでください。シリアルコンソールに直接配置する必要があります。

ベストアンサー1

コマンドライン引数なしでSSHサーバーのターミナルセッションをシリアルポートに接続する小さなスクリプトを作成します。たとえば、cu次のコマンドを使用できます。

#!/bin/sh
exec cu -l /dev/ttyS0 -s 115200  # add/modify options if needed

たとえば、保存し/usr/local/bin/serial-connectionて実行ファイルとしてマークしますchmod a+x /usr/local/bin/serial-connection

/usr/local/bin/serial-connectionファイルにパス名を追加します/etc/shells

シリアル接続用のLinuxユーザーを作成します。必要に応じて名前を付けることができますserial。たとえば、パスワードを設定し、ユーザーが正常にログインできることを確認します。

最後に、serialユーザーシェルを次のように変更します/usr/local/bin/serial-connection

chsh -s /usr/local/bin/serial-connection serial

ユーザーがログインすると、ユーザーserialのシェルは自動的に開始されますが、実際にはSSHセッションをシリアルポートに接続するコマンドです。何らかの理由でコマンドが終了すると、SSHセッションは自動的に終了します。

接続を終了するには、ユーザーがPuTTYまたは同様のツールを使用している場合はチルダ(チルダ - ドット)を入力し、serialOpenSSHクライアントを使用している場合はチルダ - チルダを入力する必要があります。誤ってOpenSSHクライアントはこの文字をエスケープ文字として使用しています。行の先頭にこの文字を2回入力すると、チルダ文字が表示されます。~.~~.cu~cu

おすすめ記事