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

Linux花生壳如何设置端口映射?

登录花生壳管理平台,进入内网穿透功能,添加映射规则:填写本地服务的IP地址和端口号,选择映射类型(TCP/UDP),保存后即可获得外网访问地址。

准备工作

  1. 花生壳账户

    • 注册地址:https://oray.com
    • 开通内网穿透服务(免费版支持2个映射,带宽1Mbps;付费版不限带宽)。
  2. 安装花生壳客户端

    • 下载安装包
      wget https://down.oray.com/hsk/linux/phddns_5.2.0_amd64.deb  # Debian/Ubuntu
      wget https://down.oray.com/hsk/linux/phddns-5.2.0-1.x86_64.rpm  # CentOS/RHEL
    • 安装命令
      sudo dpkg -i phddns_5.2.0_amd64.deb  # Debian/Ubuntu
      sudo rpm -ivh phddns-5.2.0-1.x86_64.rpm  # CentOS/RHEL
    • 启动服务
      sudo systemctl start phddns
      sudo systemctl enable phddns  # 设置开机自启
  3. 登录客户端

    • 执行命令获取SN码与默认密码:
      phddns status
    • 访问 https://b.oray.com → 输入SN码和密码登录控制台。

配置端口映射

  1. 登录花生壳管理后台
    通过网页进入花生壳控制台(https://b.oray.com)。

  2. 创建映射

    • 点击 【内网穿透】→ 【添加映射】
    • 填写以下参数:
      • 应用名称:自定义(如 “Web Server”)。
      • 映射类型
        • HTTP/HTTPS:适用于网站、API服务。
        • TCP:适用于SSH、数据库、游戏服务器。
        • UDP:适用于视频流、实时通信。
      • 内网主机:运行服务的Linux内网IP(如 168.1.100)。
      • 内网端口:服务监听的端口(如 8022)。
      • 外网域名:选择免费二级域名或自有域名(需CNAME解析到花生壳)。
      • 外网端口:系统自动分配(付费版可自定义端口)。

    (注:实际界面以Oray官网为准)

    Linux花生壳如何设置端口映射?  第1张

  3. 保存设置
    点击 【确定】 生成映射记录,状态显示 “正常” 即生效。


验证端口映射

  1. 本地测试

    curl http://127.0.0.1:内网端口  # 确保内网服务正常
  2. 公网访问测试

    • 使用生成的外网地址访问:
      curl http://your-domain.oray.net:外网端口
    • 或通过浏览器访问 http://your-domain.oray.net:外网端口

常见问题解决

  1. 映射失败(状态为离线)

    • 检查花生壳客户端是否运行:systemctl status phddns
    • 更新客户端:phddns update
  2. 能连接但速度慢

    • 免费版带宽受限,建议升级付费套餐。
    • 优化内网服务数据压缩(如启用GZIP)。
  3. 端口冲突

    更换内网端口或外网端口(付费版支持)。

  4. 防火墙拦截

    • 开放内网端口:
      sudo ufw allow 80/tcp  # 以Ubuntu为例

安全建议

  1. HTTPS加密(付费版支持)
    • 在映射类型中选择 HTTPS,并上传SSL证书。
  2. IP白名单

    在花生壳控制台设置访问限制,仅允许可信IP。

  3. 定期更新客户端
    • 获取安全补丁:phddns update

花生壳通过简化NAT穿透,为Linux内网服务提供稳定的公网访问能力,重点步骤包括:

  1. 安装并登录客户端;
  2. 在控制台配置映射规则;
  3. 验证服务可达性。
    免费版适合轻度使用,企业级应用建议选择商业版获得更高带宽和专属技术支持。

引用说明

  • 花生壳官方文档:Oray Support
  • Linux系统防火墙配置:Ubuntu UFW Guide
  • 端口映射原理参考:《TCP/IP详解 卷1:协议》(W.Richard Stevens著)
0