linux使用者登入檢測傳送郵件提醒

2021-09-21 03:46:19 字數 1883 閱讀 2507

只要使用者一登入成功,系統就會向系統管理發乙份郵件進行提醒。由於沒有找到,最後利用了在/etc/profile.d/目錄的檔案屬性:只要使用者登入,就會執行此目錄下的所有shell指令碼來初始化變數和使用者環境。

所以決定在這裡做為突破口,寫乙個指令碼,關於當前使用者登入時,就自動記錄當前使用者資訊,以及當前系統登入的使用者數,並自動發郵件,簡而言之,就是在/etc/profile.d/目錄裡加上乙個指令碼,我命名為logincheck.sh,下面就是內容:

12

3

4

5

6

7

#!/bin/bash

user=`whoami`

logon="$(who)"

#msg=`echo -e "#################### $user is login ok ##################\n$logon"`

#wall "$"

#echo  $ | mail -s " login $(hostname) alter " [email protected]

`echo-e"#################### $user is login at $(date) ##################\n\n\n$logon"| mail -s"someone want login your service: login on $(hostname) alter"[email protected]  2>/dev/null`

如果想在使用者退出的時候也傳送郵件提醒就用vi ~/.bash_logout 來在這個檔案裡新增下面的指令碼內容就行:

12

3

4

5

6

7

8

# ~/.bash_logout

#!/bin/bash

user=`whoami`

logon="$(who)"

#msg=`echo -e "#################### $user is login ok ##################\n$logon"`

#wall "$"

#echo  $ | mail -s " login $(hostname) alter " [email protected]

`echo-e"#################### $user is login at $(date) ##################\n\n\n$logon"| mail -s"someone want loginout your service: login on $(hostname) alter"[email protected]  2>/dev/null

linux使用者登入檢測傳送郵件提醒

只用使用者一登入成功,系統就會向系統管理發乙份郵件進行提醒。由於沒有找到,最後利用了在 etc profile.d 目錄的檔案屬性 只要使用者登入,就會執行此目錄下的所有shell指令碼來初始化變數和使用者環境。所以決定在這裡做為突破口,寫乙個指令碼,關於當前使用者登入時,就自動記錄當前使用者資訊,...

Linux傳送郵件

linux傳送郵件命令 mail 如果沒有mail命令 yum y install postfix 如果只是傳送郵件不接收郵件的時候postfix不用開啟 例1 echo 正文內容 mail s 郵件標題 xx xx.com 例2 mail s 郵件標題 xx xx.com etc hosts 把h...

使用Linux傳送郵件

系統收到郵件都會儲存在 var spool mail linux 使用者名稱 檔案中。在 linux 中輸入mail 就進行了收件箱,並顯示二十封郵件列表。此時命令提示符為 unread 標記為未讀郵件 h headers 顯示當前的郵件列表 l list 顯示當前支援的命令列表 help 顯示多個...