Openssh

トップ > チップス > Openssh
2012-02-13, openssh linux

未分類チップ

リモートホストに公開鍵を登録する

デフォルトのポート番号が利用できる場合、以下の手順で公開鍵の送信を行うことができます。

# ssh-keygen -t rsa
(パスフェーズ等を入力)
# ssh-copy-id -i ~/.ssh/id_rsa.pub user@hostname
(パスワードを入力)

ポート転送を行う

ssh接続経由でリモートホストの任意のポートを転送することができます。

$ ssh -L [bind_address:]port:host:hostport

例えば、リモートホストの8082ポートに接続する場合、以下のように指定します。sshでリモートにログインしている間、ローカルホストの18082ポートを経由して、リモートホストに接続することができます。

$ ssh -L 18082:localhost:8082 user@remote

ローカルホストの18080ポートにアクセスすると、リモートホストの8080ポートに接続します。リモートホストの特定ポートがフィルタリングされている場合に便利です。

$ ssh -L 18080:remote:8080 user@remote

リモートホストの10022ポートにアクセスすると、ローカルホストの22ポートに接続します。ローカルホストがファイアウォール内にあり、一時的(局所的)に外部からの接続を受け入れたい場合に便利です。10022ポートは規定ではループバックアドレスに対してのみ開かれます。他のホストからのアクセスを許可したい場合、リモート側のsshd_configに「GatewayPorts yes」の設定が必要です。

$ ssh -R 10022:localhost:22 user@remote

さらに以下のオプションを組み合わせて利用すると、セッションの圧縮(-C)、リモートシェル起動の抑止(-N)、バックグラウンド実行(-f)が可能になり、ポート転送の機能のみを利用しやすくなるようです。

$ ssh -C -N -f

※これらの機能を利用してオープンされたポートは、ローカルからのみ接続可能です。他のホストからの接続も許可する場合は「-g」オプションを付けて下さい。

参照URL

この記事は役に立ちましたか?