无外网安装jumpserver v0.3.2

来源:互联网 发布:西安行知中学中考喜报 编辑:程序博客网 时间:2024/05/22 00:28
前言:相信使用过jumpserver的各位朋友都知道,jumpserver的安装非常简单,但是,如果公司的服务器没有外网怎么办,这篇文章就教你如何无外网安装jumpserver v0.3.2 本文所有操作只针对CentOS7。

1、安装CentOS7.3

我这里使用的是最小化安装,后期缺什么装什么(安装系统这里不做赘述)。我们将有外网的Linux机器称为测试机。后面将没有外网的机器成为服务器。

2、 安装依赖包

因为CentOS7使用的默认Python版本为2.7.5,所以,我这里就用Python2,不过我也不清楚jumpserverv0.3.2版本是否支持Python3,应该是不支持的。

# mkdir -p /data/soft/pip_packages# yum -y install epel-release# yum -y install gcc git python-pip python-devel unzip mariadb mariadb-server mariadb-devel lrzsz

如果你的服务器(无外网)的yum源没有python-pip这个安装包,那就下载个pip安装包,编译安装一下。

3、准备pip安装包

在测试机上操作:
从GitHub上下载jumpserver的代码,可以克隆,也可以直接下载zip包。

如果克隆的话:# git clone https://github.com/jumpserver/jumpserver.git# git checkout master如果是下载zip包的话,先把zip包上传到测试机上,我这里上传到了/data目录:# cd /data# unzip jumpserver-master.zip# mv jumpserver-master jumpserver  #我这里自己要改的,改不改随意

用pip下载需要的安装包

# cd jumpserver/install# pip install --download /data/soft/pip_packages/ -r requirements.txt   #如果报错,可以百度下解决,一般都是因为缺少包。

在测试机上把包都下载完成之后,将pip_packages这个目录拷贝到没有外网的服务器上。

# scp -r /data/soft/pip_packages 服务器ip:/data/soft/

将之前我们下载的jumpserver的代码包也拷贝到服务器上:

# scp jumpserver-master.zip 服务器ip:/data# cd /data# unzip jumpserver-master.zip# mv jumpserver-master jumpserver# cd jumpserver/install# pip install --no-index --find-links=/data/soft/pip_packages/ -r requirements.txt

这里已经将jumpserver需要的包已经安装完成了,然后将install.py这个文件中pip安装包的代码删除掉,或者注释掉

# vim install.py           def _require_pip(self):        color_print('开始安装依赖pip包', 'green')        bash('pip uninstall -y pycrypto')        bash('rm -rf /usr/lib64/python2.6/site-packages/Crypto/')        ret_code = bash('pip install -r requirements.txt')        self.check_bash_return(ret_code, "安装JumpServer 依赖的python库失败!")

将install.py中调用_require_pip 这个的也注释或者删除掉。

# vim install.py    def start(self):        color_print('请务必先查看wiki https://github.com/jumpserver/jumpserver/wiki')        time.sleep(3)        self.check_platform()        self._rpm_repo()        self._depend_rpm()        #self._require_pip()        self._set_env()        self._input_ip()        self._input_mysql()        self._input_smtp()        self.write_conf()        os.system('python %s' % os.path.join(jms_dir, 'install/next.py'))

这里贴一张图片方便理解。
这里写图片描述
接下来就可以在服务器上安装了

# python install.py

按照步骤一步一步来就可以了,还有就是邮箱那一步,如果你的服务器连公司的邮箱都访问不了,那我也不知道怎么弄了,我这里服务器是能访问公司邮箱的。如果邮箱不能使用的话,是不是可以上GitHub上提问怎么把邮箱禁用掉。