SSH

  (最終更新日:2017.08.9)

SSHでログインしたらSlackに通知する方法

SSHでサーバにログインしたら、Slackの特定チャンネルに通知する仕組みを作りたいなぁ と思ったのでそのメモを。

まずはWebhookを利用してSlackに投稿するスクリプトを作成します。

# vim /var/local/Script/sshlogin.sh

スクリプトのサンプルは下記。

#!/bin/sh

#  USER : $1
#  CLIENT : $2
#  HOSTNAME : $3"

IP=`echo $2 | cut -d ' ' -f 1`
MESSAGE="$IP が $3 の $1 にログインしたようですわ。。。"

curl -X POST --data-urlencode 'payload={"channel": "#loginhistory", "username": "mita", "text": "'"${MESSAGE}"'"}' https://hooks.slack.com/services/xxxxxxxxxxxxx > /dev/null 2>&1

#echo "お知らせ:このログインは記録・通知されています。"

続いて、SSHでログインしたら自動的に先程作成したシェルをキックするようにします。
ただしSCPなどでの接続時は記録するのが面倒なので、bashrcに記載すれば楽でした。

# vim /etc/bashrc 

下記を記載。

if [ $PS1 ]; then
  /var/local/Script/sshlogin.sh "$USER" "$SSH_CLIENT" "$HOSTNAME"
fi

これで完了です。

  • コメント: 0
スポンサーリンク
スポンサーリンク

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

最近の記事

  1. PHP PhantomJSでFatal error: Unc…
  2. 【Oracle】DataPumpの対話式コマンドモードを抜け…
  3. CentOS7のPHP5.6にPhpSpreadsheetを…
  4. Azure仮想マシン(CentOS 7)のStandardデ…
  5. 【CentOS 7】特定ユーザーのクォータ設定を削除(無制限…
PAGE TOP