如何通过RDP实现Windows远程访问Ubuntu内网穿透

前言

XRDP是一种开源工具,它允许用户通过Windows RDP访问Linux远程桌面。 除了Windows RDP外,xrdp工具还接受来自其他RDP客户端(如FreeRDP、rdesktop和NeutrinoRDP )的连接。 相较于VNC,xrdp更加的轻量级。下面简单几步实现ubuntu XRDP+cpolar内网穿透工具,实现windows远程桌面控制ubuntu。

1. ubuntu安装XRDP

先更APT 包管理器

sudo apt update

下载安装 XRDP

sudo apt install xrdp

然后启动,如在启动提示错误,可能是端口冲突,重启设备再尝试

sudo systemctl start xrdp

查看状态,active表示成功

systemctl status xrdp

image-20230405215445424

设置开机启动

sudo systemctl enable xrdp

远程桌面开关需要记得开启

image-20230405215749535

2.局域网测试连接

局域网IP连接,先查看ip地址,输入以下命令查看:

ip address

image-20230405221715065

以免连接出现问题,先在防火墙中添加一个3389端口

sudo ufw allow from any to any port 3389 proto tcp

然后记得退出登录,一定要记得,否则连接不上,这一步目的是让Ubuntu处于锁屏界面

20230410115754

然后打开windwos远程连接工具

image-20230405215834275

输入我们上面查看的ubuntu局域网ip地址,然后点击连接

image-20230405223138794

然后我们就看到了XRDP的界面,需要输入Ubuntu用户名和密码

image-20230405225351672

输入后即可连接成功

image-20230405225623938

3.安装cpolar内网穿透

接着使用cpolar穿透本地XRDP服务,使得windwos远程桌面可以远程进行访问。cpolar支持http/https/tcp协议,不限制流量,操作简单,无需公网IP,也无需路由器。

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

安装cpolar内网穿透(支持一键自动安装脚本)

  • cpolar 安装(国内使用)
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • 或 cpolar短链接安装方式:(国外使用)
curl -sL https://git.io/cpolar | sudo bash
  • 查看版本号
cpolar version
  • token认证

登录cpolar官网后台,点击左侧的验证,查看自己的认证token,之后将token贴在命令行里

cpolar authtoken xxxxxxx

20230116114805

  • 向系统添加服务
sudo systemctl enable cpolar
  • 启动cpolar服务
sudo systemctl start cpolar
  • 查看服务状态
sudo systemctl status cpolar

正常显示为active则表示服务为正常在线启动状态

20230410120055

在ubuntu系统本地安装cpolar内网穿透之后,在ubuntu浏览器上访问本地9200端口,或者在外部浏览器通过局域网ip地址访问9200端口,打开cpolar web ui 界面

image-20230404142904075

登陆后点击左侧仪表盘的隧道管理——创建隧道,由于XRDP中是3389端口,因此我们要来创建一条tcp隧道,指向3389端口:

  • 隧道名称:可自定义,注意不要重复
  • 协议:tcp
  • 本地地址:3389
  • 端口类型:随机域名
  • 地区:China vip

点击创建

image-20230405220101567

创建成功后我们打开在线隧道列表复制创建的公网地址

image-20230405215931581

4.cpolar公网地址测试访问

连接的时候,ubuntu一定是处于锁屏界面,否则连接不成功

image-20230405225753817

打开windwos远程桌面,输入cpolar中创建的tcp公网地址,

image-20230405225327110

然后出现输入用户名密码界面,输入用户名密码即可连接成功,

image-20230405225516363

5.固定域名公网地址

在cpolar内网穿透中,上面创建的地址是随机的,24小时内变化,为了更加稳定的访问和连接,cpolar支持固定公网地址

需升级至专业套餐或以上才支持配置固定域名

登录cpolar官网后台,点击左侧仪表盘的预留,找到保留的TCP地址,为tcp隧道固定一个域名。

  • 地区:选择服务器地区
  • 描述:即备注,可自定义填写

修改完成后,点击`保留

image-20230405230152325

域名地址保留成功后,我们将地址复制下来,接下来需要将其配置绑定到隧道中去。

image-20230405230406954

登录cpolar web ui管理界面。点击左侧仪表盘的隧道管理——隧道列表,找到需要配置隧道,点击右侧的编辑

image-20230405230458842

修改隧道信息,将固定的域名地址配置到隧道中:

  • 端口类型:固定TCP端口`
  • 预留的TCP地址:填写我们刚刚所保留复制的地址

修改完成后,点击更新

image-20230405230832235

隧道更新成功后,点击左侧在线隧道列表,可以看到隧道的公网地址,已经更新为官网保留固定的域名了

image-20230405231037458

然后使用cpolar中固定的TCP地址进行连接

image-20230405231157875

输入用户名和密码

image-20230405231329520

即可远程成功

image-20230405231721469

转载自cpolar极点云文章:Windows通过RDP异地远程桌面Ubuntu【内网穿透】

<think>嗯,用户想了解远程登录Ubuntu的方法。我需要先理清楚不同的远程登录方式,常见的有SSH、VNC、RDP等。SSH是命令行工具,适合管理服务器;而VNC和RDP则提供图形界面,适合需要桌面操作的情况。 首先,我应该解释SSH的基本步骤。需要安装openssh-server,配置防火墙,然后通过客户端连接。用户可能对安装软件和防火墙设置不熟悉,得详细说明命令,比如sudo apt update和sudo apt install openssh-server。还要提到检查服务状态,用systemctl status ssh,确保服务正常运行。 然后是防火墙部分,Ubuntu默认使用ufw,要开放22端口。可能需要告诉用户如何启用ufw,允许SSH连接。不过有些用户可能没启用防火墙,这时候是否需要提醒他们安全风险?或者简单说明如果防火墙没开,可能不需要这步? 接下来是客户端连接,不同操作系统下的方法。Windows可以用PowerShell或者PuTTY,macOS和Linux直接用终端ssh命令。这里要给出示例命令,比如ssh username@ip_address,并提示替换实际用户名和IP。 另外,可能需要提到如何查找Ubuntu的IP地址,用ip a或者ifconfig命令。如果用户是在局域网内,还是公网访问,这对IP有影响,不过可能属于进阶内容,先不展开。 然后是图形界面的远程登录,比如VNC和RDP。VNC需要安装tightvncserver或者x11vnc,配置可能复杂一些,特别是x11vnc需要连接到现有的显示会话。而Ubuntu自带的远程桌面可能基于VNC,或者使用RDP协议的xrdp。这部分需要区分不同桌面环境,比如GNOME自带的屏幕共享功能,可能更简单。 对于VNC,安装tightvncserver后,启动服务,设置密码,然后客户端使用RealVNC或TigerVNC连接。需要说明端口号5901之类的。RDP方面,安装xrdp后,用户可以用Windows的远程桌面连接,或者Remmina,这里可能需要提到xrdp配置和可能的兼容性问题。 安全性方面,SSH推荐使用密钥认证,禁用密码登录,修改默认端口。这些是提高安全性的措施,但用户可能只是初学者,是否需要深入?可能简要提及,让用户知道有这些选项。 常见问题部分,比如连接不上要检查IP、防火墙、SSH服务状态,还有网络是否允许端口通过。对于图形界面,可能遇到黑屏或无法连接,需要确认服务配置正确,显示设置正确。 用户可能需要实际操作的步骤,所以结构上分点说明,每个大标题下有小步骤,比如SSH部分分安装、配置防火墙、客户端连接。每个步骤给出具体的命令和解释,确保用户能跟着做。 需要检查是否有遗漏的步骤,比如生成SSH密钥对,或者配置sshd_config文件,但如果是基础使用,可能不需要涉及。保持回答简洁,但足够让用户成功连接。 最后,提醒用户注意安全,特别是在公网环境下开放端口的风险,建议使用强密码或密钥认证。可能还要提到内网穿透工具,如果用户需要从外网访问,但可能属于进阶内容,暂时不提。 总结,回答的结构应该是先介绍远程登录的概念,然后分SSH和图形界面两种方式,每种方式详细步骤,最后常见问题和安全建议。确保用中文,术语准确,命令正确,符合LaTeX格式要求,行内公式用$,独立公式用$$,虽然这个问题可能数学公式不多,但如果有变量或代码,可能需要用等宽字体或者正确转义。</think>### 远程登录 Ubuntu 的常用方法 远程登录 Ubuntu 主要通过 **SSH(安全外壳协议)** 实现命令行访问,或通过 **VNC/RDP** 等工具实现图形界面访问。以下是详细步骤: --- #### 一、通过 SSH 登录(命令行) **1. 在 Ubuntu 上安装 SSH 服务** ```bash sudo apt update sudo apt install openssh-server ``` **2. 检查 SSH 服务状态** ```bash sudo systemctl status ssh # 确认服务已启动(状态为“active”) ``` **3. 配置防火墙(如启用)** ```bash sudo ufw allow ssh # 开放默认 SSH 端口(22) ``` **4. 获取 Ubuntu 的 IP 地址** ```bash ip a # 查找类似 `inet 192.168.x.x` 的条目 ``` **5. 从客户端连接** - **Windows**:使用 PowerShell 或 PuTTY ```bash ssh username@ubuntu_ip # 示例:ssh user@192.168.1.100 ``` - **macOS/Linux**:直接使用终端 ```bash ssh username@ubuntu_ip ``` --- #### 二、通过 VNC/RDP 登录(图形界面) **1. 使用 VNC(如 TightVNC)** - **安装 TightVNC Server** ```bash sudo apt install tightvncserver ``` - **启动 VNC 服务** ```bash vncserver # 首次运行需设置密码,端口默认为 5901 ``` - **客户端连接** 使用 RealVNC 或 TigerVNC,输入 `ubuntu_ip:1`(端口 5901)。 **2. 使用 RDP(远程桌面协议)** - **安装 xRDP** ```bash sudo apt install xrdp ``` - **配置防火墙** ```bash sudo ufw allow 3389 # RDP 默认端口 ``` - **客户端连接** 使用 Windows 自带的“远程桌面连接”或 Remmina,输入 Ubuntu 的 IP。 --- #### 三、安全建议 1. **修改 SSH 默认端口** 编辑 `/etc/ssh/sshd_config`,修改 `Port 22` 为其他端口(如 `2222`),重启服务: ```bash sudo systemctl restart ssh ``` 2. **使用密钥认证(代替密码)** ```bash ssh-keygen # 生成密钥对 ssh-copy-id username@ubuntu_ip # 将公钥上传到服务器 ``` 3. **禁用 root 登录** 在 `/etc/ssh/sshd_config` 中设置: ```bash PermitRootLogin no ``` --- #### 四、常见问题 - **连接失败** 检查 IP 是否准确、防火墙是否放行端口、SSH 服务是否运行。 - **图形界面黑屏** 确保 VNC/RDP 服务配置正确,桌面环境(如 GNOME/XFCE)已安装。 - **公网访问** 需在路由器设置端口转发,并确保公网 IP 或域名解析正确。 --- 通过上述方法,您可以根据需求选择命令行或图形界面远程管理 Ubuntu 系统。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值