前言
動態撥號vps獲取代理, 這裏主要是把代理服務器搭建那一步寫成shell腳本封邊後面搭建, 參考了崔慶才老師的文章, 寫的非常詳細 https://cloud.tencent.com/developer/article/1151781
開始搭建
首先是進入vps主機, 用ssh命令進入
ssh [email protected] -p 22
進入主機後找到撥號初始化的shell腳本, 一般都是在後面帶上賬號密碼參數, 我的這臺腳本名是 p.sh
sh ./p.sh 寬帶賬號 寬帶密碼
成功之後就可以進行撥號了, 注意撥號之前網絡沒有聯通, 是ping不通任何網站
# 開始撥號
adsl-start
# 停止撥號
adsl-stop
# 重播
adsl-stop; adsl-start
撥通成功後就可以試着ping一下看是否聯通
ping baidu.com
連通後就可以進行代理服務器的設置了, 執行我下面的shell腳本就可以了
#!/bin/bash
echo " 安裝 TinyProxy"
yum install -y epel-release
yum update -y
yum install -y tinyproxy
echo " 配置 TinyProxy, 允許任何主機連接"
sed -i "s/Allow 127.0.0.1/#Allow 127.0.0.1/g" /etc/tinyproxy/tinyproxy.conf
echo " 配置 完成, 重啓代理服務"
systemctl enable tinyproxy.service
systemctl restart tinyproxy.service
echo " 防火牆開啓 8888 端口供使用"
iptables -I INPUT -p tcp --dport 8888 -j ACCEPT
echo " 開始撥號服務, 獲取當前ip"
adsl-start
curl http://httpbin.org/ip
執行完成後測試一下代理使用, 把上面的ip獲取到放到下面命令裏就可以了
curl -x IP:8888 httpbin.org/get
也可以寫個python腳本本地測試
"""
@author xiaofei
@date 2019-07-16
@desc 測試撥號代理的使用
"""
import requests, time
url = "http://httpbin.org/ip"
proxy = f"{IP}:8888"
proxies = {
'http': 'http://' + proxy,
'https': 'https://' + proxy
}
start = time.time()
res = requests.get(url)
print(f"無代理請求, {time.time()-start}", res.text)
start1 = time.time()
res = requests.get(url, proxies=proxies)
print(f"有代理請求, {time.time()-start1}", res.text)
ok, 這就完成了, 然後後面再根據自己的業務構建IP池和封裝接口就可以了