脚本语言目前发展很快,python流行度也越来越大,对我而言,脚本语言主要作为系统的粘合剂,一般不做主体业务逻辑的开发,但作为系统管理,整合程序还是不错的。所以,今天开始学习python,有点懒,因为有个小需求:linux下SSH远程登录后,发送短信通知管理员。原来一般使用shell直接完成,今天学习python,就作为第一个hello world试试。花了尽2个小时,完全根据程序逻辑需求通过google查语法(怎么定义程序,if,字符串处理等,哈哈),终于完成。记录下咱的first python程序哈。
#!/usr/bin/python import time import base64 import urllib import httplib import os import sys mobileNos=138xxxxxxxx def sendSms(mobileNo,content): url = "/api/......" queryString=urllib.urlencode({"mobileNo": mobileNo, "content": content, "username":"aaaaa", "password":"xxxxxx"}) conn = httplib.HTTPConnection("192.168.xxx,xxx") conn.request("GET",url+"?"+queryString) response = conn.getresponse() conn.close() def logger(log): f=open('lm.log','a+') print >> f, log f.close() def loginNotify(): client = os.getenv("SSH_CLIENT") if client is None: return clientInfo = client.split(' ') ip = clientInfo[0] now = time.strftime('%Y-%m-%d %H:%M:%S') user = os.getenv("USER") hostname = os.getenv("HOSTNAME") log = now + " - " + user + " login " + hostname + " from " + ip logger(log) sendSms(mobileNos,log) if __name__ == "__main__": loginNotify()
相关推荐
core networking library with various small tasks and enables you to create your first clientserver application. Chapter 2, Multiplexing Socket I/O for Better Performance, discusses various useful ...
* `ssh`:远程登录服务器 * `man`:显示手册页 2. find 和 grep 的区别: `find` 命令用于搜索文件,而 `grep` 命令用于搜索文件内容。 3. 阻塞和非阻塞: 阻塞(Blocking)是指一个线程或进程等待某个事件或...
- **远程Shell访问**: 使用`ssh-copy-id <remote-compute>`将公钥复制到远程机器,以便无密码SSH登录。 以上知识点涵盖了从硬件准备、系统安装、常用命令使用、环境配置到软件包管理等方面的内容,是Linux初学者和...
《SecureCRT 9.0:实现高效串口调试与DCN Linux管理的得力助手》 SecureCRT是一款强大的远程终端仿真程序,专为系统管理员、网络工程师和开发人员设计,提供安全的SSH、Telnet、Serial等协议的连接。在最新的9.0...
Getting the First Few Smallest Items of a Sequence Recipe 5.9. Looking for Items in a Sorted Sequence Recipe 5.10. Selecting the nth Smallest Element of a Sequence Recipe 5.11. Showing off ...
Once uploaded you will need to either use the ESXi support console or use SSH to run the commands. Use the unzip command to extract the files. <<< WARNING: use a datastore volume to run the scripts >...
1. **环境设置**:首先,确保你的开发机器上安装了必要的依赖,包括Git、Python、GCC编译器等。然后,克隆Yocto项目的源代码仓库,并根据飞思卡尔IMX6的硬件配置选择合适的Yocto版本。 2. **配置Yocto**:创建并...
SSH (Secure Shell) 提供了安全的远程登录功能。通过SSH密钥对实现登录,可以避免每次登录都需要输入密码,提高安全性。配置SSH密钥登录包括生成公钥和私钥,将公钥复制到远程服务器的授权文件中,然后就可以无密码...
【SSH秘钥登录】 SSH (Secure Shell) 是一种网络协议,用于安全地远程登录服务器。通过设置秘钥对登录,可以免去每次输入密码的麻烦,提高工作效率并增强安全性。 【OSPF链路状态路由协议】 OSPF (Open Shortest ...
8. **SSH秘钥登录**:SSH(Secure Shell)是远程登录的安全协议,秘钥登录通过公钥和私钥对进行身份验证,比传统的密码登录更安全。 9. **OSPF链路状态路由协议**:OSPF(Open Shortest Path First)是一种内部网关...
8. **SSH密钥登录**:SSH(Secure Shell)提供安全的远程登录。实现密钥登录可以避免每次连接时输入密码,提高安全性。配置包括生成公钥和私钥,将公钥添加到远程主机的`~/.ssh/authorized_keys`文件。 9. **OSPF...
Chapter 5 First Steps with Ubuntu Chapter 6 The X Window System Chapter 7 Managing Software Chapter 8 On the Internet: Surfing the Web, Writing Email, and Reading the News Chapter 9 Productivity ...
To use this python script , you must install the tshark first. You can use `sudo apt-get install tshark` to install it Author : WangYihang If you have any questions , please contact me by email....
Part I: Installation and Configuration Chapter 1 Introducing ...Chapter 26 LDAP Part IV: Programming Linux Chapter 27 Using Perl Chapter 28 Working with Python Chapter 29 Writing ...