局域网内电脑通过代理服务器上网
一、背景
假设局域网内有一个服务器能连接外网,其他客户端只能使用内网。当内网客户端的电脑需要使用外部网络时,可以使用代理服务器上网
二、服务器安装tinyproxy
# ubuntu
sudo apt install tinyproxy
修改配置文件
sudo vim /etc/tinyproxy/tinyproxy.conf
默认端口是8888,可以修改
设置可访问的从机IP。
Allow 是允许访问的从机IP,不写(屏蔽掉所有)就是允许所有从机访问
重启tinyproxy服务
sudo systemctl restart tinyproxy.service
三、客户端使用主机网络安装软件
1、临时方案
#以安装tree为例。下面的IP为主机的IP
sudo apt install tree -o Acquire::http::proxy="http://192.168.1.6:8888"
2、永久方案
(1)方法1:设置环境变量
在.bashrc中,
export http_proxy=http://192.168.1.6:8888
export https_proxy=http://192.168.1.6:8888
这两个环境变量对下面应用有效:
apt。单独设置请见后文。
pip。单独设置请见后文。
git。该命令也可以自定义代理。
curl。也可以curl -x http://127.0.0.1:7890 url直接指定代理。
wget。单独设置请见后文。
(2)方法2:设置各种配置文件
设置apt的代理配置文件(可能默认不存在,创建即可)
sudo vim /etc/apt/apt.conf.d/proxy.conf
输入如下内容:
Acquire::http::proxy "http://192.168.1.6:8888";
Acquire::https::proxy "http://192.168.1.6:8888";
以后安装软件就跟正常网络一样使用即可,测试安装tree
sudo apt install tree
注意:只要设置了配置文件,apt默认就使用代理。如果代理服务器不可访问或者不想使用代理了,注释掉 /etc/apt/apt.conf.d/proxy.conf中的内容即可。