Apakah ada alat untuk mengatur proxy dengan file pac?

8

Saya telah belajar bahwa berbagai program memproses file pac dengan cara yang berbeda, dan mungkin sebagian besar dari mereka bahkan tidak mendukung file pac. Jadi saya ingin tahu apakah ada alat yang mengatur proxy mengatakan 127.0.0.1:1234. Dan ketika saya mengatur beberapa proksi program ke 127.0.0.1:1234, alat ini menggunakan file pac untuk memutuskan apakah akan mengarahkan ulang ke proksi atau terhubung secara langsung. Apakah ada alat yang memenuhi fitur di atas?

Perqin
sumber

Jawaban:

3

Browser dengan dukungan JavaScript biasanya mendukung file PAC. Hal lain yang biasanya tidak, khususnya saya tidak mengetahui adanya perangkat lunak proxy yang tersedia. Ada banyak proksi yang mendukung cara untuk tampil berbeda berdasarkan URL target, namun, tidak melalui program JavaScript. Lihat Proksi lokal transparan ke banyak proksi

File PAC adalah program JavaScript, jadi dukungan untuk file PAC memerlukan penerjemah JavaScript. Meskipun ada proxy yang ditulis dalam JavaScript, saya tidak dapat menemukan yang mendukung file PAC. Pacparser library Python mengimplementasikan dukungan PAC (di atas mesin JavaScript Mozilla), dan ada banyak proksi yang ditulis dengan Python , tetapi sepertinya tidak ada program proksi aktual yang menggunakan pacparser.

Gilles 'SANGAT berhenti menjadi jahat'
sumber
2

Eh ... akhirnya saya menggunakan aturan lain alih-alih pac dan mencoba Privoxy dan berhasil. Inilah yang saya lakukan.

  1. Instal Privoxy dan dengarkan 127.0.0.1:1234.
  2. Dapatkan gfwlist.txt dan mengonversinya menjadi file tindakan Privoxy.
  3. Dalam file tindakan, beberapa url akan dikirim menggunakan proxy dan yang lain terhubung langsung.
Perqin
sumber
1

Saya sudah berada di kapal yang sama seperti Anda, mencoba mencari cara untuk mengurai file pac dan sejenisnya untuk mendapatkan IP dan port proxy yang valid untuk mengisi proxychains.conf dengan.

Sejauh ini metode termudah dan tercepat yang saya temukan adalah menulis naskah yang menggunakan lynx, grep, awk, dan sed. Ini bukan kode yang paling cantik tetapi berfungsi dan memperbarui tabel proxy saya dalam satu menit atau kurang. sunting Jika ada yang bisa menunjukkan kepada saya cara merampingkan skrip ini, itu akan luar biasa.

#!/bin/bash
proxylst=proxy.lst
proxynew=proxy.new
lstdir=~/Documents/.proxyupdate
echo "fetching proxy list"
lynx --dump https://someproxysite/proxy-server-list/port-8080/ | awk 'NR%2==0'| grep -e "8080" | awk {'print $1 " " $2'} | awk -F "[" '{print $1" "substr($2,4)}' > $lstdir/$proxylst
lynx --dump https://someproxysite/proxy-server-list/port-8080/ | awk 'NR%2==0'| grep -e "8080" | awk {'print $1 " " $2'} | awk -F "[" '{print $1" "substr($2,4)}' >> $lstdir/$proxylst
lynx --dump https://someproxysite/proxy-server-list/port-8080/ | awk 'NR%2==0'| grep -e "8080" | awk {'print $1 " " $2'} | awk -F "[" '{print $1" "substr($2,4)}' >> $lstdir/$proxylst
echo "scan complete. updating /etc/proxychains.conf.."
sed 's/^/http /' $lstdir/$proxylst > $lstdir/$proxynew
grep -v 'http *.*.*.* 8080' /etc/proxychains.conf > $lstdir/proxyconf.new && cat $lstdir/$proxynew >> $lstdir/proxyconf.new
cp $lstdir/proxyconf.new /etc/proxychains.conf
echo
rm -rf $lstdir/proxyconf.new  $lstdir/$proxylst $lstdir/$proxynew
echo "update complete."'

atur ini sebagai entri cron dan perbarui tabel Anda setiap jam dan Anda akan baik-baik saja. Karena proxychains dan firefox tidak benar-benar bermain dengan baik, saya menggunakan pac dari proxynovacom sebagai file konfigurasi otomatis saya dan berfungsi dengan baik.

Aaron Nelson
sumber