クライアントからのmotdの印刷からStop ssh loginを読みましたか?しかし、私の状況は少し異なります:
- Banner / path / to / sometxt serversideを維持したい
- バナーが印刷されないように、特定の条件下でオプションを渡したいです(例:)
ssh -o "PrintBanner=No" someserver
。
何か案が?
クライアントからのmotdの印刷からStop ssh loginを読みましたか?しかし、私の状況は少し異なります:
ssh -o "PrintBanner=No" someserver
。何か案が?
回答:
LogLevel
オプションがあります:
バナーは表示されませんが、エラーを受け取ることができます:
$ ssh -o LogLevel=error localhost
Permission denied (publickey).
私はそれをテストし-q
ましたが、sshコマンドで使用できると思います。パラメーター-qはQuietモードを意味していました。ほとんどの警告および診断メッセージが抑制されます。たとえば
ssh -t '$node2' 'sudo cat xxx' |grep xxxxx" 2>/dev/null >/root/node2
または
ssh -t -q '$node2' 'sudo cat xxxx' |grep xxx" >/root/node2
これが他の人を助けることを願っています
ブロックBanner
内で(なしに)別の値を設定できるはずMatch
です。
例えば:
Match Address 192.0.2.0/24
Banner none
ただし、これは特定の条件に基づいてサーバー側で実行する必要があります。クライアント側からはできません。
-qを探しているようです:
静かなモード。ほとんどの警告および診断メッセージが抑制されます。
ssh user@host
*------------------------------------------------------------------------------*
| banner: blah |
*------------------------------------------------------------------------------*
Last login: Mon Oct 2 16:40:01 2017 from ipAddress
$
と -q
ssh -q user@host
Last login: Mon Oct 2 16:40:30 2017 from ipAddress
$
素敵で静か。バナーはまだ構成されていますが、ユーザーは気にしません。
別の注意:バナーを使用しないでください。何も確認または拒否しないことをお勧めします。それはあなたが心配していない人々とあなたを助けません、そしてあなたが心配している人々は彼らがそれを過ぎて働くので笑います;-)
私にとって、後者は重要なエラー情報を抑制するため、-o LogLevel=error
より優れていました-q
(これは終了コードを介してのみ取得できます)。
これを比較します(オプションなし):
[root@myserver804 myuser1]# ssh targetserver1; echo "exit code=$?"
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
SHA256:hvtR8Dl09aUeCeG2cT5EA8b+nbCOoV6h1DUON2vE63w.
Please contact your system administrator.
Add correct host key in /root/.ssh/known_hosts to get rid of this message.
Offending RSA key in /root/.ssh/known_hosts:1735
RSA host key for targetserver1 has changed and you have requested strict checking.
Host key verification failed.
exit code=255
これで(静かに)
[root@myserver804 myuser1]# ssh -q targetserver1; echo "exit code=$?"
exit code=255
これで(ログエラーのみ)
[root@myserver804 myuser1]# ssh -o LogLevel=error targetserver1; echo "exit code=$?"
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
SHA256:hvtR8Dl09aUeCeG2cT5EA8b+nbCOoV6h1DUON2vE63w.
Please contact your system administrator.
Add correct host key in /root/.ssh/known_hosts to get rid of this message.
Offending RSA key in /root/.ssh/known_hosts:1735
RSA host key for targetserver1 has changed and you have requested strict checking.
Host key verification failed.
exit code=255
したがって、結論は次のとおりです。関連するエラーにまだ興味がある場合は、 -o LogLevel=error
私にとっては-qがうまくいきましたが、ファイルに保存された出力で作業することができました。
ssh -q root @ server28 "ls -alF / dr_mksysb | egrep -v \" total | lost + found | ./ | ../ \ "| awk '{print \ $ NF}' | sed 's /.\$ // g '"> $ {basedir} /28.list
-q
パラメータです。残りは完全に無関係であり、あなただけに役立ちます。パラメータは、すでにそれはあなたを助けている場合ので、それをupvoteすること自由に感じ、答えとして与えられているが、この「答えは」のみdownvotesを受け取ることになります
-q
、-o LogLevel=error
うまく機能するための回答: