LoginSignup
3
1

More than 3 years have passed since last update.

sshrcにコマンドを入れたら `Received message too long 1869283328` で怒られた

Last updated at Posted at 2019-05-16

SSHで接続されたときにSlackへ通知するスクリプトを sshrc に仕込んだら、SFTPで以下のメッセージで怒られて接続に失敗しました。

Received message too long 1869283328
Ensure the remote shell produces no output for non-interactive sessions.

修正前

コマンドの実行結果を標準出力していました。

/etc/ssh/sshrc
curl -X POST --data-urlencode 'payload={"channel": "'"$SLACK_CHANNEL"'", "username": "'"$SLACK_USERNAME"'", "text": "'"${SLACK_MESSAGE}"'", "icon_emoji": "'":${SLACK_ICON_EMOJI}:"'"}' ${SLACK_WEBHOOK_URL}

修正後

コマンドの実行結果を /dev/null へ強引にリダイレクトさせました。具体的には、コマンドの末尾に &> /dev/null を追加しただけです。

/etc/ssh/sshrc
curl -X POST --data-urlencode 'payload={"channel": "'"$SLACK_CHANNEL"'", "username": "'"$SLACK_USERNAME"'", "text": "'"${SLACK_MESSAGE}"'", "icon_emoji": "'":${SLACK_ICON_EMOJI}:"'"}' ${SLACK_WEBHOOK_URL} &> /dev/null

参考記事:

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1