
~/.ssh/config
私のファイルには次のようなローカルフォワード定義のエントリがあります
HOST myServer
hostname 10.10.0.1
user xyz
LocalForward 8080 localhost:80
LocalForward 4000 127.0.0.1:4000
...
これはうまく機能しますが、一部のデータを同期するためのスクリプトもあります。
これらのスクリプトは、すでに接続されているときにサーバーに接続しようとすると、多くの警告を表示します。
bind: Address already in use
channel_setup_fwd_listener_tcpip: cannot listen to port: 8080
bind: Address already in use
channel_setup_fwd_listener_tcpip: cannot listen to port: 4000
....
ありますかきちんとしたセッションのすべてのローカル転送を無効にするオプションを 使用する方法はありますssh
か?rsync
もちろん、各構成ブロックをコピーして貼り付け、ローカル転送ありとローカル転送なしのブロックをそれぞれ構築することもできますが、もっと良い解決策があることを願っています。
答え1
には、まさに必要なことを実行するClearAllForwardings
オプションがあります。ssh_config
すべての転送をクリア
設定ファイルまたはコマンドラインで指定されたすべてのローカル、リモート、および動的ポート転送をクリアすることを指定します。このオプションは、主に ssh(1) コマンドラインから使用して設定ファイルに設定されたポート転送をクリアする場合に役立ち、scp(1) および sftp(1) によって自動的に設定されます。引数は yes または no (デフォルト) である必要があります。
コマンドライン オプションとして使用できます:
ssh -o ClearAllForwardings=yes host