ECS阿里云服务部署

设备部署在局域网中,需要在外部通过ssh去访问它,方便开发调试,可以通过阿里云服务实现远程调试。

1、购买服务

地址:https://swasnext.console.aliyun.com/buy#/

没有什么特殊用途选择最便宜的通用型就够用了,这里的镜像选择自己熟悉的就行,服务将会部署在镜像对应的环境中,后续还需要通过实例终端配置,那个终端环境就对应这里的镜像。地域选择部署地区比较近的地域,要求不是特别高,我就忘记选了,用着也没有什么明显问题。

购买完成后,阿里云服务的控制台会多出一个轻量应用服务器:

2、配置

服务器实例会分配IP地址等:

先点击设置密码,弹出Workbench一键连接,点击登陆实例

进入系统提示,直接关闭掉下面弹框,这个弹框没用:

在命令端执行下面命令:

python 复制代码
admin@iZ2z13o2b2qcidZ:~$ cat /etc/os-release | head -n 2
PRETTY_NAME="Ubuntu 22.04.5 LTS"
NAME="Ubuntu"

防火墙tcp添加如下所示:

下载frps(0.71.0版本):

python 复制代码
第 1 步:切换到 root 并进入临时目录
  
  sudo -i
  cd /tmpserverAddr = "你的云服务器公网IP"
  serverPort = 7000
  auth.token = "你的Token"

  transport.tls.enable = true

  [[proxies]]
  name = "office-ssh"
  type = "tcp"
  localIP = "127.0.0.1"
  localPort = 22
  remotePort = 6000
  
第 2 步:查最新版本号并下载
  
  FRP_VERSION=$(curl -s https://api.github.com/repos/fatedier/frp/releases/latest | sed -n 's/.*"tag_name": "v\(.*\)".*/\1/p')
  echo "最新版本是: $FRP_VERSION"
  wget https://github.com/fatedier/frp/releases/download/v${FRP_VERSION}/frp_${FRP_VERSION}_linux_amd64.tar.gz

生成双方需要的密钥:

python 复制代码
root@iZ2zeflh13o2b2qcight9dZ:/tmp# openssl rand -base64 24
67SGiQ6GRJmE0FOFvlW7xgxLDc633BX

网页端服务器配置

在网页端服务器,控制终端配置如下:

第 1 步:生成 Token(登录暗号)

python 复制代码
  openssl rand -base64 24

把输出的那串字符(形如 xK9pQ...=)复制保存到记事本,等会儿两边都要用。

第 2 步:写配置文件

python 复制代码
  mkdir -p /etc/frp
  nano /etc/frp/frps.toml

在打开的编辑器里粘贴下面内容,把 粘贴Token 换成上一步生成的那串:

python 复制代码
  bindAddr = "0.0.0.0"
  bindPort = 7000

  auth.token = "67SGiQ6GRJmE0FOFvlW7xgxLDc633BX"
  
  allowPorts = [
    { start = 6000, end = 6999 }
  ]

操作方法:鼠标右键粘贴(或 Ctrl+Shift+V),然后

  • Ctrl+O,再按回车确认文件名 → 保存
  • Ctrl+X → 退出

第 3 步:手动试运行

python 复制代码
  frps -c /etc/frp/frps.toml

看到 frps started successfully 就说明配置正确。此时窗口被占住是正常的,按 Ctrl+C 停掉它(下一步让它在后台常驻)。

第 4 步:注册为系统服务(后台运行 + 开机自启)

python 复制代码
  nano /etc/systemd/system/frps.service

整段原样粘贴,不用改任何内容:

python 复制代码
  [Unit]
  Description=frp server service
  After=network.target

  [Service]
  Type=simple
  ExecStart=/usr/local/bin/frps -c /etc/frp/frps.toml
  Restart=always
  RestartSec=5
  LimitNOFILE=1048576
  
  [Install]
  WantedBy=multi-user.target

同样 Ctrl+O 回车保存、Ctrl+X 退出。然后执行:

python 复制代码
  systemctl daemon-reload
  systemctl enable --now frps
  systemctl status frps --no-pager

最后一条命令的输出里找到这一行:

python 复制代码
  Active: active (running)

看到它(绿色字样)就说明服务端全部搞定。按 q 退出状态画面。

如果想重启云服务器上的 frps

python 复制代码
  systemctl restart frps
  systemctl status frps --no-pager

看到 active (running) 后按 q 退出。

装个人电脑的客户端

个人电脑是 Ubuntu 的话,打开终端,先确保它的 SSH 服务在运行:

python 复制代码
  systemctl status ssh --no-pager
# 看到 active (running) → 没问题,按 q 退出。

如果提示 could not be found 或没装 → 执行安装:

python 复制代码
  sudo apt update && sudo apt install -y openssh-server

执行uname -m 显示 x86_64 就继续下面的安装。

第 1 步:下载同版本 FRP0.71.0)并安装客户端

python 复制代码
  sudo -i
  cd /tmp
  wget https://github.com/fatedier/frp/releases/download/v0.71.0/frp_0.71.0_linux_amd64.tar.gz
  tar -xzf frp_0.71.0_linux_amd64.tar.gz
  cp frp_0.71.0_linux_amd64/frpc /usr/local/bin/
  chmod +x /usr/local/bin/frpc
  frpc --version

最后应打印 0.71.0

第 2 步:写客户端配置

去阿里云控制台复制你那台服务器的公网 IP(形如 101.x.x.x),然后:

python 复制代码
  mkdir -p /etc/frp
  nano /etc/frp/frpc.toml

粘贴下面内容,替换两处:云服务器公网IP 和 你的Token(就是之前 openssl 生成、保存在记事本里的那串):

python 复制代码
serverAddr = "1XX.XXX.XXX.X5"
serverPort = 7000
auth.token = "67SGiQ6GRJmE0FOFvlW7xgxLDc633BX"

transport.tls.enable = true

[[proxies]]
name = "cpu-ssh"
type = "tcp"
localIP = "127.0.0.1"
localPort = 22
remotePort = 6011

[[proxies]]
name = "cpu-recv"
type = "tcp"
localIP = "2.2.2.2"
localPort = 8000
remotePort = 6012

[[proxies]]
name = "cpu-send"
type = "tcp"
localIP = "2.2.2.2"
localPort = 8001
remotePort = 6013

其中cpu-ssh含义:打电话到云服务器的 7000 总机,对上暗号后,把云服务器的 6000 号房间转接到我自己的 22SSH)。 Ctrl+O 回车保存,Ctrl+X 退出。

第 3 步:手动试连一次

python 复制代码
  frpc -c /etc/frp/frpc.toml

成功的标志是出现一行类似:

python 复制代码
  login to server success
  ... start proxy success

看到后按 Ctrl+C 停掉,进入下一步注册后台服务。报错(最常见是 token 不一致、端口不通)。

SSH连接命令如下:

python 复制代码
ssh -p 6011 用户名@101.XXX.XXX.XXX

第 4 步:注册为系统服务(开机自启)

python 复制代码
  nano /etc/systemd/system/frpc.service

整段粘贴:

python 复制代码
  [Unit]
  Description=frp client service
  After=network.target

  [Service]
  Type=simple
  ExecStart=/usr/local/bin/frpc -c /etc/frp/frpc.toml

第 4 步:注册为系统服务(开机自启)

python 复制代码
  nano /etc/systemd/system/frpc.service

整段粘贴:

python 复制代码
	[Unit]
	Description=frp client service
	After=network.target
	
	[Service]
	Type=simple
	ExecStart=/usr/local/bin/frpc -c /etc/frp/frpc.toml
	Restart=always
	RestartSec=5
	LimitNOFILE=1048576
	
	[Install]
	WantedBy=multi-user.target

保存退出后执行:

python 复制代码
  systemctl daemon-reload
  systemctl enable --now frpc
  systemctl status frpc --no-pager

看到 active (running) 就说明公司电脑已经把线挂上了。

相关推荐
GG-_-Bond2 小时前
基于dpdk实现udp接收数据
linux·网络·udp
平凡シンプル2 小时前
TCP UDP 网络通信插件 SL-Uniplugin-Tcp-Udp
网络·学习·uniapp·记录
小程序设计2 小时前
Easy-Shop商城小程序漏洞挖掘与防护研究
网络·安全
万联WANFLOW2 小时前
TikTok Shop上线“Sell Across EU”,欧洲社交电商迎来生态重构
网络·业界资讯
liulilittle3 小时前
为什么采用全局管理缓存及状态:麻将客户端状态管理
服务器·网络·游戏·客户端·异步·mahjong·麻将
酣大智3 小时前
OSPF引入的直连路由在 ospf 路由表中看不到
网络·ospf
2601_966377133 小时前
等保2.0最新标准新增安全数据处理要求后怎么办?等保一体机数据安全模块来助力
运维·网络·安全·等保一体机
BullSmall3 小时前
window系统上报Cannot assign requested address
网络·功能测试
杨云龙UP4 小时前
MySQL Host is blocked because of many connection errors 导致 JDBC 连接失败排查与解决
linux·运维·网络·数据库·sql·mysql·登录失败