10の一般的な便利なSSHコマンド
Secure Shell (SSH) は、システム管理者、開発者、リモートサーバーを管理するすべての人にとって不可欠なツールです。SSH リモートアクセスを使用すると、リモートマシンに安全に接続し、コマンドを実行し、ファイルを転送し、管理タスクを実行できます。この記事では、今日使用すべき10の一般的なSSHコマンドを探ります。
1. リモートサーバーへの接続
最も基本的なSSHコマンドは、リモートサーバーに接続するために使用されます:
ssh user@remote_host
userをあなたのユーザー名に、
remote_hostをサーバーのIPアドレスまたはドメイン名に置き換えます。
2. 特定のポートでの接続
デフォルトでは、SSHはポート22を使用しますが、必要に応じて異なるポートを指定できます:
ssh -p 2222 user@remote_host
これは、SSHサーバーが非標準ポートで実行されるように構成されている場合に便利です。
3. 認証のためのSSHキーの使用
パスワードの代わりに、SSHキーで認証できます:
ssh -i /path/to/private_key user@remote_host
SSHキーを生成するには:
ssh-keygen -t rsa -b 4096
これによりセキュリティが向上し、毎回パスワードを入力する必要がなくなります。
4. リモートサーバーでのコマンド実行
インタラクティブセッションを開かずに、リモートサーバーで単一のコマンドを実行できます:
ssh user@remote_host "ls -l /var/www/html"
これは迅速な管理タスクに便利です。
5. SCPを使用したファイルのコピー
Secure Copy Protocol (SCP)を使用すると、ローカルとリモートのマシン間でファイルを転送できます:
scp file.txt user@remote_host:/remote/directory/
ディレクトリを再帰的にコピーするには:
scp -r /local/directory user@remote_host:/remote/directory/
6. rsyncを使用したファイルのコピー
SCPの代替として、
rsyncがあり、ファイルの同期により効率的です:
rsync -avz /local/directory user@remote_host:/remote/directory
これは、ファイル間の差分のみを送信することでデータ転送を最小限に抑えます。
7. SSHトンネリングの設定
SSHトンネリングを使用すると、ネットワークトラフィックを安全に転送できます。ローカルトンネルを作成するには:
ssh -L 8080:localhost:80 user@remote_host
これにより、ローカルポート8080からリモートサーバーのポート80にトラフィックが転送されます。
8. リバースSSHトンネリング
リバーストンネリングを使用すると、リモートサーバーがローカルマシンにアクセスできます:
ssh -R 9090:localhost:22 user@remote_host
これは、ファイアウォールの背後にあるシステムにアクセスする際に便利です。
9. SSH接続のマルチプレクシング
同じサーバーに頻繁に接続する場合、マルチプレクシングを有効にすることでSSHを高速化できます:
ssh -o ControlMaster=yes -o ControlPath=~/.ssh/socket user@remote_host
これにより、複数のSSHセッションの認証オーバーヘッドが削減されます。
10. SSHセッションの終了
SSHセッションを閉じるには、単に次のように入力します:
exit
または、エスケープシーケンスを使用します:
~.
これは、接続が応答しなくなったときに役立ちます。


