当前位置: 首页 > news >正文

Xrdp+Cpolar实现远程访问Linux Kali桌面

Xrdp+Cpolar实现远程访问Linux Kali桌面

文章目录

  • Xrdp+Cpolar实现远程访问Linux Kali桌面
    • 前言
    • 1. Kali 安装Xrdp
    • 2. 本地远程Kali桌面
    • 3. Kali 安装Cpolar 内网穿透
    • 4. 配置公网远程地址
    • 5. 公网远程Kali桌面连接
    • 6. 固定连接公网地址
    • 7. 固定地址连接测试

前言

Kali远程桌面的好处在于,它允许用户从远程位置访问Kali系统,而无需直接物理访问该系统。这使得用户可以在不同的位置使用Kali系统,而无需在每个位置都安装Kali系统。此外,远程桌面还可以提高Kali系统的安全性,因为用户可以在不直接接触Kali系统的情况下进行工作,从而减少了潜在的安全风险。

下面介绍Kali 安装Xrdp 远程桌面工具,并结合Cpolar 内网穿透软件实现远程访问Kali桌面,跳出局域网限制.

1. Kali 安装Xrdp

Kali Linux默认使用Xfce桌面环境,因此可以使用Xrdp软件来启用远程桌面,执行下面命令更新apt包管理器

sudo apt update

更新完成后安装Xrdp

sudo apt install xrdp

安装完成后,执行下面命令对Xrdp 进行操作

sudo systemctl enable xrdp #加入开机启动
sudo systemctl start xrdp  #启动服务
sudo systemctl status xrdp #查看状态

执行上面启动命令后,再执行查看状态命令,可以看到状态为active,同时下面还可以看到访问的端口,为3389,下面我们进行本地连接访问!

image-20231114152742153

2. 本地远程Kali桌面

上面Xrdp 运行成功后,接下来本地测试远程Kali桌面,首先退出桌面到锁屏界面,不退出桌面则无法远程, 点击右上角图标,再点击Log Out,退出到锁屏界面

image-20231114153159398

接下来打开Windows 远程桌面工具,输入Kali 局域网ip地址,点击连接

image-20231114153335938

会弹出输入用户名和密码界面,输入Kali的登录用户名和密码,点击ok

image-20231114153426366

这样就成功远程到了Kali 界面,本地安装访问测试成功,下面安装Cpolar工具,实现远程也可以访问

image-20231114153529645

3. Kali 安装Cpolar 内网穿透

kali 是基于Linux 的系统,可以使用cpolar Linux 安装方式一键快捷安装,在kali的命令界面,我们输入下面指令,如首次使用,可以在下方官网链接中注册账号!

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

  • 使用一键脚本安装命令(执行命令后如果卡住表示需要输入kali sudo的密码)
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • 向系统添加服务
sudo systemctl enable cpolar
  • 启动cpolar服务
sudo systemctl start cpolar

cpolar安装和成功启动服务后,浏览器上访问9200端口即:【http://127.0.0.1:9200】,使用cpolar官网注销的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可

image-20230901153135328

4. 配置公网远程地址

登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,注意不要与已有的隧道名称重复
  • 协议:tcp
  • 本地地址:3389 (Xrdp默认端口)
  • 域名类型:临时随机TCP端口
  • 地区:选择China VIP

点击创建

image-20231114155418132

然后打开左侧在线隧道列表,查看刚刚创建隧道后生成的 远程 tcp连接的地址,这个地址就是公网连接地址,我们可以在任意设备上使用该地址进行远程桌面连接

image-20231114155524897

5. 公网远程Kali桌面连接

上面在Cpolar中创建了远程Kali桌面的公网地址,接下来在Windows 远程桌面工具上使用公网地址进行远程Kali桌面连接,接下来退出桌面到锁屏界面,不退出桌面则无法远程, 点击右上角图标,再点击Log Out,退出到锁屏界面

image-20231114153159398

打开Windows 远程桌面工具,输入上面我们创建的公网地址

image-20231114155834306

会弹出输入用户名和密码界面,输入Kali的登录用户名和密码,点击ok

image-20231114160927422

我们可以看到连接成功,这样我们一个远程Kali桌面的公网地址就设置好了

image-20231114161045242

小结

为了更好地演示,我们在前述过程中使用了Cpolar生成的隧道,其公网地址是随机生成的。

这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址是随机生成,这个地址在24小时内会发生随机变化,更适合于临时使用。

我一般会使用固定TCP域名,原因是我希望将地址发送给同事或客户时,它是一个固定、易记的公网地址,这样更显正式,便于流交协作。

6. 固定连接公网地址

要注意的是,以上步骤使用的是随机临时tcp端口地址,所生成的公网地址为随机临时地址,该公网地址24小时内会随机变化。我们接下来为其配置固定的TCP端口地址,该地址不会变化,设置后将无需每天重复修改地址。

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

保留一个固定tcp地址

登录Cpolar官网,点击左侧的预留,找到保留的tcp地址,我们来为我的世界保留一个固定tcp地址:

  • 地区:选择China vip
  • 描述:即备注,可自定义

点击保留

image-20231114162448758

地址保留成功后,系统会生成相应的固定公网地址,将其复制下来

image-20231114162509184

打开Cpolar web ui管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到我们上面创建的TCP隧道,点击右侧的编辑

image-20231114163201605

修改隧道信息,将保留成功的固定tcp地址配置到隧道中

  • 端口类型:修改为固定tcp端口
  • 预留的tcp地址:填写官网保留成功的地址,

点击更新

image-20231114163230449

隧道更新成功后,点击左侧仪表盘的状态——在线隧道列表,可以看到公网地址已经更新成为了固定TCP地址。

image-20231114163255663

7. 固定地址连接测试

固定好了地址后,使用我们固定的TCP地址进行连接,首先还是退出桌面到锁屏界面,不退出桌面则无法远程, 点击右上角图标,再点击Log Out,退出到锁屏界面

image-20231114153159398

然后打开windows远程桌面工具,输入我们固定的TCP地址

image-20231114163425475

会弹出输入用户名和密码界面,输入Kali的登录用户名和密码,点击ok

image-20231114163455889

可以看到,固定地址远程成功,这样一个固定的远程Kali桌面公网地址就设置好了

image-20231114163600658

相关文章:

Xrdp+Cpolar实现远程访问Linux Kali桌面

XrdpCpolar实现远程访问Linux Kali桌面 文章目录 XrdpCpolar实现远程访问Linux Kali桌面前言1. Kali 安装Xrdp2. 本地远程Kali桌面3. Kali 安装Cpolar 内网穿透4. 配置公网远程地址5. 公网远程Kali桌面连接6. 固定连接公网地址7. 固定地址连接测试 前言 Kali远程桌面的好处在于…...

赚钱

《赚钱》 作者/罗光记 赚钱劳身影未安, 岁月匆匆易逝难。 银钱到手笑颜开, 酒醉灯昏影独寒。 花前月下欢声起, 万金财富待来年。 诗酒飘香梦中笑, 人生何求更多钱。...

Django command执行脚本

python web项目中经常会使用到脚本,一般来说有两种很简单的方法,一种是直接python function,另一种就是 django 自定义command。 对比常规脚本 这里举个简单的例子,比如初始化数据、文件名称为initialize_data.py (1…...

GLSL: Shader cannot be patched for instancing.

最近在 unity 里碰到了这么一个错误,只有这么点信息,让人看着挺懵逼的,后来发现,是因为 unity 的 terrain 组件在设置里勾了 Draw Instanced 选项导致的,感觉应该是 unity 的 bug。 因为错出在 2021,2022就…...

Django测试环境搭建及ORM查询(创建外键|跨表查询|双下划线查询 )

文章目录 一、表查询数据准备及测试环境搭建模型层前期准备测试环境搭建代码演示 二、ORM操作相关方法三、ORM常见的查询关键字四、ORM底层SQL语句五、双下划线查询数据查询(双下划线)双下划线小训练Django ORM __双下划线细解 六、ORM外键字段创建基础表…...

css 设置网页最小字体为12px

谷歌浏览器默认最小字体为12px,但保不准万一有一天谷歌取消这个默认设置,或者一些人在设置中改了最小字体,为了防止万一,故系统设置了最小字体,主要利用了min和var的特性 :root {--responsive-font-size-primary: max…...

Failed to restart networking.service: Unit networking.service not found.

虚拟机Vmware中的Ubuntu20.0没有网络,ifconfig命令没有IP 如果在VMware中运行的Ubuntu 20.04虚拟机没有网络,并且ifconfig命令没有显示IP地址,你可以采取以下几个步骤来诊断和解决问题: 确认虚拟机网络设置: 确保虚拟机的网络适配器是开启的,并且配置正确。确认是否选择…...

基于单片机设计的水平仪(STC589C52+MPU6050)

一、前言 【1】项目背景 水平仪是一种常见的测量工具,用于检测物体或设备的水平姿态。在许多应用中,如建筑、制造和航空等领域,保持设备的水平姿态是非常重要的。为了实现实时的水平检测和显示,基于单片机设计的水平仪是一个常见…...

射频与微波综合测试仪-4958手持式微波综合测试仪

4958 微波综合测试仪 频率范围:1MHz~20GHz 4958手持式微波综合测试仪测量频率范围可达1MHz~20GHz,集电缆和天线驻波比测试、不连续点故障定位测试、插入损耗和增益测试、频谱分析、功率测量等多种功能于一体,携带方便&…...

Redis内存淘汰机制

Redis内存淘汰机制 引言 Redis 启动会加载一个配置&#xff1a; maxmemory <byte> //内存上限 默认值为 0 (window版的限制为100M)&#xff0c;表示默认设置Redis内存上限。但是真实开发还是需要提前评估key的体量&#xff0c;提前设置好内容上限。 此时思考一个问题…...

EXCEL——计算数据分散程度的相关函数

一、PERCENTIL函数 1.函数介绍 通常用来返回数据集给定百分点上的值。 2.函数解读 函数公式&#xff1a; PERCENTILE(数据, 百分点) 参数释义&#xff1a; 数据&#xff08;必填&#xff09;&#xff1a;待处理的数组或数据区域。 百分点&#xff08;必填&#xff09;&…...

详解如何使用Jenkins一键打包部署SpringBoot项目

目录 1、Jenkins简介 2、Jenkins的安装及配置 2.1、Docker环境下的安装​编辑 2.2、Jenkins的配置 3、打包部署SpringBoot应用 3.1、在Jenkins中创建执行任务 3.2、测试结果 1、Jenkins简介 任何简单操作的背后&#xff0c;都有一套相当复杂的机制。本文将以SpringBoot应…...

【JVM】内存区域划分、类加载机制(双亲委派模型图解)、垃圾回收(可达性分析、分代回收)

一、JVM简介 JVM (Java虚拟机) 是执行Java字节码的虚拟机。它是Java平台的核心&#xff0c;并且为Java代码提供了跨平台的能力。JVM 是一种虚拟的计算机&#xff0c;在其上运行的程序是Java字节码&#xff0c;它提供了Java代码在不同操作系统和硬件平台上执行的能力。JVM 将Ja…...

解决 requests 2.28.x 版本 SSL 错误

最近&#xff0c;在使用requests 2.28.1版本进行HTTP post传输时&#xff0c;您可能遇到了一个问题&#xff0c;即SSL验证失败并显示错误消息(Caused by SSLError(SSLCertVerificationError(1, [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get loc…...

hive数据质量规范

当谈到大数据处理和分析时&#xff0c;数据质量成为至关重要的因素。Hive作为一种常用的大数据查询和分析工具&#xff0c;也需要遵循一定的数据质量规范以确保数据的准确性、一致性和可靠性。本文将介绍Hive数据质量规范的相关内容&#xff0c;并提供代码示例来说明如何在Hive…...

Jenkinsfile+Dockerfile前端vue自动化部署

前言 本篇主要介绍如何自动化部署前端vue项目 其中&#xff0c;有两种方案&#xff1a; 第一种是利用nginx进行静态资源转发&#xff1b;第二种方案是利用nodejs进行启动访问&#xff1b; 各个组件版本如下&#xff1a; Docker 最新版本&#xff1b;Jenkins 2.387.3nginx …...

SQL server从安装到入门(一)

文章目录 彻底安装怎么安装&#xff1f;Polybase要求安装orcale jre 7更新 51或更高版本&#xff1f;安装完怎么配置&#xff1f;没有SSMS&#xff1f; 熟悉一下SMSS&#xff01; 根据本人实际安装和初步使用SQL server的过程中&#xff0c;经历的一些关键性的步骤和精品文章。…...

Unexpected WSL error错误处理备忘

运行docker时提示下图错误&#xff0c;看了下WSL好像没啥问题&#xff0c;看网上有人说需要重置下网络&#xff0c;命令是netsh winsock reset&#xff0c;重置完后果然好了...

计算机毕业设计 基于Vue的米家商城系统的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍&#xff1a;✌从事软件开发10年之余&#xff0c;专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精…...

Linux终端与交互式Bash

常用的Linux终端 GNOME Terminal&#xff1a;GNOME 桌面环境下的默认终端程序&#xff0c;支持多个选项卡和配置。Konsole&#xff1a;KDE 桌面环境下的默认终端程序&#xff0c;提供了丰富的功能和选项。Terminator&#xff1a;开源的终端程序&#xff0c;支持多个可调整大小…...

MFC内存泄露

1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...

反射获取方法和属性

Java反射获取方法 在Java中&#xff0c;反射&#xff08;Reflection&#xff09;是一种强大的机制&#xff0c;允许程序在运行时访问和操作类的内部属性和方法。通过反射&#xff0c;可以动态地创建对象、调用方法、改变属性值&#xff0c;这在很多Java框架中如Spring和Hiberna…...

DBAPI如何优雅的获取单条数据

API如何优雅的获取单条数据 案例一 对于查询类API&#xff0c;查询的是单条数据&#xff0c;比如根据主键ID查询用户信息&#xff0c;sql如下&#xff1a; select id, name, age from user where id #{id}API默认返回的数据格式是多条的&#xff0c;如下&#xff1a; {&qu…...

WordPress插件:AI多语言写作与智能配图、免费AI模型、SEO文章生成

厌倦手动写WordPress文章&#xff1f;AI自动生成&#xff0c;效率提升10倍&#xff01; 支持多语言、自动配图、定时发布&#xff0c;让内容创作更轻松&#xff01; AI内容生成 → 不想每天写文章&#xff1f;AI一键生成高质量内容&#xff01;多语言支持 → 跨境电商必备&am…...

【JavaWeb】Docker项目部署

引言 之前学习了Linux操作系统的常见命令&#xff0c;在Linux上安装软件&#xff0c;以及如何在Linux上部署一个单体项目&#xff0c;大多数同学都会有相同的感受&#xff0c;那就是麻烦。 核心体现在三点&#xff1a; 命令太多了&#xff0c;记不住 软件安装包名字复杂&…...

Linux --进程控制

本文从以下五个方面来初步认识进程控制&#xff1a; 目录 进程创建 进程终止 进程等待 进程替换 模拟实现一个微型shell 进程创建 在Linux系统中我们可以在一个进程使用系统调用fork()来创建子进程&#xff0c;创建出来的进程就是子进程&#xff0c;原来的进程为父进程。…...

docker 部署发现spring.profiles.active 问题

报错&#xff1a; org.springframework.boot.context.config.InvalidConfigDataPropertyException: Property spring.profiles.active imported from location class path resource [application-test.yml] is invalid in a profile specific resource [origin: class path re…...

Python Ovito统计金刚石结构数量

大家好,我是小马老师。 本文介绍python ovito方法统计金刚石结构的方法。 Ovito Identify diamond structure命令可以识别和统计金刚石结构,但是无法直接输出结构的变化情况。 本文使用python调用ovito包的方法,可以持续统计各步的金刚石结构,具体代码如下: from ovito…...

解决:Android studio 编译后报错\app\src\main\cpp\CMakeLists.txt‘ to exist

现象&#xff1a; android studio报错&#xff1a; [CXX1409] D:\GitLab\xxxxx\app.cxx\Debug\3f3w4y1i\arm64-v8a\android_gradle_build.json : expected buildFiles file ‘D:\GitLab\xxxxx\app\src\main\cpp\CMakeLists.txt’ to exist 解决&#xff1a; 不要动CMakeLists.…...

PHP 8.5 即将发布:管道操作符、强力调试

前不久&#xff0c;PHP宣布了即将在 2025 年 11 月 20 日 正式发布的 PHP 8.5&#xff01;作为 PHP 语言的又一次重要迭代&#xff0c;PHP 8.5 承诺带来一系列旨在提升代码可读性、健壮性以及开发者效率的改进。而更令人兴奋的是&#xff0c;借助强大的本地开发环境 ServBay&am…...