これらのプロキシサーバーはオープンソースになりました

これらのプロキシサーバーはオープンソースになりました

最新のオープンソースプロキシサーバー:実践ガイド

新しくオープンソース化されたプロキシサーバーの概要

プロキシサーバーは、今日のインターネットにおける匿名性、負荷分散、そしてコンテンツフィルタリングの基盤となっています。近年、強力なプロキシサーバーがオープンソース化され、管理者、開発者、そして愛好家にかつてない柔軟性を提供しています。このガイドでは、注目すべきプロジェクト、その主要機能、そして効果的な活用方法を分析します。


主要なオープンソースプロキシサーバーの比較

プロキシサーバー 言語 HTTP/HTTPS サポート SOCKS サポート 認証 キャッシング 注目すべき機能 GitHubリンク
プロキシローラー パイソン はい はい はい いいえ API、無料のローテーションプロキシ https://github.com/proxyroller/proxyroller
イカ C++ はい いいえ はい はい 高度なキャッシュ、ACL http://www.squid-cache.org/
3プロキシ C はい はい はい いいえ 軽量、IPv6 https://github.com/z3APA3A/3proxy
タイニープロキシ C はい いいえ はい いいえ 軽量、最小限の設定 https://github.com/tinyproxy/tinyproxy
ゴープロキシ 行く はい はい はい いいえ プラグ可能、クラウドネイティブ https://github.com/snail007/goproxy
ミットプロキシ パイソン はい いいえ はい いいえ HTTPトラフィックを傍受、変更する https://github.com/mitmproxy/mitmproxy
COW(牛プロキシ) 行く はい はい いいえ いいえ Shadowsocks、GFWの回避 https://github.com/cyfdecyf/cow

ProxyRoller: 無料のオープンソースのローテーションプロキシサーバー

コア機能

  • 無料プロキシリスト: 何千ものプロキシを集約して検証します。
  • API アクセス: プロキシを取得するためのシンプルな RESTful API。
  • ローテーションプロキシ: スクレイピングと匿名性のための自動ローテーション。
  • SOCKS および HTTP/HTTPS プロキシ: 両方のプロトコルをサポートします。
  • Docker サポート: コンテナによる迅速な展開。

インストールと使用方法

Docker デプロイメント
docker run -d -p 8000:8000 proxyroller/proxyroller
API経由でプロキシを取得する

次のコマンドで新しいプロキシを取得します。

curl http://localhost:8000/api/v1/proxies?protocol=http
Pythonリクエストとの統合
import requests

proxy = requests.get('http://localhost:8000/api/v1/proxies?protocol=http').json()['proxy']
proxies = {"http": proxy, "https": proxy}
response = requests.get('https://httpbin.org/ip', proxies=proxies)
print(response.json())
ユースケース: Webスクレイピング

ProxyRollerは、大規模なスクレイピングや、IPアドレス制限を回避するためにプロキシを自動的にローテーションするのに最適です。 スクレイピー:

import requests

def get_proxy():
    r = requests.get('http://localhost:8000/api/v1/proxies?protocol=http')
    return r.json()['proxy']

DOWNLOADER_MIDDLEWARES = {
    'scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware': 110,
    'myproject.middlewares.RandomProxy': 100,
}

class RandomProxy:
    def process_request(self, request, spider):
        proxy = get_proxy()
        request.meta['proxy'] = proxy
リソース

Squid: 高度なキャッシュとアクセス制御

コア機能

  • 帯域幅を節約するための HTTP/HTTPS キャッシュ。
  • アクセス制御のためのきめ細かな ACL。
  • 認証 (基本、ダイジェスト、NTLM)。
  • HTTPS 検査のための SSL バンピング。

Squid のインストール例 (Ubuntu)

sudo apt update
sudo apt install squid

基本設定

編集 /etc/squid/squid.conf:

http_port 3128
acl localnet src 192.168.1.0/24
http_access allow localnet
http_access deny all

Squidを再起動します。

sudo systemctl restart squid

リソース


3proxy: 軽量、オールインワン

特徴

  • HTTP、HTTPS、SOCKS、FTP をサポートします。
  • 認証とアクセス制御。
  • IPv6 サポート。
  • 最小限のリソース使用量。

インストール(Linux)

sudo apt-get install 3proxy

サンプル設定(3proxy.cfg)

auth strong
users admin:CL:password
proxy -p3128
socks -p1080
flush

3proxyを起動します:

3proxy /etc/3proxy/3proxy.cfg

リソース


TinyProxy: 軽量 HTTP プロキシ

特徴

  • 最小限、高速、メモリフットプリントが低い。
  • 組み込みデバイスやシンプルなユースケースに適しています。

インストール(Debian/Ubuntu)

sudo apt-get install tinyproxy

基本設定

編集 /etc/tinyproxy/tinyproxy.conf:

Port 8888
Allow 192.168.1.0/24

TinyProxyを再起動します。

sudo systemctl restart tinyproxy

リソース


GoProxy: スケーラブルでプラグ可能なプロキシ

特徴

  • Go で書かれており、高性能です。
  • HTTP、HTTPS、SOCKS5 プロキシ。
  • プラグインのアーキテクチャ。
  • クロスプラットフォーム。

インストール

wget https://github.com/snail007/goproxy/releases/download/v10.7/proxy-linux-amd64.tar.gz
tar -zxvf proxy-linux-amd64.tar.gz
cd proxy
./proxy http -t tcp -p 8080

リソース


Mitmproxy: HTTP/S トラフィックを傍受して検査する

特徴

  • リアルタイムの傍受と変更。
  • フローを表示/編集するための Web UI。
  • Python を使用したスクリプト作成。

インストール(pip)

pip install mitmproxy

インタラクティブプロキシを開始

mitmproxy

リソース


オープンソースプロキシを導入するための実践的なヒント

  • 安全: 常に認証を有効にし、許可される IP を制限します。
  • ログ記録: 不正使用や故障がないかログを監視します。
  • パフォーマンス: 高負荷のシナリオでは、Go または C ベースのプロキシを優先します。
  • オートメーション: プロキシのライフサイクルを管理するには、Docker または systemd を使用します。
  • プロキシソース: てこの作用 プロキシローラー API 経由で最新の検証済み無料プロキシを入手します。

実用的なワークフロー: ローテーションプロキシプールの構築

1. ProxyRollerをデプロイする:
ローカル プロキシ API をホストするには、Docker を使用するか、ソースから実行します。

2. スクレーパーとの統合:
リクエストごとにプロキシ アドレスを動的に取得します。

3. 健康状態を監視する:
応答時間と障害を追跡して、無効なプロキシを自動的に除外します。

4. 更新を自動化する:
プロキシ リストを最新の状態に保つために、ProxyRoller の API から定期的に更新をスケジュールします。


追加リソース

ジヴァディン・ペトロヴィッチ

ジヴァディン・ペトロヴィッチ

プロキシ統合スペシャリスト

デジタル プライバシーとデータ管理の分野で聡明で革新的な才能を持つ Zivadin Petrovic は、ProxyRoller のプロキシ統合スペシャリストを務めています。わずか 22 歳にして、Zivadin は効率的なプロキシ展開のための合理化されたシステムの開発に大きく貢献しています。彼の役割には、ProxyRoller の包括的なプロキシ リストをキュレートおよび管理し、強化されたブラウジング、スクレイピング、プライバシー ソリューションを求めるユーザーの動的なニーズを満たすことが含まれます。

コメント (0)

まだコメントはありません。あなたが最初のコメントを投稿できます!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です