|
- CheungSSH是一款中国人自主研发的Linux运维自动化管理服务器软件,是具有中国特设社会主义的IT自动化运维管理软件
- 国产软件,更知道中国人的习惯,全程采用全中文,并且提供技术支持
- 国产,或将在以后进入国家扶持的互联网产品序列
- 以堡垒机形式,替代人工管理服务器
- 无Agent代理客户端,采用Linux自带的SSH协议通信
- 不需对被管理服务器做任何配置,甚至是简单的SSH配置都不要,只需要开启SSH服务即可,通过您的远程服务器密码或者Pubkey管理登录
- 采用Mysql Oracel数据库存储服务器敏信息
- 采用Redis缓存数据,解决了以往各种自动化工具解析过程慢的问题
- Web UI 图形界面更人性化,符合中国人的操作习惯
- 不需要学习CheungSSH如何使用,只要会点击鼠标即可,因为语法不面向使用者
- 权限控制,记录每一个操作动作,可供运维安全审查
在这里,我希望CheungSSH有朝一日能成为中国IT界运维自动化的首选目标,通过与各位IT界人士的努力,一道践行社会主义核心价值观,并实践我们的中国梦
CheungSSH针对的问题- 前端:Angulars javascript jQuery ngfileupload scrollbar uigrid typeahead cors Bootstrap
后端 Django Redis Mysql Oracle SSH paramiko websocket crontab SFTP Cache
- 简单,不需要特定的语法,不需要学习,即使不懂得Linux的人也能操作
- 功能完备,命令执行、文件传输、批量部署程序、服务器资产信息收集、计划任务、开放的API等主要功能
- 开源,使用免费
- 不掺杂Linux之外的概念,让懂得Linux的人使用起来更得心应手
- 无需安装任何插件
- Python开发,开源代码
- 通过SSH管理服务器,通信安全,无需开启额外的端口和启动额外的程序
- 安全存储数据,采用Mysql Oracle数据库
- 通过SSH管理登陆,无需额外创建任何管理账号,只需要业务账号即可,即平时登陆服务器的账户。做到无痕操作,不给服务器增加额外负担
- 运行速度快,采用缓存技术
- CheungSSH作为堡垒机角色,替代管理人员对众多服务器进行管理,解放运维管理员的双手,并且有相应的审计、权限管理功能
联系我们
官方QQ群:445342415
官方微信群
捐助支付宝
https://www.github.com/zhangqichuan/CheungSSH
安装
- [iyunv@cheungssh tmp]# unzip CheungSSH-Master.zip
- [iyunv@cheungssh tmp]# cd CheungSSH-Master/bin/
- [iyunv@cheungssh bin]# sh install-CheungSSH.sh
- 温馨提示:建议您使用Yum联网安装依赖模块
登录CheungSSH Web
- 如果登录次数联系超过5次,那么系统会锁定登录IP一天时间。
- 首次登陆后修改密码 http://您的IP地址:端口/cheungssh/admin/
添加被管理主机配置信息
- 点击 “增加服务器”
-
- 添加好以后,如下:
只需要添加被管理主机的IP,端口,登陆用户名, 密码既可以
您可以选择sudo为 ”是“ 表示执行命令的时候,是启用了sudo,并且在执行命令的时候不用输入sudo开头, 直接是命令, 比如原本是sudo ifconfig ,现在只需要 ifconfig,CheungSSH为您自动切换
您可以选择su为是; 表示执行命令的时候,是启用了su - root,并且在执行命令的时候不用输入su - root开头, 直接是命令, 比如原本是su - root后,执行 ifconfig ,现在只需要 ifconfig,CheungSSH为您自动切换
执行命令应用场景:执行一个whoami的命令,请记得,这个命令是在被管理的远程服务器上执行的
命令回显,功能区域介绍:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
| 关于websocket:
class WebSocketServer(object):
def __init__(self):
self.socket = None
def begin(self):
print( 'WebSocketServer Start!')
self.socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
self.socket.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,1)
self.socket.bind(("0.0.0.0",1337))
self.socket.listen(50)
global connectionlist
while True:
i=str(random.randint(90000000000000000000,99999999999999999999))
connection, address = self.socket.accept()
print '客户端ip',address
username=address[0]
ie_key='connection'+i
path="/"
newSocket = WebSocket(connection,i,username,address,path,ie_key)
newSocket.start() #开始线程,执行run函数
connectionlist[ie_key]=connection
|
选择服务器
- 应用场景:假如您现网有一万台服务器,那么本次您只想对其中的一千台服务器进行操作,那么您可以挑选出要执行任务的主机
-
添加计划任务- 应用场景
- 加入今晚需要对一部分的主机在24:00的时候执行一些命令,用来收集服务器的信息,此时,您使用该功能就不用值夜了,交给CheungSSH的计划任务模块,那么您就可以安心睡大觉了
选择计划任务的时间 ,这里与Linux系统的 分 时 日 月 星期 一一对应:
确认计划任务的时间,可以看到这个时间格式跟Linux系统的一模一样,没错,我们就是把它做成了操作系统的crontab功能:
- [iyunv@cheungssh bin]# crontab -l
- */1 */1 */1 */1 */1 /home/cheungssh/mysite/mysite/cheungssh/daemon_FileTransfer.py '{"status": "\u672a\u542f\u52a8", "lasttime": "2015-10-25 18:45:20", "cmd": "", "createtime": "2015-10-25 18:45:20", "sfile": "/var/log", "user": "bo", "fid": "92262569677243366214", "runtype": "download", "runtime": "*/1 */1 */1 */1 */1", "id": "99556469106"}' #92262569677243366214
- */1 */1 */1 */1 */1 /home/cheungssh/bin/cheungssh_web.py 94246137977316460425
- */1 */1 */1 */1 */1 /home/cheungssh/bin/cheungssh_web.py 91254503983769069002
- [root@cheungssh bin#
文件传输记录应用场景:对于所有的上传 下载文件的记录 我们都做了记录,下面是传输的记录:
文件下载应用场景:在远程被管理的服务器上有一个文件,此时如果您需要获取文件内容,那么您可以使用我们的下载功能,把远程服务器上的文件下载到CheungSSH服务器上,然后从CheungSSH服务器再下载到您的本地电脑PC机器上,然后神奇的是,这一切过程,都是自动的!
1
| 友情提示:不仅支持文件下载,还支持目录下载哦!
|
从远程服务器下载文件到CheungSSH上以后,自动弹出下载成功的文件,并且显示没有下载成功的文件:
\
从CheungSSH上下载刚才从远程服务器上下载的文件到您的本地电脑上:
文件上传应用场景:假如您需要更新或者上传一些文件到被管理服务器上,那么这里您可以使用上传功能:
文件上传和下载 都有进度显示的哦!
1
2
3
4
5
6
7
8
9
10
11
12
| 其实我们利用的就是paramiko的SFTP函数实现的:
def UpdateFile(ip,port,username,password,UseKey,sfile,dfile):
try:
t=paramiko.Transport((ip,port))
if UseKey=="Y":
KeyPath=os.path.expanduser('~/.ssh/id_rsa')
key=paramiko.RSAKey.from_private_key_file(KeyPath)
t.connect(username = username,pkey=key)
else:
t.connect(username = username,password = password)
sftp = paramiko.SFTPClient.from_transport(t)
ret=sftp.put(sfile,dfile)
|
- 目前脚本还在开发中, 不支持执行脚本,支持创建脚本和上传脚本
- 主机信息API
- 服务器运行日志API
- 服务器状态检查API
- 文件传输API
- 命令执行API
- 资产信息API
- 计划任务API
1
2
3
4
5
| 总结:
对于运维来说,以前意味着加班,加点。任务量大,其实很大一部分都是重复的工作,所以效率极低
当问题出现的时候,通常是把自己搞的手忙脚乱,尤其是在服务器众多的情况之下
就算没有更多的工作任务,但也是需要经常熬夜部署上线服务,比如Tomcat部署Weblogic,因为这个只有在无人使用的时候才能做的变更
安全得不到保障,当服务器出现了问题,往往不知从何插手,因为安全记录是在太分散
|
1
2
3
4
| CheungSSH带来的福音:
代替人工管理服务器
自动化的对服务器进行操作
所有的操作都将被记录, 并提供审计
|
1
2
3
| 最后:
彻底解放运维人员的双手!
进一步解放了社会主义的劳动生产力,当然也就提高了我们的综合国力。
|
CheungSSH中国人自主研发的Linux运维自动化管理服务器软件,管理上千台服务器,自动化运维软件,批量管理服务器,管理Linux服务器软件,Web执行命令,上传下载文件,添加计划任务,运维自动化软件,工具平台,运维人员必备,系统管理员必备软件 SSH登录,安全速度快,中国的Ansible,Slatstack,Puppet CheungSSH 中国人自主研发的Linux运维自动化管理服务器软件 管理上千台服务器 自动化运维软件 批量管理服务器 管理Linux服务器软件 Web执行命令, 上传下载文件, 添加计划任务 运维自动化软件 工具 平台 运维人员必备,系统管理员必备软件 SSH登录 安全 速度快 中国的Ansible Slatstack Puppet
|
|