web-dev-qa-db-ja.com

SSH-1つのコマンドのみでログインしますか?

Raspberry Pi 3を手に入れ、それを完全に実行し、DebianをXFCEデスクトップで実行しています。 X11フォワーディングを使用できることは知っていました。

さて、私の質問、1つのコマンドでプログラムを起動することは可能ですか?メインOS(Ubuntu GNOME)のデスクトップエントリを作成して、クリックするだけで実行できるようにします。

このために.shファイルを作成する必要があります。

1つのコマンドだけでログインしてプログラムを起動する方法はありますか? GIMPを起動したいとしましょう。

通常、私はこれを行います:

ssh -XC -C -c arcfour,blowfish-cbc username@IP

次に、RPiのSSHクライアントを開いてパスワードを要求し、これを入力し、最後に「Gimp」と入力してメインデスクトップで起動するようにします。

このすべてを1つのコマンドだけで実行できる方法はありますか?デスクトップエントリを作成したいのですが、Piにログインするために毎回端末を開いてパスワードを要求したくありません。

3
OctaVIve

通常、私はこれを行います:

ssh -XC -C -c arcfour,blowfish-cbc username@IP

しないでください。 -Yを使用して、将来機能することを確認してください。 「不正な暗号」を選択しても、最近では-C圧縮にも役立ちません。

ssh -Y username@IP

ちょうど十分です。

すべてを書きたくない場合は、ssh_configがあり、次のようなエントリを保存できます。

Host pi
  Hostname <IP>
  User username
  ForwardX11 yes

ssh piと入力するだけで接続できます。

パスワード(プロンプト)を削除するには、公開キー認証(簡単に言えば)をセットアップするのが良い選択です。

ssh-keygen -t rsa
ssh-copy-id pi

最後に、次のように、piからsshでプログラムを直接起動できます。

ssh pi gimp

必要に応じて、デスクトップのショートカットとして簡単に使用できます。しかし、デスクトップ上のいくつかのアイコンを検索するよりも、それを入力する方が速いと思います:)

7
Jakuje

Piのデスクトップ全体が必要な場合は、xnestをインストールして使用できます。 XnestはXサーバーでもあるXクライアントであるため、現在のデスクトップのサブウィンドウとして実行される2番目のXサーバーを提供します。

を使用してvmにsshでパスワードなしのキーを設定し、Jakujeで説明されているショートカットを使用して.ssh/configファイルを作成しました。

user@Host:~/ $ Xnest :1 &
user@Host:~/ $ DISPLAY=:1 ssh myvm mate-session

これにより、マシン上で:1(通常の表示は:0)にあるXnest「サーバー」が起動され、そのプロセスがバックグラウンドに送信されます。次に、そのシェルのDISPLAY変数をXnestディスプレイを指すように設定し、.ssh/configからの情報を使用してvmにsshし、フルMATEデスクトップセッションを開始します。 mate-sessionと任意のコマンドを使用すると、リモートマシンでデスクトップセッションが開始されます。

0
ivanivan