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

配置代理服务器访问github、google

配置代理服务器访问github、google

  • 背景与原理
  • 配置环境
  • 配置步骤
    • 云主机配置
    • Windows客户端创建SSH隧道
      • 安装 Windows 内置 OpenSSH
      • ssh config 配置文件
      • 创建动态代理隧道
    • 浏览器代理设置
  • 验证
    • 浏览器访问google、github
    • ssh 访问github

背景与原理

由于网络政策限制,中国内地用户无法直接访问GitHub、Google等境外服务。香港地区云主机具备国际网络出口,可通过SSH动态端口转发(SOCKS5代理)实现安全访问。
在这里插入图片描述
OpenSSH的动态代理隧道(Dynamic Application Level Gateway,也称为SOCKS代理)是一种强大的方式,用于通过SSH隧道转发网络流量。这种方法常用于在不支持直接SSH隧道的客户端应用程序中实现安全的数据传输。以下是动态代理隧道的基本工作原理:

  1. 建立SSH连接:首先,客户端(如Windows机器)通过SSH协议与远程SSH服务器建立连接。
  2. 动态端口转发:在SSH连接建立后,客户端配置一个动态端口转发(也称为SOCKS代理),通常监听本地的一个端口(例如9050)。
  3. SOCKS协议:当客户端应用程序(如浏览器或任何TCP客户端)尝试连接到某个IP地址和端口时,它会先尝试连接到本地监听的动态代理端口(例如127.0.0.1:9050)。
  4. 代理请求:客户端应用程序将连接请求通过SOCKS协议封装后发送到本地监听的端口。
  5. 转发请求:本地监听的动态代理捕获到请求,并通过SSH隧道将这个请求转发到远程SSH服务器。
  6. 远程处理:远程SSH服务器接收到请求后,根据请求的目标地址和端口进行相应的处理。例如,如果请求是针对外部网络的,服务器可能会将其路由到外部网络。
  7. 响应返回:处理后的响应通过SSH隧道返回到客户端,并通过本地动态代理转发回原始客户端应用程序。

配置环境

操作系统:win10
浏览器:火狐浏览器

配置步骤

云主机配置

  1. 香港区域云服务
    亚马逊申请免费香港地区的云服务,可以免费使用1年
    https://www.amazonaws.cn/free
    在这里插入图片描述
    申请的免费云服务器如下:
    在这里插入图片描述
  2. 确保开放SSH端口(默认22)并配置密钥登录
    查看 ssh 服务状态
systemctl status sshd

在这里插入图片描述

Windows客户端创建SSH隧道

安装 Windows 内置 OpenSSH

# 安装 OpenSSH 客户端(若未预装)
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

ssh config 配置文件

  1. .ssh目录下增加config配置文件,如果没有就新建一个
    在这里插入图片描述
  2. 增加如下配置,此处配置的端口8888需要和启动的一致
# github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github/id_rsa
# 设置 SOCKS5 代理(例如本地端口 1080)
ProxyCommand connect -S 127.0.0.1:8888 %h %p# aws
Host aws-server
HostName ec2-54-46-31-72.ap-east-1.compute.amazonaws.com  # 实例公有DNS
User ec2-user  # 默认用户名(根据AMI类型调整)
IdentityFile ~/.ssh/aws-server/ssh_proxy.pem  # 私钥绝对路径
Port 22  # 默认端口(若修改需同步调整安全组)
IdentitiesOnly yes  # 强制使用指定密钥

如果不用配置文件也可以直接只用命令行的

ssh -i "ssh_proxy.pem" ec2-user@[主机地址]

创建动态代理隧道

ssh -D 8888 -f -N aws-server

在这里插入图片描述

  • -D 8888:本地 SOCKS5 代理端口为 8888
  • -f:后台运行
  • -N:仅建立隧道不执行命令
  • aws-server 需要与之前config 的HOST 的别名一致

浏览器代理设置

火狐浏览器自带代理设置,无需下载插件。在设置栏搜索代理
在这里插入图片描述
设置代理,选择手动代理,SOCKS 主机配置 127.0.0.1,端口配置之前启动命令的8888,选择 SOCKS_V5代理
在这里插入图片描述

验证

浏览器访问google、github

在这里插入图片描述
在这里插入图片描述

ssh 访问github

$ ssh -T git@github.com
Hi shootercheng! You've successfully authenticated, but GitHub does not provide shell access.

相关文章:

  • 408考研逐题详解:2009年第16题
  • 一文掌握工业相机选型计算
  • 【C++】set、map 容器的使用
  • Linux干货(六)
  • 网络安全深度解析:21种常见网站漏洞及防御指南
  • WRFOUT投影转换——兰伯特转等经纬度
  • 单列集合——list集合和五种遍历方式
  • 基于shardingsphere的分库分表方案
  • 【C++】尾置返回类型(Trailing Return Type)总结
  • AI写PPT可以用吗?我测试了3款AI写PPT工具,分享感受
  • Graphics——基于.NET 的 CAD 图形预览技术研究与实现——CAD c#二次开发
  • 【NGINX】 -10 keepalived + nginx + httpd 实现的双机热备+ 负载均衡
  • 湖北理元理律师事务所:债务管理的社会价值探索
  • Science Robotics 封面论文:基于形态学开放式参数化的仿人灵巧手设计用于具身操作
  • 基于Java+MySQL+Servlet的留言系统开发全解析
  • uniapp中的easycom工作机制
  • 构建 TypoView:一个富文本样式预览工具的全流程记录
  • Go 语言中的一等公民(First-Class Citizens)
  • 数位和:从定义到编程实现
  • jupyter启动出现OSError: [Errno 28] No space left on device
  • 山东发布高温橙警:预计19日至21日局地可达40℃
  • 官方数据显示:我国心血管疾病患者已超3亿人
  • 广西北流出现强降雨,1人被洪水冲走已无生命体征
  • 菲律宾中期选举结果揭晓,马科斯与杜特尔特家族重回“权力的游戏”
  • 流失79载,国宝文物“子弹库帛书”(二、三卷)回归祖国
  • 吉利汽车一季度净利润大增264%,称整合极氪后实现整体效益超5%