全程按照官方安装文档流程完成本次安装:

官方文档地址:http://docs.jumpserver.org/zh/docs/step_by_step.html

一、系统环境

Centos7 x64
setenforce 0  # 可以设置配置文件永久关闭:/etc/selinux/config
systemctl stop iptables.service
systemctl stop firewalld.service# 修改字符集,否则可能报 input/output error的问题,因为日志里打印了中文
localedef -c -f UTF-8 -i zh_CN zh_CN.UTF-8
export LC_ALL=zh_CN.UTF-8
echo 'LANG="zh_CN.UTF-8"' > /etc/locale.conf#更换源地址
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo
yum clean all
yum makecache

二、准备 Python3 和 Python 虚拟环境

1、安装依赖包
yum -y install wget sqlite-devel xz gcc automake zlib-devel openssl-devel epel-release git2、编译安装
cd /usr/local/src/
wget https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tar.xz
tar xf Python-3.6.6.tar.xz && cd Python-3.6.6
./configure && make && make install
# 这里必须执行编译安装,否则在安装 Python 库依赖时会有麻烦..3、建立Python虚拟环境
#因为 CentOS 6/7 自带的是 Python2,而 Yum 等工具依赖原来的 Python,为了不扰乱原来的环境我们来使用 Python 虚拟环境
[root@jumpserver Python-3.6.6]# cd /opt/
[root@jumpserver opt]# pwd
/opt
[root@jumpserver opt]# python3 -m venv py3
[root@jumpserver opt]# source /opt/py3/bin/activate
(py3) [root@jumpserver opt]# 4、 自动载入 Python 虚拟环境配置
#此项仅为懒癌晚期的人员使用,防止运行 Jumpserver 时忘记载入 Python 虚拟环境导致程序无法运行。使用autoenv
cd /opt
git clone git://github.com/kennethreitz/autoenv.git
echo 'source /opt/autoenv/activate.sh' >> ~/.bashrc
source ~/.bashrc

三、安装Jumpserver

1、下载或Clone项目
项目提交较多 git clone 时较大,你可以选择去 Github 项目页面直接下载zip包
cd /opt/
git clone https://github.com/jumpserver/jumpserver.git && cd jumpserver && git checkout master
echo "source /opt/py3/bin/activate" > /opt/jumpserver/.env  # 进入 jumpserver目录时将自动载入 python 虚拟环境# 首次进入 jumpserver 文件夹会有提示,按 y 即可
Are you sure you want to allow this? (y/N) y2、安装依赖 RPM 包
cd /opt/jumpserver/requirements
yum -y install $(cat rpm_requirements.txt)  # 如果没有任何报错请继续3、安装 Python 库依赖
pip install -r requirements.txt  # 不要指定-i参数,因为镜像上可能没有最新的包,如果没有任何报错请继续
注释:Pip 加速设置请参考 <https://segmentfault.com/a/1190000011875306>4、安装 Redis, Jumpserver 使用 Redis 做 cache 和 celery broke
yum -y install redis
systemctl start redissystemctl enable redis5、安装 MySQL
本教程使用 Mysql 作为数据库,如果不使用 Mysql 可以跳过相关 Mysql 安装和配置
# centos7下安装的是mariadb
yum -y install mariadb mariadb-devel mariadb-server
systemctl enable mariadb
systemctl start mariadb6、创建数据库 Jumpserver 并授权
$ mysql
create database jumpserver default charset 'utf8';
grant all on jumpserver.* to 'jumpserver'@'127.0.0.1' identified by 'somepassword';
flush privileges;7、修改 Jumpserver 配置文件
cd /opt/jumpserver
cp config_example.py config.py
vi config.py

#注意: 不要直接复制本文档的内容;配置文件是 Python 格式,不要用 TAB,而要用空格
"""
    jumpserver.config~~~~~~~~~~~~~~~~~Jumpserver project setting file:copyright: (c) 2014-2017 by Jumpserver Team:license: GPL v2, see LICENSE for more details.
"""
import osBASE_DIR = os.path.dirname(os.path.abspath(__file__))class Config:# Use it to encrypt or decrypt data# Jumpserver 使用 SECRET_KEY 进行加密,请务必修改以下设置# SECRET_KEY = os.environ.get('SECRET_KEY') or '2vym+ky!997d5kkcc64mnz06y1mmui3lut#(^wd=%s_qj$1%x'SECRET_KEY = '请随意输入随机字符串(推荐字符大于等于 50位)'# Django security setting, if your disable debug model, you should setting thatALLOWED_HOSTS = ['*']# DEBUG 模式 True为开启 False为关闭,默认开启,生产环境推荐关闭# 注意:如果设置了DEBUG = False,访问8080端口页面会显示不正常,需要搭建 nginx 代理才可以正常访问了DEBUG = False# 日志级别,默认为DEBUG,可调整为INFO, WARNING, ERROR, CRITICAL,默认INFOLOG_LEVEL = 'ERROR'LOG_DIR = os.path.join(BASE_DIR, 'logs')# 使用的数据库配置,支持sqlite3, mysql, postgres等,默认使用sqlite3# See https://docs.djangoproject.com/en/1.10/ref/settings/#databases
# 默认使用SQLite,如果使用其他数据库请注释下面两行# DB_ENGINE = 'sqlite3'# DB_NAME = os.path.join(BASE_DIR, 'data', 'db.sqlite3')# # 如果需要使用mysql或postgres,请取消下面的注释并输入正确的信息,本例使用mysql做演示DB_ENGINE = 'mysql'DB_HOST = '127.0.0.1'DB_PORT = 3306DB_USER = 'jumpserver'DB_PASSWORD = 'somepassword'DB_NAME = 'jumpserver'# Django 监听的ip和端口,生产环境推荐把0.0.0.0修改成127.0.0.1,这里的意思是允许x.x.x.x访问,127.0.0.1表示仅允许自身访问# ./manage.py runserver 127.0.0.1:8080HTTP_BIND_HOST = '127.0.0.1'HTTP_LISTEN_PORT = 8080# Redis 相关设置REDIS_HOST = '127.0.0.1'REDIS_PORT = 6379REDIS_PASSWORD = ''def __init__(self):passdef __getattr__(self, item):return Noneclass DevelopmentConfig(Config):passclass TestConfig(Config):passclass ProductionConfig(Config):pass# Default using Config settings, you can write if/else for different env
config = DevelopmentConfig()

继续如下操作

1、生成数据库表结构和初始化数据
cd /opt/jumpserver/utils
bash make_migrations.sh2、运行 Jumpserver
cd /opt/jumpserver
./jms start all  # 后台运行使用 -d 参数./jms start all -d#新版本更新了运行脚本,使用方式./jms start|stop|status|restart all  后台运行请添加 -d 参数

运行不报错,请浏览器访问 http://http://10.10.10.60:8080 默认账号: admin 密码: admin 页面显示不正常先不用处理,跟着教程继续操作就行,后面搭建 nginx 代理就可以正常访问了!

三、安装 SSH Server 和 WebSocket Server: Coco

1、下载或 Clone 项目
cd /opt
source /opt/py3/bin/activate
git clone https://github.com/jumpserver/coco.git && cd coco && git checkout master
echo "source /opt/py3/bin/activate" > /opt/coco/.env  # 进入 coco 目录时将自动载入 python 虚拟环境2、安装依赖
cd /opt/coco/requirements
yum -y  install $(cat rpm_requirements.txt)
pip install -r requirements.txt -i https://pypi.org/simple3、修改配置文件并运行
cd /opt/coco
cp conf_example.py conf.py  # 如果 coco 与 jumpserver 分开部署,请手动修改 conf.py
vi conf.py

# 注意对齐,不要直接复制本文档的内容
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#import osBASE_DIR = os.path.dirname(__file__)class Config:"""
    Coco config file, coco also load config from server update setting below"""
    # 项目名称, 会用来向Jumpserver注册, 识别而已, 不能重复# NAME = "localhost"NAME = "coco"# Jumpserver项目的url, api请求注册会使用, 如果Jumpserver没有运行在127.0.0.1:8080,请修改此处# CORE_HOST = os.environ.get("CORE_HOST") or 'http://127.0.0.1:8080'CORE_HOST = 'http://127.0.0.1:8080'# 启动时绑定的ip, 默认 0.0.0.0# BIND_HOST = '0.0.0.0'# 监听的SSH端口号, 默认2222# SSHD_PORT = 2222# 监听的HTTP/WS端口号,默认5000# HTTPD_PORT = 5000# 项目使用的ACCESS KEY, 默认会注册,并保存到 ACCESS_KEY_STORE中,# 如果有需求, 可以写到配置文件中, 格式 access_key_id:access_key_secret# ACCESS_KEY = None# ACCESS KEY 保存的地址, 默认注册后会保存到该文件中# ACCESS_KEY_STORE = os.path.join(BASE_DIR, 'keys', '.access_key')# 加密密钥# SECRET_KEY = None# 设置日志级别 ['DEBUG', 'INFO', 'WARN', 'ERROR', 'FATAL', 'CRITICAL']# LOG_LEVEL = 'INFO'# 日志存放的目录# LOG_DIR = os.path.join(BASE_DIR, 'logs')# Session录像存放目录# SESSION_DIR = os.path.join(BASE_DIR, 'sessions')# 资产显示排序方式, ['ip', 'hostname']# ASSET_LIST_SORT_BY = 'ip'# 登录是否支持密码认证# PASSWORD_AUTH = True# 登录是否支持秘钥认证# PUBLIC_KEY_AUTH = True# 和Jumpserver 保持心跳时间间隔# HEARTBEAT_INTERVAL = 5# Admin的名字,出问题会提示给用户# ADMINS = ''COMMAND_STORAGE = {"TYPE": "server"}REPLAY_STORAGE = {"TYPE": "server"}config = Config()

启动coco服务
$ ./cocod start  # 后台运行使用 -d 参数./cocod start -d# 新版本更新了运行脚本,使用方式./cocod start|stop|status|restart  后台运行请添加 -d 参数

启动成功后去Jumpserver 会话管理-终端管理(http://10.10.10.60:8080/terminal/terminal/)接受coco的注册,如果页面不正常可以等部署完成后再处理

四. 安装 Web Terminal 前端: Luna

Luna 已改为纯前端,需要 Nginx 来运行访问
访问(https://github.com/jumpserver/luna/releases)下载对应版本的 release 包,直接解压,不需要编译4.1 解压 Luna
cd /opt
wget https://github.com/jumpserver/luna/releases/download/1.3.2/luna.tar.gz
tar xvf luna.tar.gz
chown -R root:root luna

五. 安装 Windows 支持组件(如果不需要管理 windows 资产,可以直接跳过这一步)

因为手动安装 guacamole 组件比较复杂,这里提供打包好的 docker 使用, 启动 guacamole
5.1 Docker安装 (仅针对CentOS7,CentOS6安装Docker相对比较复杂)(国内不一定能使用)
yum remove docker-latest-logrotate  docker-logrotate  docker-selinux dockdocker-engine
yum install -y yum-utils   device-mapper-persistent-data   lvm2# 添加docker官方源
yum-config-manager --add-repo  https://download.docker.com/linux/centos/docker-ce.repo
yum makecache fast
yum install docker-ce -y# 国内部分用户可能无法连接docker官网提供的源,这里提供阿里云的镜像节点供测试使用(可以先使用这个)
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
rpm --import http://mirrors.aliyun.com/docker-ce/linux/centos/gpg
yum makecache fast
yum -y install docker-cesystemctl start docker
systemctl status dockersystemctl enable docker

5.2 启动 Guacamole
这里所需要注意的是 guacamole 暴露出来的端口是 8081,若与主机上其他端口冲突请自定义修改下面 docker run 里的 JUMPSERVER_SERVER 参数,填上 Jumpserver 的 url 地址, 启动成功后去 Jumpserver 会话管理-终端管理(http://10.10.10.60:8080/terminal/terminal/)接受[Gua]开头的一个注册,如果页面显示不正常可以等部署完成后再处理

#docker run --name jms_guacamole -d \-p 8081:8081 -v /opt/guacamole/key:/config/guacamole/key \-e JUMPSERVER_KEY_DIR=/config/guacamole/key \-e JUMPSERVER_SERVER=http://10.10.10.60:8080 \registry.jumpserver.org/public/guacamole:latest


六. 配置 Nginx 整合各组件

6.1 安装 Nginx 根据喜好选择安装方式和版本
yum -y install nginx6.2 准备配置文件 修改 /etc/nginx/nginx.conf
vim /etc/nginx/nginx.conf
... ...
# 把默认server配置块改成这样
server {listen 80;  # 代理端口,以后将通过此端口进行访问,不再通过8080端口proxy_set_header X-Real-IP $remote_addr;proxy_set_header Host $host;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;location /luna/ {try_files $uri / /index.html;alias /opt/luna/;}location /media/ {add_header Content-Encoding gzip;root /opt/jumpserver/data/;}location /static/ {root /opt/jumpserver/data/;}location /socket.io/ {proxy_pass       http://localhost:5000/socket.io/;  # 如果coco安装在别的服务器,请填写它的ipproxy_buffering off;proxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade";}location /guacamole/ {proxy_pass       http://localhost:8081/;  # 如果guacamole安装在别的服务器,请填写它的ipproxy_buffering off;proxy_http_version 1.1;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection $http_connection;access_log off;client_max_body_size 100m;  # Windows 文件上传大小限制}location / {proxy_pass http://localhost:8080;  # 如果jumpserver安装在别的服务器,请填写它的ip
    }
}

... ...6.3 运行 Nginx
nginx -t   # 确保配置没有问题, 有问题请先解决# CentOS 7
systemctl start nginx
systemctl enable nginx

6.4 开始使用 Jumpserver

检查应用是否已经正常运行$ cd /opt/jumpserver
$ ./jms status  # 确定jumpserver已经运行,如果没有运行请重新启动jumpserver$ cd /opt/coco
$ ./cocod status  # 确定jumpserver已经运行,如果没有运行请重新启动coco# 如果安装了 Guacamole
$ docker ps  # 检查容器是否已经正常运行,如果没有运行请重新启动Guacamole
服务全部启动后,访问 http://10.10.10.60,访问nginx代理的端口,不要再通过8080端口访问

默认账号: admin 密码: admin

如果部署过程中没有接受应用的注册,需要到Jumpserver 会话管理-终端管理 接受 Coco Guacamole 等应用的注册。

6.5、** 测试连接**
如果登录客户端是 macOS 或 Linux ,登录语法如下
$ ssh -p2222 admin@192.168.244.144
$ sftp -P2222 admin@192.168.244.144
密码: admin如果登录客户端是 Windows ,Xshell Terminal 登录语法如下
$ ssh admin@192.168.244.144 2222
$ sftp admin@192.168.244.144 2222
密码: admin
如果能登陆代表部署成功# sftp默认上传的位置在资产的 /tmp 目录下
# windows拖拽上传的位置在资产的 Guacamole RDP上的 G 目录下

6.5、服务器重启后需要的恢复操作

如果有一天服务器因其他原因重启了,恢复Jumpserver需做如下操作:

1、检查selinux:
[root@jumpserver ~]# getenforce
Enforcing
[root@jumpserver ~]# setenforce 0
注释:可以执行修改/etc/selinux/config文件,永久禁用;2、查看防火墙是否开放80端口
3、查看mysql、redis、nginx、docker是否正常运行
systemctl start docker
docker ps4、启动其他进程
[root@jumpserver ~]# source /opt/py3/bin/activate
(py3) [root@jumpserver ~]# cd /opt/jumpserver
(py3) [root@jumpserver jumpserver]# ./jms start all -d(py3) [root@jumpserver jumpserver]# cd /opt/coco
(py3) [root@jumpserver coco]# ./cocod start -d
(py3) [root@jumpserver coco]# docker restart jms_guacamole
# 如果接受注册后显示不在线,重启gua就好了

 

6.6、jumpserver常见问题汇总

官方文档: http://docs.jumpserver.org/zh/docs/faq.html

GItHub:https://github.com/jumpserver/jumpserver/wiki/v0.3.2-%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98-FAQ

这时就可以在浏览器内输入:http://10.10.10.60  打开Jumpserver了

七、Jumpserver的基本使用

前提条件:

  一台安装好 Jumpserver 系统的可用主机(堡垒机)

  一台或多台可用的 Linux、Windows资产设备(被管理的资产)

7.1、系统设置

  1.1 基本设置

  # 修改 URL 的 localhost 为你的实际 url 地址,否则邮件收到的地址将为 localhost,修改完 url 地址后需要重启 jumpserver 服务(重启才能生效,后续会解决这个问题)

  

  1.2、邮箱设置

  

注释:

如果是163的邮箱,当传入发送邮箱正确的用户名和密码时,总是收到到:550 User has no permission这样的错误,其实我们用Java发送邮件时相当于自定义客户端根据用户名和密码进行登录,然后使用SMTP服务发送邮件。但新注册的163邮件默认是不开启客户端授权验证的(对自定的邮箱大师客户端默认开启),因此登录总是会被拒绝,验证没有权限。解决办法是进入163邮箱,进入邮箱中心——客户端授权密码,选择开启即可;有的用户由于开启了授权码,如果输入邮箱登录密码的话会报535 Error:authentication failed

  3.3、系统设置项内的其他设置(略)

7.2、创建用户

  1.1、创建用户组

  jumpserver的普通用户是用于登录web管理页面以及命令行登录该堡垒机的用户,首先创建一个用户组

  

  1.2、创建用户组

7.3、资产管理

  1.1、资产列表类

  1.2、管理用户类

管理用户是资产上的 root,或拥有 NOPASSWD: ALL sudo 权限的用户,Jumpserver 使用该用户来推送系统用户、获取资产硬件信息等# 如果使用ssh私钥管理资产,需要先在资产上设置,这里举个例子供参考(本例登录资产使用root为例)
(1). 在资产上生成 root 账户的公钥和私钥# ssh-keygen -t rsa  # 默认会输入公钥和私钥文件到 ~/.ssh 目录(2). 将公钥输出到文件 authorized_keys 文件,并修改权限# cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys# chmod 400 ~/.ssh/authorized_keys(3). 打开RSA验证相关设置$ vim /etc/ssh/sshd_configRSAAuthentication yesPubkeyAuthentication yesAuthorizedKeysFile      .ssh/authorized_keys(4). 重启 ssh 服务# service sshd restart(5). 上传 ~/.ssh 目录下的 id_rsa 私钥到 jumpserver 的管理用户中保存即可!

# 这样就可以使用 ssh私钥 进行管理服务器
# 名称可以按资产树来命名。用户名root。密码和 SSH 私钥必填一个

  1.3、系统用户类

个人理解:管理用户只是用来初次设置系统时使用:在资产系统中创建一个指定的、权限有限制的Jump用户;获取系统信息。系统用户是:需要存在资产系统中的普通用户

附录:(等同于Linux系统中的sudo授权

# 系统用户是 Jumpserver 跳转登录资产时使用的用户,可以理解为登录资产用户
# 系统用户的 Sudo 栏设定用户的 sudo 权限# 这里简单举几个例子
Sudo /bin/su  # 当前系统用户可以免sudo密码执行sudo su命令Sudo /usr/bin/git,/usr/bin/php,/bin/cat,/bin/more,/bin/less,/usr/bin/tail
# 当前系统用户可以免sudo密码执行git php cat more less tailSudo !/usr/bin/yum  # 禁止执行 yum 权限# 此处的权限应该根据使用用户的需求汇总后定制,原则上给予最小权限即可
# 下图为不允许用户执行一些危险的操作,允许其他的所有权限

  1.4、网域列表  

如果有多个的互相隔离的网络,设置资产属于的网域,使用网域网关跳转登录

  1.5、标签管理

    就是给资产打个标签(起好主机名比打标签强)

  

7.4、权限管理

7.4.1 授权后进行测试

注释:如果不想使用密匙,也可以使用密码

7.5会话管理

  1.1、在线会话

    记录当前连接资产的会话用户;

  1.2、历史会话

   

注释:会话完成后,需要关闭对应的会话窗口,否则就会出现ID:2的现象;

  1.3、命令记录

    记录会话中输入的命令

             

  1.4、web终端

    

  1.5、终端管理

    

7.6、作业中心

  1.1、任务列表

7.7、日志审计

  1.1、FTP审计

8.1防火墙设置(iptables)

(py3) [root@jumpserver opt]# cat /etc/sysconfig/iptables#nat表是创建映射的时候添加的,不用修改
*nat
:PREROUTING ACCEPT [5130:306500]
:INPUT ACCEPT [4914:295268]
:OUTPUT ACCEPT [28601:1717434]
:POSTROUTING ACCEPT [28601:1717434]
:DOCKER - [0:0]
-A PREROUTING -m addrtype --dst-type LOCAL -j DOCKER
-A OUTPUT ! -d 127.0.0.0/8 -m addrtype --dst-type LOCAL -j DOCKER
-A POSTROUTING -s 172.17.0.0/16 ! -o docker0 -j MASQUERADE
-A POSTROUTING -s 172.17.0.2/32 -d 172.17.0.2/32 -p tcp -m tcp --dport 8080 -j MASQUERADE
-A DOCKER -i docker0 -j RETURN
-A DOCKER ! -i docker0 -p tcp -m tcp --dport 8081 -j DNAT --to-destination 172.17.0.2:8080
COMMIT
#下边的需要自己设置
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [1977:170592]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -s 10.100.0.0/24 -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT    #只有特定IP可以访问80端口-A INPUT -s 172.17.0.2/32 -p tcp -m state --state NEW --dport 8080 -j ACCEPT    #这个是必须要设置的!!!!
-A INPUT -p tcp -m tcp --dport 10052 -j ACCEPT   #这个是可以使用ssh登录jumpserver的主机
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

转载于:https://www.cnblogs.com/huangyanqi/p/9291105.html

安装Jumpserver相关推荐

  1. docker方式安装jumpserver开源堡垒机

    企业级堡垒机 JumpServer 一.jumpserver环境准备 操作系统:Rocky8.6 docker: 20.10.18 mysql: 5.7.30 redis: 6.2.7 二.安装部署 ...

  2. 离线安装JumpServer堡垒机操作记录

    文章目录 一.服务器环境 1.JumpServer要求环境 2.升级内核 二.离线安装JumpServer 1.安装MySQL 2.安装Redis 3.安装JumpServer 3.1.获取离线包并上 ...

  3. K8S安装Jumpserver

    目录 一.Jumpserver介绍 二.安装Jumpserver K8S安装Jumpserver 源码安装Jumpserver 一.Jumpserver介绍 JumpServer 是全球首款开源的堡垒 ...

  4. jumpserver linux图形界面,二、jumpserver介绍、安装jumpserver、登录jumpserver

    一.jumpserver介绍 官网www.jumpserver.org Jumpserver是一款使用Python, Django开发的开源跳板机系统, 助力互联网企业. 高效,用户.资产.权限.审计 ...

  5. Docker安装jumpserver的Gua组件脚本

    echo "安装docker" { curl -fsSL https://get.docker.com/ | sh } || { echo "安装docker 出错,请尝 ...

  6. 一键安装jumpserver

    文章目录 一.jumpserver解决了什么 二.jumpserver和ansible的区别 三.jumpserver安装 1.2.14.2版 2.基础版 3.帮助 4.报错解决 一.jumpserv ...

  7. 最新一键安装jumpserver

    最新一键安装开源堡垒机 jumpserver 安装环境unbun18+,预先安装了docker 20.10.12 官网:jumpserver install 执行代码: curl -sSL https ...

  8. 低于4G内存安装 Jumpserver

    看了JUMPserver的文档要求最低4G内存,去阿里开了一台4G内存机子发现无法安装.. 更换系统还好,升级配置可是要收费的... 看了下安装检测脚本,修改下内存检测要求就可以了. [root@hm ...

  9. 极速安装JumpServer - 官方文档版

    https://jumpserver.readthedocs.io/zh/docs/setup_by_fast.html 转载于:https://www.cnblogs.com/willamwang/ ...

最新文章

  1. 8个计算机视觉深度学习中常见的Bug
  2. 关联性挖掘--Apriori算法详解
  3. cmd 笔记(随时补充)
  4. ASP.NET生成日历
  5. tiny_mce的本地图片上传插件
  6. PackageManagerService源码阅读笔记
  7. Atitit 下推自动机﹙PDA﹚说明书 目录 1. 概念组成与原理成分 1 2. 性状 1 3. 适用场景 主治 适应症 1 3.1. 所有场景()。 1 3.2. 语法解析 构建ast 2 3.
  8. 启示录:新加坡纬壹科技城成功建设经验
  9. 计算机网络技术实训 实训总结,计算机网络技术实训报告总结.docx
  10. Java~大厂面试八股文~强烈推荐视频
  11. 微信小程序 实现背景色渐变(css实现)
  12. ASP.NET建筑工程管理系统
  13. 央视《对话》:家长课堂
  14. 开源机器学习之MATLAB代码--LSTM-SVRNN(五)
  15. 寻找勾股数的一种极快的算法
  16. Python小白机器学习教程:Sklearn精讲
  17. 都是自动挡,AT/CVT/AMT双离合究竟谁最强?
  18. 【Python3脚本分享】三个常用图片处理脚本(镜像处理,gif分解,多图合并)
  19. 104、基于51单片机智能风扇pwm调速红外遥控无线遥控风扇温控风扇系统设计
  20. opencv cpu指令集SSE/AVX

热门文章

  1. 优化SQL Server的内存占用之执行缓存
  2. LINUX 下设置系统时间 DATE 命令
  3. Android.text.TextUtils类
  4. Android 8.0 Oreo 形为变更之 Notification Channels
  5. from torch._C import * ImportError: DLL load failed解决方法
  6. SpringMVC自定义拦截器与异常处理(自定义异常)
  7. JSP与Servelt的区别
  8. 关于CS1061报错(XX不包含XXX的定义,并且找不到类型为XX的第一个参.....)的一种可能的解决的办法...
  9. 关于GestureDetector的onFling方法e1返回null问题
  10. Windows phone msdn 索引