如何使用内网穿透工具在公网实现实时监测DashDot服务器仪表盘

文章目录

    • 1. 本地环境检查
      • 1.1 安装docker
      • 1.2 下载Dashdot镜像
    • 2. 部署DashDot应用
    • 3. 本地访问DashDot服务
    • 4. 安装cpolar内网穿透
    • 5. 固定DashDot公网地址

本篇文章我们将使用Docker在本地部署DashDot服务器仪表盘,并且结合cpolar内网穿透工具可以实现公网实时监测服务器系统、处理器、内存、存储、网络、显卡等,并且拥有API接口。

DashDot是一款简单、实用的开源现代服务器仪表盘,主要应用于小型 VPS 和私人服务器(比如说NAS),它是一个界面非常漂亮的监控服务器面板!

1. 本地环境检查

本篇文章演示环境为CentOS 7,使用Xshell7进行ssh,需安装Docker(本次实践部署环境为个人测试环境,生产环境请谨慎)

1.1 安装docker

没有安装Docker的小伙伴需安装Docker,已有Docker可跳过以下步骤。

首先在终端中执行下方命令:

添加Docker源

# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg# Add the repository to Apt sources:
echo \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

安装Dokcer包

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

通过运行映像来验证 Docker 引擎安装是否成功

sudo docker run hello-world

检查Docker服务是否正常运行,确保Docker正常运行

# systemctl status docker
● docker.service - Docker Application Container EngineLoaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)Active: active (running) since Sun 2024-01-28 21:30:09 PST; 11s agoDocs: https://docs.docker.comMain PID: 3158 (dockerd)Tasks: 51Memory: 146.4MCGroup: /system.slice/docker.service

检查Docker版本

# docker -v
Docker version 20.10.17, build 100c701

检查docker compose版本,确保2.0以上

# docker compose version
Docker Compose version v2.19.1

1.2 下载Dashdot镜像

从docker hub拉取Dashdot镜像

 docker pull   mauricenino/dashdot

image-20240129161742919

2. 部署DashDot应用

创建部署目录

mkdir -p /data/dashdot
cd  /data/dashdot

使用docker-cli创建Dashdot容器

docker  run  -d  \-p 8987:3001 \-v /etc/os-release:/etc/os-release:ro \-v /proc/1/ns/net:/mnt/host_ns_net:ro \--privileged \mauricenino/dashdot

编辑docker-compose.yaml文件

version: '3'services:dashdot:image: mauricenino/dashdotports:- 8987:3001volumes:- /etc/os-release:/etc/os-release:ro- /proc/1/ns/net:/mnt/host_ns_net:roprivileged: true

使用docker compose方式快速创建Dashdot容器

 docker compose up -d

image-20240129161858444

检查Dashdot容器状态,确保Dashdot容器正常启动

 docker ps

image-20240129162137481

检查Dashdot容器运行日志,确保Dashdot服务正常运行

# docker compose logs  |grep 3001
dashdot-dashdot-1  | listening on *:3001
dashdot-dashdot-1  |     port: 3001,

3. 本地访问DashDot服务

访问地址:http://192.168.149.143:8987,将IP替换为自己服务器IP地址,在浏览器可以访问Dashdot服务器仪表盘首页。可以看出它识别出我的CPU ,内存,硬盘等信息都还是非常准确的

cc62e0093676b31cdb2d1860103d0e9

还支持暗黑模式,可以看出这个页面真的是非常的漂亮,并且全部以实时动态图形化的模块界面展示出来了,既美观又直观

138841987c987e7669069c1b34fb797

我们就成功在本地搭建了DashDot,但是如果你是一名程序员,有时候我们需要异地来监测自己的服务器,并且害怕网站被攻击,这个时候我们就需要使用cpolar内网穿透工具,实现在公网上监测服务器、网站、应用等。

4. 安装cpolar内网穿透

下面是安装cpolar步骤:

cpolar官网地址: https://www.cpolar.com

  • 使用一键脚本安装命令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • 向系统添加服务
sudo systemctl enable cpolar
  • 启动cpolar服务
sudo systemctl start cpolar

cpolar安装成功后,在外部浏览器上访问Linux 的9200端口即:【http://服务器的局域网ip:9200】,使用cpolar账号登录,登录后即可看到cpolar web 配置界面,结下来在web 管理界面配置即可。

image-20230831171159175

接下来配置一下DashDot的公网地址,

登录后,点击左侧仪表盘的隧道管理——创建隧道,创建一个ashDot的公网http地址隧道

  • 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
  • 协议:选择http
  • 本地地址:8987 (本地访问的地址)
  • 域名类型:免费选择随机域名
  • 地区:选择China Top

点击创建

c3a958a16e2a3481b951d445c4dc97c

隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http 和https

9d45c8a53f1a8ee47855a71fd2575b0

使用上面的Cpolar https公网地址,在任意设备的浏览器进行访问,即可成功看到DashDot界面,这样一个公网地址且可以远程访问就创建好了,使用了cpolar的公网域名,无需自己购买云服务器,即可发布到公网进行远程访问!

179968dde2681f098d93af0582aa65f

小结

如果我们需要长期异地远程访问DashDot进行监测,由于刚才创建的是随机的地址,24小时会发生变化。另外它的网址是由随机字符生成,不容易记忆。如果想把域名变成固定的二级子域名,并且不想每次都重新创建隧道,可以选择创建一个固定的http地址来解决这个问题。

5. 固定DashDot公网地址

我们接下来为其配置固定的HTTP端口地址,该地址不会变化,方便分享给别人长期查看你的博客,而无需每天重复修改服务器地址。

配置固定http端口地址需要将cpolar升级到专业版套餐或以上。

登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称

ab167a7ae0920aaed958fcf267d67e0

保留成功后复制保留成功的二级子域名的名称c05b5f40512fe9bbe40e7d892d10763

返回登录Cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑

e4d9eea7113fec72f8a183ee5d6468e

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名

点击更新(注意,点击一次更新即可,不需要重复提交)

b6d45e2c0b13660be8bbfa7f1fb2745

更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了固定的二级子域名名称的域名

ce4ba78d8071cdf8860750497223285

最后,我们使用固定的公网https地址访问,可以看到访问成功,这样一个固定且永久不变的公网地址就设置好了,随时随地都可以进行异地监测本地服务器了系统!

3449856081e99269f7dfcc8ef4dfc2d

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/662449.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024 TikTok Shop本土店入驻流程全解,建议收藏

如果要在2023选出最具潜力的跨境电商平台,TikTok Shop无疑是一个佼佼者。从上线全托管模式初出锋芒,再到遭遇印尼、东南亚政策打击,最后在黑五电商大促中取得辉煌成绩。2024TikTok势必是红海一片,现在上车还来得及!下面…

算法学习-匈牙利算法

例题: 题目:活动 - AcWing 二分图的最大匹配 给定一个二分图,其中左半部包含 n1 个点(编号 1∼n1),右半部包含 n2 个点(编号 1∼n2),二分图共包含 m条边。 数据保证任意…

python实现的LDA算法

实现LDA算法需要用到一些数学和概率统计的知识,你需要根据LDA算法的具体公式,实现初始化模型参数、Gibbs采样、模型参数更新等具体的步骤。同时,还需要读取训练文件和词典文件,以及保存模型到文件的功能。 理解LDA算法的实现思路…

SpringBoot security 安全认证(三)——自定义注解实现接口放行配置

背景:通过Security实现了安全管理,可以配置哪些接口可以无token直接访问。但一个麻烦就是每增加一个匿名访问接口时都要去修改SecurityConfig配置,从程序设计上讲是不太让人接受的。 本节内容:即是解决以上问题,增加一…

新媒体运营-背景分析(个人)篇

背景分析(个人) 1 、我为什么要拍抖音? (初心) 我有口才?有才艺?想记录自己的成长故事?宣传产品?我有工厂,看能不能有更多合作机会? 2 、我拍抖音…

Model Checking Guided Testing for Distributed Systems——论文泛读

EuroSys 2023 Paper 论文阅读笔记整理 问题 分布式系统已成为云计算的支柱,不正确的系统设计和实现可能严重影响分布式系统的可靠性。尽管使用形式化规范建模的分布式系统设计可以通过形式化模型检查进行验证,但要弄清其相应的实现是否符合已验证的规范…

【EI会议征稿通知】第三届信号处理与通信安全国际学术会议(ICSPCS 2024)

第三届信号处理与通信安全国际学术会议(ICSPCS 2024) 2024 3rd International Conference on Signal Processing and Communication Security 信号处理和通信安全是现代信息技术应用的重要领域,近年来这两个领域的研究相互交叉促进&#xf…

云贝教育 | 【技术文章】Oracle 19c RAC修改网络

注: 本文为云贝教育 刘峰 原创,请尊重知识产权,转发请注明出处,不接受任何抄袭、和未经注明出处的转载。 原文链接:【Oracle 19c】Oracle 19c RAC修改网络 - 课程体系 - 云贝教育 (yunbee.net) 变更目标 ip类型 节点 原IP 目…

【机器学习】贝叶斯垃圾邮件识别

实验三:贝叶斯垃圾邮件识别 本次作业以垃圾邮件分类任务为基础,要求提取文本特征并使用朴素贝叶斯算法进行垃圾邮件识别(调用已有工具包或自行实现)。 1 任务介绍 ​ 电子邮件是互联网的一项重要服务,在大家的学习、…

【ADI 知识库】X 波段相控阵开发平台 硬件 2

ADAR1000EVAL1Z (Stingray) ADAR1000-EVAL1Z评估板是一款模拟波束成形前端,设计用于测试ADAR1000和ADTR1107的性能。ADAR1000 是一款 8 GHz 至 16 GHz、4 通道、X 波段和 Ku 波段波束成形器 IC。ADTR1107是 6 GHz 至 18 GHz 前端发送/接收模块。 ADAR1000-EVAL1Z板…

【Java系列】Java 8 日期/时间 API 简介

目录 1. 概述 2. 现有日期/时间 API 的问题 3. 使用 LocalDate/LocalTime/LocalDateTime API 3.1 LocalDate 3.2 LocalTime 3.3 LocalDateTime 4. 使用 ZonedDateTime API 5. 使用 Period and Duration API 5.1 Period 5.2 Duration 6. 与 Date 和 Calendar 的兼容性…

网络异常案例五_SYN被丢弃

问题现象 公司同事使用的时候,反馈系统不稳定,访问的时候,有时候会出现白屏(连接超时),或者系统页面点击没有响应,过一会之后刷新系统又可以正常展示了。之前未收到过类似反馈,一直…

Axure 动态面板初使用 - 实现简单的Banner图轮播效果

使用工具版本 Axure 9 实现的效果 步骤过程 1、打开Axure工具,从元件库拖个动态面板到空白页; 2、给面板设置一个常用的banner尺寸,举个栗子:343151(移动端我常用的banner尺寸),顺便给它起个名字,就叫…

RESTful API如何使用它构建web应用程序

RESTful API(Representational State Transfer),即表现层状态转移,是一种通过 HTTP 协议传输数据的应用程序接口(API)设计风格。 RESTful API 的设计原则包括以下几个方面: 资源(R…

QT学习日记 | 信号与槽

目录 前言 一、初始信号与槽 1、信号与槽的本质 2、信号与槽的使用 3、内置信号、内置槽函数与自定义信号、自定义槽函数 (1)文档查询 (2)自定义信号与内置槽函数的使用 4、信号与槽函数关联关系 5、带参数的信号与槽函数…

【软件设计师笔记】程序语言设计考点

【考证须知】IT行业高含金量的证书(传送门)💖 【软件设计师笔记】计算机系统基础知识考点(传送门)💖 【软件设计师笔记】操作系统考点(传送门)💖 🐓 编程语言之间的翻译形式 汇编 高级程序不能直接在计算机上执行,…

yolov8训练自己的关键点检测模型

参考: https://blog.csdn.net/weixin_38807927/article/details/135036450 标注数据集 安装labelme pip install labelme -i https://pypi.tuna.tsinghua.edu.cn/simple如果报错 $ labelme 2024-01-31 03:16:20,636 [INFO ] __init__:get_config:67- Loading …

YOLOv5改进系列(29)——添加DilateFormer(MSDA)注意力机制(中科院一区顶刊|即插即用的多尺度全局注意力机制)

【YOLOv5改进系列】前期回顾: YOLOv5改进系列(0)——重要性能指标与训练结果评价及分析 YOLOv5改进系列(1)——添加SE注意力机制

面试宝典之深谈JVM

面试宝典之深谈JVM 1.为什么需要JVM,不要JVM可以吗? 1.JVM可以帮助我们屏蔽底层的操作系统 一次编译,到处运行 2.JVM可以运行Class文件 2.JDK,JRE以及JVM的关系 3.我们的编译器到底干了什么事? 仅仅是将我们的 .ja…

深入理解 Golang 的 crypto/elliptic:椭圆曲线密码学的实践指南

深入理解 Golang 的 crypto/elliptic:椭圆曲线密码学的实践指南 引言crypto/elliptic 库概览基本使用教程高级应用案例性能与安全考量结论 引言 在当今数字时代,数据安全和加密技术成为了信息技术领域的重中之重。特别是在网络通信和数据存储领域&#…