做网站设计的总结,两个彩票网站做赔付,定州市住房和建设局网站,自己如何建设校园网站前言 Jumpserver是一种用于访问和管理远程设备的Web应用程序#xff0c;通常用于对服务器进行安全访问。它基于SSH协议#xff0c;提供了一个安全和可管理的环境来管理SSH访问。Jumpserver是基于Python开发的一款开源工具#xff0c;其提供了强大的访问控制功能#xff0c;…前言 Jumpserver是一种用于访问和管理远程设备的Web应用程序通常用于对服务器进行安全访问。它基于SSH协议提供了一个安全和可管理的环境来管理SSH访问。Jumpserver是基于Python开发的一款开源工具其提供了强大的访问控制功能可以轻松实现用户、主机、命令和审计日志的管理。 Jumpserver的主要功能包括  访问控制Jumpserver提供了灵活的访问控制可以根据用户、角色、主机、命令和时间等因素实现精细的控制。  统一认证Jumpserver支持LDAP、AD、Radius等认证方式可以实现与企业内部认证系统的集成。  会话管理Jumpserver可以记录所有SSH会话并生成审计日志以便管理人员了解用户的操作情况。  实时监控Jumpserver可以实时监控SSH会话并提供了实时监控面板可以随时了解用户的操作情况。  审计日志Jumpserver提供了完整的审计日志功能包括用户登录、会话记录、命令执行情况等方便管理人员进行安全审计和追溯。  多租户Jumpserver支持多租户功能可以实现不同租户的资源隔离和安全管理。  总之Jumpserver是一款功能强大的安全访问控制系统可以为企业提供强大的安全管理和审计功能。 目录 
1 环境配置 
2 修改字符集 
3 安装软件包 
4 编译安装 
5 克隆git clone 
6 下载Jumpserver 
7 配置Jumpserver 7.1 安装所需的Python modules 7.2 安装Redis 7.3 安装MySQL 7.4 修改Jumpserver配置文件 7.5 把配置写入config.yml文件 
8 启动/关闭Jumpserver 
9 部署koko 9.1 使用docker部署 9.2 手工下载部署 9.2.1 部署 9.2.2 启动koko  10 部署guacamole 10.1 部署 10.2 列出本地镜像 
11 部署luna 
12 配置nginx  12.1 nginx的安装 12.2 配置nginx 12.3 运行nginx 12.4 修改nginx的主配置文件 
13 Jumpserver登录测试 1 环境配置 
1关闭防火墙。 
systemctl stop firewalld 
2关闭SELinux。 
setenforce 0 # setenforce 1    #设置SELinux为强制模式 # setenforce 0    #设置SELinux为宽容模式 普及 
获取SELinux状态 
getenforce 
getenforce是一个Linux命令用于查看SELinuxSecurity-Enhanced Linux安全机制的状态SELinux是一款基于Linux内核的安全模块。该命令可以显示当前SELinux的强制模式状态enforcing强制模式、permissive宽容模式或disabled禁用模式。 2 修改字符集 
修改字符集否则可能报“input/output error”问题因为日志里打印了中文。【逐个输入并运行以下命令】 
localedef -c -f UTF-8 -i zh_CN zh_CN.UTF-8 
export LC_ALLzh_CN.UTF-8 
echo LANGzh_CN.UTF-8  /etc/locale.conf 3 安装软件包 
yum -y install wget sqlite-devel xz gcc automake zlib-devel openssl-devel epel-release git 如图显示“完毕”即表示我们安装成功 
接下来我们使用wget命令下载个Python的包下载时间过长耐心等待。 
wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tar.xz  为了确保我们安装成功我们可以使用ls命令查看下 如图即表示安装成功~接下来我们使用tar命令解压压缩包。 
tar xf Python-3.6.1.tar.xz 使用ls命令查看发现有Python-3.6.1即表示我们解压成功 4 编译安装 
首先我们要进入到Python-3.6.1这个目录。 
cd Python-3.6.1 编译安装时间漫长耐心等待 
./configure  make  make install 5 克隆git clone 
进入opt目录下 
cd /opt 
使用Python3的环境。 
python3 -m venv py3source /opt/py3/bin/activate 
运行完毕后会出现(py3) [rootlocalhost opt]#  
使用git命令克隆 git clone git://github.com/kennethreitz/autoenv.git 
【问题解决】 http://t.csdnimg.cn/OQUcr 
问题一 fatal: unable to connect to github.com: github.com[0: 20.205.243.166]: errno????  这是因为有些网络环境可能会限制Git 协议默认使用端口的访问或者直接阻止使用Git协议。因此我们需要将git://github.com/替换为https://github.com/这样可以确保与GitHub进行通信。 
git clone https://github.com/kennethreitz/autoenv.git 
问题二 fatal: unable to access https://github.com/kennethreitz/autoenv.git/: TCP connection reset by peer 我们需要取消http和https代理。  
git config --global --unset http.proxygit config --global --unset https.proxy 如图即表示我们成功啦~ 克隆完成后source默认使用bashrc 
echo source /opt/autoenv/activate.sh  ~/.bashrc 使环境变量生效。 
source ~/.bashrc 6 下载Jumpserver 
我们还是使用克隆命令git clone下载并进入jumpserver目录cd jumpserver并将工作目录切换到主分支git checkout master。时间漫长耐心等待 
git clone https://github.com/jumpserver/jumpserver.git  cd jumpserver  git checkout master 
在此过程中遇到同等问题还是取消http、https代理即可。 7 配置Jumpserver 7.1 安装所需的Python modules 
进入 jumpserver 目录时将自动载入 python 虚拟环境. 
echo source /opt/py3/bin/activate  /opt/jumpserver/.env 
安装依赖RPM包 
cd requirements/ 输入y yum -y install $(cat rpm_requirements.txt) 安装Python依赖 
pip install --upgrade pip 阿里云源下载更快 
pip install -r requirements.txt 
【问题解决】 ERROR: Could not open requirements file: [Errno 2] 没有那个文件或目录: requirements.txt 先创建requirements.txt  
pip freeze  requirements.txt 
重新执行命令 
pip install -r requirement.txt 7.2 安装Redis 
yum -y install redis 设置开机自启 
systemctl enable redis 启动redis 
systemctl start redis 7.3 安装MySQL 
在centos里默认的数据库是mariadb 
yum -y install mariadb mariadb-devel mariadb-server 启动mariadb 
systemctl start mariadb 
设置开机自启 
systemctl enable mariadb 进入mariadb 
mysql 创建jumpserver数据库默认使用utf8字符集 
create database jumpserver default charset utf8; 给本机授权 
grant all on jumpserver.* to jumpserveradmin127.0.0.1 identified by jumpserverpwd; 刷新数据库 
flush privileges; \q退出 
\q 7.4 修改Jumpserver配置文件 
先进入/opt/jumpserver目录下。因为我们刚才在/opt/jumpserver/requirements下所以直接cd ..进入上一目录即可。 
cd .. 
cp config_example.yml config.yml 生成随机SECRET_KEYSECRET_KEYcat /dev/urandom | tr -dc A-Za-z0-9 | head -c 50 注意A-Za-z0-9 中不能有空格且符号不能写错位置也不能错否则将会遇到“-bash: /dev/urandom: 权限不够”的情况。 
echo $SECRET_KEY 把SECRET_KEY写入bashrc中。 
echo SECRET_KEY$SECRET_KEY  ~/.bashrc 生成随机BOOTSTRAP_TOKEN 
BOOTSTRAP_TOKENcat /dev/urandom | tr -dc A-Za-z0-9 | head -c 16 
echo $BOOTSTRAP_TOKEN 把BOOTSTRAP_TOKEN写入bashrc中。 
echo BOOTSTRAP_TOKEN$BOOTSTRAP_TOKEN  ~/.bashrc 7.5 把配置写入config.yml文件 
逐个运行如下指令 
sed -i s/SECRET_KEY:/SECRET_KEY: $SECRET_KEY/g /opt/jumpserver/config.yml 
sed -i s/BOOTSTRAP_TOKEN:/BOOTSTRAP_TOKEN: $BOOTSTRAP_TOKEN/g /opt/jumpserver/config.yml 
sed -i s/# DEBUG: true/DEBUG: false/g /opt/jumpserver/config.yml 
sed -i s/# LOG_LEVEL: DEBUG/LOG_LEVEL: ERROR/g /opt/jumpserver/config.yml 
sed -i s/# SESSION_EXPIRE_AT_BROWSER_CLOSE: false/SESSION_EXPIRE_AT_BROWSER_CLOSE: true/g /opt/jumpserver/config.yml 
sed -i s/DB_PASSWORD: /DB_PASSWORD: $DB_PASSWORD/g /opt/jumpserver/config.yml 
echo -e \033[31m 你的SECRET_KEY是 $SECRET_KEY \033[0m echo -e \033[31m 你的BOOTSTRAP_TOKEN是 $BOOTSTRAP_TOKEN \033[0m 确认内容有没有错误 vi config.yml 
vi config.yml 
修改如图所示内容 修改成如图所示 配置完成啦~ 8 启动/关闭Jumpserver 
在/opt/jumpserver路径下。 
启动 
./jms start  
【看到一堆ok即表示启动成功如果没成功显示error则表示配置有问题则重新vi config.yml配置】 后台启动后台运行使用 -d 参数 
./jms start -d 
关闭 
./jms stop 
【问题解决】http://t.csdnimg.cn/8XoNi Traceback (most recent call last):   File ./jms, line 11, in module     import django ModuleNotFoundError: No module named django 使用pip install 模块名下载。 
pip install Django 
下载完成后重新启动就好。 
如果下载不成功出现一堆红色下载不成功。 更新 pip 到最新版本  
pip install --upgrade pip 
再执行一次就好了。 
pip install Django 最后一行显示successfully installed等表示成功安装django。 
成功啦~ 9 部署koko 
koko支持终端管理默认端口port为2222。 
【提供两种方法自行选择部署】 9.1 使用docker部署 
下载docker 
yum -y install docker 启动docker 
systemctl start docker 
查看自己的IP地址。IP地址在“2ens33”中inet后面 
ip a Server_IP自己的IP地址。 
Server_IP192.168.10.111 
查看BOOTSTRAP_TOKEN值 
echo $BOOTSTRAP_TOKEN 根据查看的值输入下面指令。值不一样不要照搬下面指令 
BOOTSTRAP_TOKENBZYt8bkFhzZjAjc2 
docker run --name jms_koko -d -p 2222:2222 -p 5000:5000 -e CORE_HOSThttp://$Server_IP:8080 -e BOOTSTRAP_TOKEN$BOOTSTRAP_TOKEN jumpserver/jms_koko:1.5.5 显示comolete就说明部署完成啦~ 9.2 手工下载部署 
【本人采用docker部署所以手工部署就不附图啦~】 9.2.1 部署 
进入/opt目录。 
cd /opt 
使用wget命令下载压缩包。【官方网站https://github.com/jumpserver/koko/releases】 
wget https://github.com/jumpserver/koko/releases/download/1.5.2/koko-master-37daa82-linux-amd64.tar.gz 解压 
tar -xf koko-master-37daa82-linux-amd64.tar.gz 进入/opt/kokodir 
cd /opt/kokodir 
授权 
chown -R root:root /opt/kokodir 
先使用cp命令备份一下cp 源文件路径  目标文件夹 
cp config_example.yml config.yml 编辑config.yul   https://docs.jumpserver.org/zh/v3/installation/source_install/koko_install/#13 
vi config.yml 
【BOOTSTRAP_TOKEN需要 jumpserver/config.yml 里面获取保证一致】  
# 项目名称, 会用来向Jumpserver注册, 识别而已, 不能重复
# NAME: {{ Hostname }}# Jumpserver项目的url, api请求注册会使用
CORE_HOST: http://127.0.0.1:8080   # Core 的地址# Bootstrap Token, 预共享秘钥, 用来注册coco使用的service account和terminal
# 请和jumpserver 配置文件中保持一致注册完成后可以删除
BOOTSTRAP_TOKEN: ********  # 和 Core config.yml 的值保持一致# 启动时绑定的ip, 默认 0.0.0.0
BIND_HOST: 0.0.0.0# 监听的SSH端口号, 默认2222
SSHD_PORT: 2222            # 使用 0.0.0.0:2222# 监听的HTTP/WS端口号默认5000
HTTPD_PORT: 5000           # 使用 0.0.0.0:5000# 项目使用的ACCESS KEY, 默认会注册,并保存到 ACCESS_KEY_STORE中,
# 如果有需求, 可以写到配置文件中, 格式 access_key_id:access_key_secret
# ACCESS_KEY: null# ACCESS KEY 保存的地址, 默认注册后会保存到该文件中
# ACCESS_KEY_FILE: data/keys/.access_key# 设置日志级别 [DEBUG, INFO, WARN, ERROR, FATAL, CRITICAL]
LOG_LEVEL: DEBUG           # 开发建议设置 DEBUG, 生产环境推荐使用 ERROR# SSH连接超时时间 (default 15 seconds)
# SSH_TIMEOUT: 15# 语言 [en,zh]
# LANGUAGE_CODE: zh# SFTP的根目录, 可选 /tmp, Home其他自定义目录
# SFTP_ROOT: /tmp# SFTP是否显示隐藏文件
# SFTP_SHOW_HIDDEN_FILE: false# 是否复用和用户后端资产已建立的连接(用户不会复用其他用户的连接)
# REUSE_CONNECTION: true# 资产加载策略, 可根据资产规模自行调整. 默认异步加载资产, 异步搜索分页; 如果为all, 则资产全部加载, 本地搜索分页.
# ASSET_LOAD_POLICY:# zip压缩的最大额度 (单位: M)
# ZIP_MAX_SIZE: 1024M# zip压缩存放的临时目录 /tmp
# ZIP_TMP_PATH: /tmp# 向 SSH Client 连接发送心跳的时间间隔 (单位: 秒)默认为30, 0则表示不发送
# CLIENT_ALIVE_INTERVAL: 30# 向资产发送心跳包的重试次数默认为3
# RETRY_ALIVE_COUNT_MAX: 3# 会话共享使用的类型 [local, redis], 默认local
# SHARE_ROOM_TYPE: local# Redis配置
# REDIS_HOST: 127.0.0.1      # 如果需要部署多个 koko, 需要通过 redis 来保持会话
# REDIS_PORT: 6379
# REDIS_PASSWORD:
# REDIS_CLUSTERS:
# REDIS_DB_ROOM: 9.2.2 启动koko  
./koko 10 部署guacamole 
【基于HTML5和 JavaScript 的VNC查看器】 10.1 部署 
docker run --name jms_guacamole -d -p 8081:8081 -e JUMPSERVER_SERVERhttp://$Server_IP:8080 -e BOOTSTRAP_TOKEN$BOOTSTRAP_TOKEN jumpserver/jms_guacamole:1.5.5 显示如图所示内容即表示部署成功 
【问题解决】 /usr/bin/docker-current: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?. See /usr/bin/docker-current run --help. 启动下docker就好啦~ 
systemctl start docker 
或者重新启动下docker服务。 
systemctl restart docker.service 10.2 列出本地镜像 
docker images 11 部署luna 
与nginx结合支持Web Terminal前端。 
进入opt目录。 
cd /opt/ 
wget命令下载luna压缩包。 
wget https://github.com/jumpserver/luna/releases/download/1.5.5/luna.tar.gz 【问题解决】http://t.csdnimg.cn/h1KAe [rootlocalhost opt]# wget https://github.com/jumpserver/luna/releases/download/1.5.5/luna.tar.gz --2023-10-10 10:41:10--  https://github.com/jumpserver/luna/releases/download/1.5.5/luna.tar.gz 正在解析主机 github.com (github.com)... 20.205.243.166 正在连接 github.com (github.com)|20.205.243.166|:443... 已连接。 无法建立 SSL 连接。 原因 
wget在使用HTTPS协议时默认会去验证其网站的证书而这个证书验证经常会失败。 
问题解决 
方法一在后面加“--no-check-certificate”。执行时候不验证SSL 
--no-check-certificate 
【在最后加在wget后面加还会报同样的错误】  搞定啦~  
方法二将https换成http 更换协议将https协议换成http 解压 
tar xf luna.tar.gz 授权 
chown -R root:root luna 12 配置nginx  12.1 nginx的安装 
http://t.csdnimg.cn/p03bl 
1.配置nginx所需环境 
yum -y install gcc gcc-c make zlib-devel pcre pcre-devel openssl-devel pcre使nginx支持http rewrite模块 
openssl 使nginx支持ssl 
zlib提供nginx对http包的内容进行gzip压缩 
2.获取nginx压缩包 
方法一在官网https://nginx.org/en/download.html直接下载.tar.gz压缩包然后直接拉到linux里面/使用rz命令上传。1.如果压缩包拉不进去使用yum -y install lrzsz指令再进行拉取。2.rz命令上传需先下载rz 
yum -y install lrzsz 
方法二使用wget命令下载需要系统提前安装wget如果没有安装使用yum install wget进行安装。 
3.解压 
解压到 /usr/local 下 
tar xzvf nginx-1.23.1.tar.gz -C /usr/local/ 4.配置 
进入解压后的目录下。 
cd /usr/local/nginx-1.23.1/ 可以配置啦~ O(∩_∩)O哈哈~ 
./configure --prefix/usr/local/nginx  5.编译安装 
make  make install 编译安装成功 12.2 配置nginx 
cd /usr/local/nginx/conf/ 
ls命令查看 创建conf.d文件夹 
mkdir conf.d cd conf.d/ 创建并编辑Jumpserver.conf【注意一定是以.conf结尾。】 
vi Jumpserver.conf 
写入内容如下 
server {listen 80;client_max_body_size 100m;  # 录像及文件上传大小限制location /luna/ {try_files $uri / /index.html;alias /opt/luna/;  # 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/;proxy_buffering off;proxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection upgrade;proxy_set_header X-Real-IP $remote_addr;proxy_set_header Host $host;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;access_log off;}location /koko/ {proxy_pass       http://localhost:5000/koko/;proxy_set_header X-Real-IP $remote_addr;proxy_set_header Host $host;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;access_log off;}location /guacamole/ {proxy_pass       http://localhost:8081/;proxy_buffering off;proxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection $http_connection;proxy_set_header X-Real-IP $remote_addr;proxy_set_header Host $host;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;access_log off;}location / {proxy_pass http://localhost: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;}
} 12.3 运行nginx 
/usr/local/nginx/sbin/nginx 后面加-t显示ok,successful即表示运行成功~ 12.4 修改nginx的主配置文件 
cd /usr/local/nginx/conf/ 
编辑nginx.conf文件。 
vi nginx.conf  
编辑前 在keepalive_timeout  65;下面添加如下命令。 
include /usr/local/nginx/conf/conf.d/*.conf; 
编辑后  编辑完成后保存退出。 
重新启动nginx。 
/usr/local/nginx/sbin/nginx -s reload 没有报错就可以开始登录测试吧~ 
【如果报错则表示刚才配置文件编写有问题回去重新检查。】 13 Jumpserver登录测试 
浏览器使用IP地址登录。 
错误页面 正确页面会显示Jumpserver开源堡垒机登录页面。 好啦接下来就可以使用Jumpserver开源堡垒机啦~ 
创作不易给个三连吧~