Linux ssh コマンド

Linux 命令大全Linux コマンド大全

sshこのコマンドは、SSH プロトコルを介してリモートホストに接続し、リモートログインとコマンド実行を実現します。セッション内のすべての通信を暗号化し、データ転送の安全性を確保します。

SSH(Secure Shell)は、リモートログインやその他のネットワークサービス間で使用される暗号化プロトコルです。SSH は安全な通信チャネルを提供し、データの機密性と完全性を保護します。

構文

ssh [options] [user@]hostname [command]

パラメータの説明

  • [user@]hostname:接続するリモートホストのユーザー名とホスト名。
  • [command]:リモートホスト上で実行するオプションのコマンド。

よく使われるオプション

  • -l user:ログインするユーザーを指定します。
  • -p port:リモートホストに接続するポート番号を指定します。デフォルトは22です。
  • -i identity_file:認証ファイル(秘密鍵ファイル)を指定します。
  • -v:詳細モード。デバッグ情報を表示できます。
  • -C:圧縮を有効にします。
  • -N:リモートコマンドを実行せず、ポート転送のみを行います。
  • -f:バックグラウンドで実行します。
  • -L local_port:remote_host:remote_port:ローカルポート転送。
  • -R remote_port:local_host:local_port:リモートポート転送。
  • -D [bind_address:]port:動的アプリケーションレベルポート転送。

例

基本的な使い方

リモートホストに接続する:

ssh user@hostname

例:

ssh [email protected]

ポートを指定して接続:

ssh -p 2222 user@hostname

例:

ssh -p 2222 [email protected]

認証ファイルを使用する:

ssh -i /path/to/private_key user@hostname
例:
ssh -i ~/.ssh/id_rsa [email protected]

リモートホスト上でコマンドを実行する:

ssh user@hostname command

例:

ssh [email protected] ls -la

詳細モード:

ssh -v user@hostname

例:

ssh -v [email protected]

圧縮を有効にする:

ssh -C user@hostname

例:

ssh -C [email protected]

バックグラウンドで実行し、コマンドを実行しない:

ssh -f -N user@hostname

例:

ssh -f -N [email protected]

ポート転送

ローカルポート転送:

ssh -L local_port:remote_host:remote_port user@hostname

例:

ssh -L 8080:localhost:80 [email protected]

リモートポート転送:

ssh -R remote_port:local_host:local_port user@hostname

例:

ssh -R 8080:localhost:80 [email protected]

動的ポート転送:

ssh -D [bind_address:]port user@hostname

例:

ssh -D 1080 [email protected]

高度な使い方

設定ファイル

SSH クライアント設定ファイルは ~/.ssh/config にあり、そこによく使う設定を記述できます。

例:

Host example
    HostName example.com
    User john
    Port 2222
    IdentityFile ~/.ssh/id_rsa

使用する場合は次のようにするだけです:

ssh example

SSH エージェント転送

エージェント転送を有効にする:

ssh -A user@hostname

例:

ssh -A [email protected]

X11 転送

X11 転送を有効にする:

ssh -X user@hostname

例:

ssh -X [email protected]

Linux 命令大全Linux コマンド大全

その他の拡張