背景
Linux服务器环境中有部分服务器不能上网,使用yum安装软件极为不便;
解决方案
可以搭建一个本地代理服务器,在不能联通外网的服务器上将1080端口跳转到另外一台可以上外网的22端口上,实现ssh跳转,设置yum代理,实现软件安装
注意事项
- 需要一台可以连接公网的服务器A(192.168.6.123)
- 需要安装软件的服务器B(192.168.6.141)可以连接上A(192.168.6.123)
- 服务器B(192.168.6.141)上需要安装privoxy 和git 基础软件
- 所有操作在服务器B(192.168.6.141)上完成
- 在centos 6 上,yum只能使用 http, https, ftp 协议的代理。 但在 centos 7上 yum 可以使用 socks5 的代理。
建立SSH隧道
1 2
| ssh -p 22 -gfND 1080 root@192.168.6.123 ss -tlnup |grep 1080
|
安装配置privoxy
1 2 3 4 5
| yum -y install privoxy vim /etc/privoxy/config forward-socks5 / 127.0.0.1:1080 . #如果允许其他机器访问,需要修改listen-address listen-address 0.0.0.0:8118
|
启动privoxy服务
1 2
| systemctl start privoxy systemctl enable privoxy
|
为YUM配置代理
1 2 3 4 5 6
| #centos7配置方法 [main] proxy=socks5h://localhost:1080 #centos6配置方法 [main] proxy=http://localhost:8118
|
扩展、配置其他代理
为CURL配置代理
1 2 3
| vim ~/.curlc # socks5h 中的 h 意为远程主机名解析 socks5 = "socks5h://127.0.0.1:1080"
|
为wget配置代理
1 2 3 4 5 6
| vim /etc/wgetrc http_proxy = http://localhost:8118 https_proxy = http://localhost:8118 ftp_proxy = http://localhost:8118 use_proxy = on wait = 15
|
为pip配置代理
1 2 3 4 5
| mkdir ~/.pip vim ~/.pip/pip.conf [global] proxy = 127.0.0.1:8118 trusted-host = mirrors.aliyun.com
|
为git设置http https 代理
1 2 3 4 5 6 7 8 9
| #设置 git config --global https.proxy 'socks5h://127.0.0.1:1080' git config --global http.proxy 'socks5h://127.0.0.1:1080' #查看 git config --global --get http.proxy git config --global --get https.proxy #取消 git config --global --unset http.proxy git config --global --unset https.proxy
|