OpsManage 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
OpsManage 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
OpsManage 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 GPL
开发语言 Python 查看源码 »
操作系统 Linux
软件类型 开源软件
开源组织
地区 国产
投 递 者 WelliamCao
适用人群 未知
收录时间 2017-05-05

软件简介

一款代码部署、应用部署、计划任务、设备资产管理平台。

开发语言与框架:

  • 编程语言:Python2.7 + HTML + JScripts

  • 前端Web框架:Bootstrap

  • 后端Web框架:Django

  • 后端Task框架:Celery + Redis

OpsManage环境要求

  • 编程语言:Python 2.7

  • 操作系统:CentOS 6+

  • Ansible版本:2.0 +

  • 部署平台及节点服务器:Rsync 3+

  • MySQL版本:5.1-5.6

安装环境配置

一、安装Python

# yum install zlib zlib-devel readline-devel sqlite-devel bzip2-devel openssl-devel gdbm-devel libdbi-devel ncurses-libs kernel-devel libxslt-devel libffi-devel python-devel mysql-devel zlib-devel mysql-server sshpass -y
# wget http://mirrors.sohu.com/python/2.7.12/Python-2.7.12.tgz
# tar -xzvf Python-2.7.12.tgz
# cd Python-2.7.12
# ./configure
# make all
# make install
# make clean
# make distclean 
# mv /usr/bin/python /usr/bin/python2.6.6  
# ln -s /usr/local/bin/python2.7 /usr/bin/python 
# vi /usr/bin/yum  
将文件头部的
#!/usr/bin/python

改成
#!/usr/bin/python2.6.6

二、安装easy_install

# wget --no-check-certificate  https://pypi.python.org/packages/f7/94/eee867605a99ac113c4108534ad7c292ed48bf1d06dfe7b63daa51e49987/setuptools-28.0.0.tar.gz#md5=9b23df90e1510c7353a5cf07873dcd22
# tar -xzvf setuptools-28.0.0.tar.gz
# cd setuptools-28.0.0
# python  setup.py  install

三、安装pip

# wget --no-check-certificate https://github.com/pypa/pip/archive/1.5.5.tar.gz -O pip-1.5.5.tar.gz
# tar -xzvf pip-1.5.5.tar.gz
# cd pip-1.5.5/
# python setup.py install

四、安装模块

# pip install django==1.8.17
# pip install Celery 
# pip install django-celery 
# pip install celery-with-redis
# pip install djangorestframework
# pip install paramiko
# pip install ansible==2.2.2
# pip install redis
# pip install supervisor
# pip install redis
# pip install MySQL-python
# pip install DBUtils

五、安装Redis

# wget http://download.redis.io/releases/redis-3.2.8.tar.gz
# tar -xzvf redis-3.2.8.tar.gz
# cd redis-3.2.8
# make
# make install
# vim redis.conf

修改以下配置

daemonize yes
loglevel warning
logfile "/var/log/redis.log"
bind 你的服务器ip地址
# cd ../
# mv redis-3.2.8 /usr/local/redis
# /usr/local/redis/src/redis-server /usr/local/redis/redis.conf

六、配置MySQL

# vim /etc/my.cnf
[mysqld]
default-character-set = utf8
character_set_server = utf8
添加以上字段
# mysql -uroot -p
mysql> create database opsmanage;
mysql> grant all privileges on opsmanage.* to root@'%' identified by 'password';
mysql>\q
# /etc/init.d/mysqld restart

七、配置OpsManage

# cd /path/OpsManage/OpsManage
# vim settings.py
BROKER_URL =  redis://192.168.1.233:6379/3 #修改成自己的配置
REDSI_KWARGS_LPUSH = {"host":'192.168.1.233','port':6379,'db':3} #修改成自己的配置
DATABASES = {
    'default': {
        'ENGINE':'django.db.backends.mysql',
        'NAME':'opsmanage',
        'USER':'root',		#修改成自己的配置
        'PASSWORD':'welliam',	#修改成自己的配置
        'HOST':'192.168.1.233'  #修改成自己的配置
#         'ENGINE': 'django.db.backends.sqlite3',
#         'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}
STATICFILES_DIRS = (
     ‘/yourpath/OpsManage/OpsManage/static/',	#修改成自己的配置
    )
TEMPLATE_DIRS = (
#     os.path.join(BASE_DIR,'mysite\templates'),
    ‘/yourpath/OpsManage/OpsManage/templates/',	#修改成自己的配置
)

八、生成数据表与管理员账户

# cd /yourpath/OpsManage/
# python manage.py migrate
# python manage.py createsuperuser

九、启动部署平台

# cd /yourpath/OpsManage/
# python manage.py runserver ip:8000

十、配置证书认证

# ssh-keygen -t  rsa
# ssh-copy-id -i ~/.ssh/id_rsa.pub  root@ipaddress

十一、配置Celery异步任务系统

# echo_supervisord_conf > /etc/supervisord.conf
# vim /etc/supervisord.conf
最后添加
[program:celery-worker]
command=/usr/bin/python manage.py celery worker --loglevel=info -E -c 2
directory=/yourpath/OpsManage
stdout_logfile=/var/log/celery-worker.log
autostart=true
autorestart=true
redirect_stderr=true
stopsignal=QUIT
numprocs=1
启动celery
# /usr/local/bin/supervisord -c /etc/supervisord.conf
# supervisorctl status

Ansible部署功能: image

代码部署: image

资产管理: image

计划任务管理: image

全局配置: image

用户管理: image

注意:

1、部署服务器到节点服务器请配置ssh证书认证。

2、上传Ansible剧本文件,host字段设置为变量。

3、如果有bug请提交issue到https://github.com/welliamcao/OpsManage

 
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击加入讨论🔥(2) 发布并加入讨论🔥
暂无内容
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
NumPy 安全漏洞
空指针解引用
** 有争议 ** 由于缺少返回值验证,NumPy < 中的 numpy.sort 和 PyArray_DescrNew 函数中的 1.19 中存在空指针取消引用漏洞,这使得攻击者可以通过重复创建排序数组来进行 DoS 攻击。注意:虽然正确的是缺少验证,但只有内存耗尽才会发生错误。如果用户可以耗尽内存,则他们已经拥有特权。此外,实际上不可能构建一个可以针对恰好在此位置发生的内存耗尽的攻击。
CVE-2021-41495 MPS-2021-32278
2022-08-08 18:41
NumPy 安全漏洞
缓冲区溢出
** DISPUTED ** NumPy < 1.19 中 fortranobject.c 的 array_from_pyobj 函数中的缓冲区溢出,这使得攻击者可以通过小心地构造具有负值的数组来进行拒绝服务攻击。注意:供应商不同意这是一个漏洞;负维度只能由已经拥有特权的用户(或内部)创建。
CVE-2021-41496 MPS-2021-32279
2022-08-08 18:41
channels-redis 存在拒绝服务漏洞
拒绝服务
channels-redis 是一个 Redis 支持的 ASGI 通道层实现。由于不正确的过期机制,此软件包的受影响版本容易受到拒绝服务 (DoS) 的攻击。
MPS-2022-14782
2022-08-08 18:41
djangorestframework 存在跨站脚本漏洞
XSS
djangorestframework 是一个强大而灵活的工具包,用于构建 Web API。由于在默认 DRF 可浏览 API 视图模板中禁用了自动转义,因此该软件包的受影响版本容易受到跨站点脚本 (XSS) 的攻击。
MPS-2022-14868
2022-08-08 18:41
python-ldap 存在ReDoS漏洞
ReDoS
python-ldap 是一个用于实现 LDAP 客户端的 Python 模块。此软件包的受影响版本容易通过 LDAP 模式标记器组件受到正则表达式拒绝服务 (ReDoS) 的攻击。
MPS-2022-15098
2022-08-08 18:41
Django Trunc和Extract方法存在 SQL 注入漏洞
SQL注入
Django 是一个 Python Web 框架。 如果没有对 kind / lookup_name 值进行安全性校验,则Trunc()和Extract()数据库函数会受到 SQL 注入的影响。 攻击者可利用该漏洞进行 SQL 注入攻击。 利用条件:代码中使用了 Trunc() 和 Extract() 方法,其中 kind 参数和lookup_name 参数可控
CVE-2022-34265 MPS-2022-19581
2022-08-08 18:41
Python 输入验证错误漏洞
跨站重定向
Python是Python基金会的一套开源的、面向对象的程序设计语言。该语言具有可扩展、支持模块和包、支持多种平台等特点。 Python 20.12.3之前版本存在输入验证错误漏洞,该漏洞允许重定向头注入。
CVE-2020-35678 MPS-2020-18086
2022-08-08 18:41
celery命令注入漏洞
命令注入
celery是开源的一个用于分布式任务队列的包。celery 5.2.2之前版本存在命令注入漏洞,攻击者可利用该漏洞访问或以某种方式操纵celery后端中的元数据,触发存储命令注入漏洞。
CVE-2021-23727 MPS-2021-19766
2022-08-08 18:41
NumPy 缓冲区错误漏洞
缓冲区溢出
** 有争议 ** NumPy 1.9.x 中 ctors.c 的 PyArray_NewFromDescr_int 函数中存在缓冲区溢出漏洞,当从 Python 代码中指定大维度(超过 32 个)数组时,这可能会让恶意用户导致拒绝服务。注意:供应商不同意这是一个漏洞;在(非常有限的)情况下,用户可能会引发缓冲区溢出,用户很可能已经拥有至少通过耗尽内存来引发拒绝服务的特权。进一步触发此操作需要使用不常见的 API(复杂的结构化数据类型),非特权用户不太可能使用该 API。
CVE-2021-33430 MPS-2021-25101
2022-08-08 18:41
Twisted SSH 握手时存在拒绝服务漏洞
拒绝服务
Twisted 是一款使用Python语言编写的事件驱动的开源网络引擎。 Twisted SSH 客户端和服务端没有对对方的 SSH 版本标识符做校验,恶意方可以进行使用所有可用内存的请求使服务器崩溃,导致拒绝服务攻击。 攻击者可利用该漏洞进行拒绝服务攻击。
CVE-2022-21716 MPS-2021-37074
2022-08-08 18:41
channels 存在拒绝服务漏洞
拒绝服务
频道是 Django 的开发人员友好的异步。由于请求正文的大小限制,此软件包的受影响版本容易受到拒绝服务 (DoS) 的攻击。
MPS-2022-14781
2022-08-08 18:41
httplib2注入漏洞
CRLF注入
httplib2是一款HTTP客户端库。 httplib2 0.18.0之前版本中存在注入漏洞。攻击者可通过控制的uri(httplib2.Http.request())未转义部分利用该漏洞更改请求标头和正文,并将其他隐藏请求发送到同一服务器。
CVE-2020-11078 MPS-2020-7623
2022-08-08 18:41
httplib2 资源管理错误漏洞
拒绝服务
httplib2是一款HTTP客户端库。 httplib2 0.19.0之前的版本中存在安全漏洞,该漏洞源于在 www-authenticate 报头中响应长串 xa0 字符可能会导致httpplib2客户端访问该服务器时拒绝服务。
CVE-2021-21240 MPS-2021-10429
2022-08-08 18:41
msgpack 存在拒绝服务漏洞
拒绝服务
msgpack 是一种高效的二进制序列化格式。由于地图长度不受限制,此软件包的受影响版本容易受到拒绝服务 (DoS) 的攻击。
MPS-2022-14994
2022-08-08 18:41
NumPy 代码问题漏洞
反序列化
NumPy是一个Python科学计算包,它支持大量的维度数组与矩阵计算,同时针对数据运算提供大量的数学函数库。 NumPy 1.16.0及之前版本中存在安全漏洞,该漏洞程序没有安全地使用pickle模块(Python)。远程攻击者可借助特制的序列化对象利用该漏洞执行任意代码。
CVE-2019-6446 MPS-2019-0576
2022-08-08 18:41
django-celery-results 安全漏洞
敏感数据的明文存储
django-celery-results 1.2.1及之前版本中存在安全漏洞。攻击者可利用该漏洞获取敏感的明文形式信息。
CVE-2020-17495 MPS-2020-11397
2022-08-08 18:41
Django 跨站脚本漏洞
XSS
在 3.12.0 之前和 3.11.2 之前的 Django REST Framework 版本中发现了一个缺陷。使用可浏览的 API 查看器时,Django REST Framework 无法正确转义可能来自用户输入的某些字符串。这允许可以控制这些字符串的用户注入恶意<script> tags, leading to a cross-site-scripting (XSS) vulnerability.
CVE-2020-25626 MPS-2020-13801
2022-08-08 18:41
NumPy 安全漏洞
不充分的比较
NumPy 1.22.0 之前的 numpy.core 组件中的不完整字符串比较允许攻击者通过构造特定字符串对象来触发稍微不正确的复制。注意:供应商声明此报告的代码行为是“完全无害的”。
CVE-2021-34141 MPS-2021-25631
2022-08-08 18:41
urllib3 资源管理错误漏洞
拒绝服务
urllib3是一款Python HTTP库。该产品具有线程安全连接池、文件发布支持等。 Urllib3 存在资源管理错误漏洞,该漏洞源于在鉴权模块的URL中添加@参数导致,攻击者可利用该漏洞引起资源冲突导致拒绝服务。以下产品及型号会受到影响:Urllib3 0.3, 0.3.1, 0.4, 0.4.1, 1.0, 1.0.1, 1.0.2, 1.1, 1.2, 1.2.1, 1.3, 1.4, 1.5, 1.6, 1.7, 1.7.1, 1.8, 1.8.1, 1.8.2, 1.8.3, 1.9, 1.9.1, 1.10, 1.10.1, 1.10.2, 1.10.3, 1.10.4, 1.11, 1.12, 1.13, 1.13.1, 1.14, 1.15, 1.15.1, 1.16, 1.17, 1.18, 1.18.1, 1.19, 1.19.1, 1.20, 1.21, 1.21.1, 1.22, 1.23, 1.24, 1.24.1, 1.24.2, 1.24.3, 1.25, 1.25.1, 1.25.2, 1.25.3, 1.25.4, 1.25.5, 1.25.6, 1.25.7, 1.25.8, 1.25.9, 1.25.10, 1.25.11, 1.26.0, 1.26.1, 1.26.2, 1.26.3, 1.26.4。
CVE-2021-33503 MPS-2021-9054
2022-08-08 18:41
httplib2 存在CRLF注入漏洞
CRLF注入
httplib2 是一个用于 Python 的小型 HTTP 客户端库。此软件包的受影响版本容易受到 CRLF 注入的影响。
MPS-2022-14942
2022-08-08 18:41
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
2 评论
110 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部