linux 程序返回值 139,Linux系统监控之ssh登陆自动139邮件短信提醒
linux系统监控之ssh登陆自动139邮件短信提醒
Linux系统监控非常重要,互联网的网络的安全是一个非常重要的问题,很多时候,我们会出于安全考虑,希望服务器在有用户通过ssh登陆时能自动向管理员发送一条邮件,通知登陆用户名和IP。这是一种不错的安全防范机制,它可以让管理员及时发现异常登陆,并在造成更大危害前(比如获得更高权限)阻止恶意访问。
这里要说明的是,包子使用139邮箱,因为,大家知道这个139邮箱邮件是有移动的短信提醒的。这里有个缺点就是频繁登录的话不断发送短信,这个可以做个一个IP列表即可。
这个脚本对于ssh安全监控非常有用,系统非法登陆都可以时时了解情况,及时保护服务器安全
邮件发送我们使用:sendemail-v1.56 详细可以看:http://www.jincon.com/archives/66/
tar xvf sendEmail-v1.56.tar.gz
mv sendEmail-v1.56 sendEmail
vi /etc/ssh/sshrc
#!/bin/sh
user=$USER
ip=${SSH_CLIENT%% *}
if [ "$user" != "root" ] || [ "$ip" != "192.168.2.88" ]
then
/home/shell/sendEmail/sendEmail -f XXX@XXX -t XXX@XXX -s smtp.XXX -u
"查看谁登陆###192.168.2.4###" -xu USER -xp PASSWD -m "###time:`date
+%Y-%m-%d`###.###user:$USER@`hostname`###.###ClientIP:${SSH_CLIENT%% *}###"
fi
chmod +x /etc/ssh/sshrc
###############简单讲解####################
$USER获取到系统登陆通过ssh的用户名
${SSH_CLIENT%% *}取到系统登陆通过ssh的用户名的IP
if [ "$user" != "root" ] || [ "$ip" != "192.168.2.88" ]使用或来判断来源,是否发邮件报警
###########################################
测试:
1 使用root并且IP为非192.168.2.88,看是否发邮件报警
附上本人的shell生产环境的shell脚本,本人的是更精简,而且是发送139邮箱的。
#!/bin/sh
user=$USER
ip=${SSH_CLIENT%% *}
#if [ "$user" != "root" ] || [ "$ip" != "192.168.91.123" ]
if [ "$ip" != "某个IP" ]
then
/usr/local/bin/sendEmail -f QQ号@qq.com -t 手机号@139.com -s smtp.qq.com -u '有人
登陆服务器' -xu QQ号 -xp QQ密码 -m "${SSH_CLIENT%% *} , `date +%m-%d` , $USER@`hostname`"
fi
linux 程序返回值 139,Linux系统监控之ssh登陆自动139邮件短信提醒相关推荐
- linux recv 返回值与linux socket 错误分析
转载:http://blog.csdn.net/henry115/article/details/7054603 recv函数 int recv( SOCKET s, char FAR *buf, i ...
- 易语言取linux命令返回值,易语言取程序返回值写法
公告: 为响应国家净网行动,部分内容已经删除,感谢读者理解. 话题:易语言取程序返回值写法回答:在易语言中,程序包括"处理程序"都有六部分组成.一.程序名,就是程序的名称,程序名不 ...
- Linux 命令返回值
在Linux中不管是启动桌面程序还是在控制台执行命令都会有一个返回值,可以叫做错误号(perror),在linux中执行命令后可通过命令:echo $?来查看上一条命令的返回值.要查看返回值的具体含义 ...
- linux recv返回值,recv recvfrom
recv和recvfrom都是用来接受来自的网络的数据.来看看它们的原型: int recv( SOCKET, char FAR*, int, int ); int recvfrom( SOCKET, ...
- PHP允许输入负数,php exec在linux中返回值不能为负数
php exec在linux中返回值不能为负数有需要的朋友可参考一下. 我们先来了解一下关于exec函数的使用方法 exec() 原型: 代码如下 复制代码 string exec (string ...
- linux程序返回码的含义
[原文链接]linux程序返回码的含义 文章目录 一.错误码 0-10 的含义 二.错误码 11-20 的含义 三.错误码 21-30 的含义 四.错误码 31-40 的含义 五.错误码 41-50 ...
- 与 python 中的 os.system(cmd) 返回值与linux 命令返回值对应关系
一.python中的 os.system(cmd)的返回值与linux命令返回值(具体参见本文附加内容)的关系 大家都习惯用os.systemv()函数执行linux命令,该函数的返回值十进制数(分别 ...
- 如何获取程序返回值,退出码,错误码
在c/C++语言程序设计中,我们可能经常性的需要进行错误处理,异常处理等问题. 关于异常部分,主要就是C++异常了. 今天我们主要谈论c语言方面的一些问题:如何获取程序返回值,退出码,错误码. 1如何 ...
- Stackoverflow热门问题(二十二)-如何在Windows cmd中得到程序返回值?
文章首发及后续更新:https://mwhls.top/2873.html 新的更新内容请到mwhls.top查看. 无图/无目录/格式错误/更多相关请到上方的文章首发页面查看. stackoverf ...
最新文章
- 加密解密_使用RSA密钥对加密解密数据
- 2018年人工智能13大预测
- 全国大学生智能车竞赛(创意组)陕西理工大学校级选拔赛顺利举行
- HPU暑期第五次积分赛 F - 辞树的质因数分解
- 小明分享|嵌入式LINUX开发日志-错误汇总①
- 【汇编语言(第3版)王爽】第八章学习内容
- MapReduce-计数器
- Live Source Address 2019最新的电视广播包_澧县召开非法卫星电视广播地面接收设施专项整治工作会议...
- 2018年上半年读者最喜爱的异步新书TOP50
- SpringMVC -- 梗概--源码--贰--RestFul收参(了解) @PathVariable
- Access to the path ‘‘ is denied.解决方案
- 使用Redis存取数据+数据库存取(spring+java)
- zmap扫描mysql_45分钟扫遍全网:最快的互联网扫描工具ZMap
- OD教程(去除NAG窗口--PE文件结构)
- The coordinates or measures are out of bounds.
- Python常用小技巧(三)——批量修改图片尺寸
- WebView加载String字符串
- iOS逆向 - iOS13 iOS14 模拟点击 模拟触摸 按键模拟 新触动精灵 开源免费
- 高中计算机专业教师 教学计划,信息技术教师教学计划
- matplotlib sci论文画图技巧