pac 파일을 사용하여 프록시를 설정하는 도구가 있습니까?

pac 파일을 사용하여 프록시를 설정하는 도구가 있습니까?

나는 서로 다른 프로그램이 서로 다른 방식으로 pac 파일을 처리하며 아마도 대부분의 프로그램이 pac 파일을 지원하지 않는다는 것을 배웠습니다. 그래서 프록시를 127.0.0.1:1234로 설정하는 도구가 있는지 궁금합니다. 프로그램의 프록시를 127.0.0.1:1234로 설정하면 도구는 pac 파일을 사용하여 프록시로 리디렉션할지 직접 연결할지 결정합니다. 위의 기능을 만족시킬 수 있는 도구가 있나요?

답변1

JavaScript를 지원하는 브라우저는 일반적으로 PAC 파일을 지원합니다. 다른 어떤 것도 일반적으로 그렇지 않습니다. 특히 그렇게 하는 기성 프록시 소프트웨어를 알지 못하기 때문에 더욱 그렇습니다. 대상 URL을 기반으로 다양한 작업 수행을 지원하지만 JavaScript 프로그램을 통하지 않는 프록시가 많이 있습니다. 바라보다많은 프록시에 투명한 로컬 프록시

PAC 파일은 JavaScript 프로그램이므로 PAC 파일을 지원하려면 JavaScript 인터프리터가 필요합니다. JavaScript로 작성된 에이전트가 있지만 PAC 파일을 지원하는 에이전트를 찾을 수 없습니다. 파이썬 라이브러리아빠 파서Mozilla의 JavaScript 엔진 위에 PAC 지원을 구현하고Python으로 작성된 많은 에이전트, 그러나 놀랍게도 pacparser를 사용하는 실제 에이전트는 없는 것 같습니다.

답변2

어... 결국 pac 대신 다른 규칙을 사용하게 되었고 시도해 봤습니다.은둔효과가있다. 이것이 제가하는 것입니다.

  1. Privoxy를 설치하고 들어보세요 127.0.0.1:1234.
  2. 얻다gfwlist.txt그리고변화Privoxy 작업 파일에 넣습니다.
  3. 작업 파일에서 일부 URL은 프록시를 사용하여 전송되고 다른 URL은 직접 연결됩니다.

답변3

나는 당신과 같은 상황에 있으며, pac 파일 등을 구문 분석하여 유효한 프록시의 IP와 포트를 가져와서proxychains.conf를 채우는 방법을 알아내려고 노력하고 있습니다.

지금까지 제가 찾은 가장 쉽고 빠른 방법은 lynx, grep, awk 및 sed를 사용하여 스크립트를 작성하는 것입니다. 가장 예쁜 코드는 아니지만 작동하고 1분 이내에 프록시 테이블을 업데이트합니다.편집하다누군가가 이 스크립트를 단순화하는 방법을 말해 줄 수 있다면 좋을 것입니다.

#!/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."'

cron 항목으로 설정하고 매시간 테이블을 업데이트하면 됩니다. ProxyChain과 Firefox는 함께 잘 작동하지 않기 때문에 Proxynovacom의 pac을 자동 구성 파일로 사용했는데 원활하게 작동했습니다.

관련 정보