proxy2ch
- 概要
- 使い方
- コマンドオプション
- テスト版
- 過去のリリース
- 派生版、ツール
- GUIフロントエンドツール
- iOS版 proxy2ch
- Windows9x版 proxy2ch
- OpenWrt版 proxy2ch
- Tips
- ウインドウを非表示で起動するVBS
- proxy2chを起動・終了させるAHKスクリプト
- Linuxでのコンパイルエラー回避
- UNIXシェルによるproxy2ch起動
- proxy2ch helperの画面レイアウトを自分用に変えたい
- 『不正なPROXYを検出しました』を回避したい
- 『アプリケーションを正しく起動できませんでした』ダイアログが出る
- 『送信された内容が破損しています』を回避したい
- フィールド順序 --bbscgi-postorderオプション
概要
CUI。
起動する前にショートカットやBATファイル等に設定を書いておくタイプ。
起動すると、コマンドプロンプト(黒い画面)が立ち上がり、設定が表示されて使える状態になる。
以降はエラーが起きる度にエラーメッセージが表示される。
何も設定しないで起動した場合、
ユーザーエージェントは接続したブラウザの設定、待ち受けポートは9080で立ち上がる。
通信速度が高速で、メモリ消費量が少ないのが特長。
作者 | |
動作環境 | Windows / Mac / Linux(※C++ソース同梱、要コンパイル) |
動作タイプ | API HTML |
最新版 | Version 20230713 https://notabug.org/NanashiNoGombe/proxy2ch/releases |
公開gitリポジトリ | https://notabug.org/NanashiNoGombe/proxy2ch |
備考 | 必要に応じて[GUIツール]や[iOS版]なども参照してください。 |
※20220319 版以降は、新 bbs.cgiへのPOST仕様に対応。
※20210528 版以降は、Luaスクリプトを用いたリクエストヘッダ・ボディの書き換えに対応。
※20171002 版以降は、2ch.net/5ch.netドメイン両対応バージョン。
※20170422 版以降は、新 read.cgi (ver 07.0.0)の新フォーマットへのhtml対応バージョン。
※20170307 版以降は、bbspinkの新フォーマットhtml対応バージョン。
※20151114 版以降は、新 read.cgi(従来のHTMLモードで取得できない鯖)への対応バージョン。
(専用スレ)
2ch.netの仕様変更に対策するスレ
(関連スレ)
※過去ログ
proxy2ch愛好会 Part4
専用ブラウザを助けるプロクシ作らね?27串目
5ch専用ブラウザ用Proxy 総合01
使い方
同梱の README.txt を参照。
●HTML(read.cgi 経由)モード で使う (proxy2ch + JaneXeno)
【1】 先に、「JaneXeno」の設定をする。
【2】 「JaneXeno」で、ツール→設定 - 【通信】 を、以下のように設定する。
・「Proxyを使う」をチェック
・受信用の鯖を localhost 、ポートを 9080 に設定する。(送信用は空欄でよい)
鯖 | ポート | |
受信用 | localhost | 9080 |
送信用 |
※ポート番号 9080 が、「proxy2ch」のデフォルトなので、「proxy2ch」の設定ポートに合わせるのがポイント。
【3】 「JaneXeno」で、ツール→ビューア設定にいき、[書庫,通信] タブを開き、「Proxyを使う」のチェックを外す。
【4】 ここで、一旦「JaneXeno」を終了させる。(※設定を反映させるには、「JaneXeno」の再起動が必要。)
【5】 「proxy2ch」の最新版を、上記のリンクから入手。ウイルスチェック等を済ませ、任意の場所に解凍する。
【6】 解凍して出てきた「proxy2ch-20210416」フォルダの中の「Win32」フォルダにある proxy2ch.exe をクリックして起動。
※起動に必要なファイルは、proxy2ch.exe、libcurl.dll、libwinpthread-1.dll の3つ。
【7】 コマンドプロンプトが起動すればOK。
【8】 続いて、「JaneXeno」を起動すれば、いつも通り閲覧できる。
(起動画面)
Process start...
proxy2ch version 20210519 with curl 7.76.1 (TLS/SSL backend: Schannel)
Global User-Agent: n/a
Listening on port 9080...
_
proxy2ch version 20210519 with curl 7.76.1 (TLS/SSL backend: Schannel)
Global User-Agent: n/a
Listening on port 9080...
_
コマンドオプション
同梱の README.txt を参照。
(proxy2ch -h の実行結果例)
proxy2ch version 20220522 with curl 7.82.0 (TLS/SSL backend: Schannel)
Scripting enabled with Lua 5.4.2
usage: proxy2ch [OPTIONS]
available options:
Scripting enabled with Lua 5.4.2
usage: proxy2ch [OPTIONS]
available options:
-p <port> : Listen on port <port> (default: 9080) -t <timeout> : Set connection timeout to <timeout> seconds (default: 30) -a <user-agent> : Overwrite user-agent for connection -g : Accept all incoming connections (default: localhost only) -c : Accept HTTP CONNECT method (act as an HTTPS proxy) -4 : Force IPv4 DNS resolution -b <backlog> : Set backlog value to <backlog> for listen() (default: 32) -s : Force https connection for 5ch.net/bbspink.com URLs --proxy <server:port> : Use proxy <server:port> for connection --api <AppKey:HmacKey> : Use API for reading/posting --api-usage <read|post|all> : Specify operations where API is used (default: all) --api-auth-ua <user-agent> : Specify user-agent for API authentication --api-dat-ua <user-agent> : Specify user-agent for dat retrieving via API --api-auth-xua <X-2ch-UA> : Specify X-2ch-UA for API authentication --api-dat-xua <X-2ch-UA> : Specify X-2ch-UA for dat retrieving via API --api-server <server> : Specify gateway server for API --bbsmenu <URL> : Replace "5ch.net" occurrences in links for URL --chunked : Preserve "chunked" transfer encoding --bbscgi-header <header: value> : Force replace header when sending request to bbs.cgi --bbscgi-postorder <field1,field2,...> : Specify a field order in request body being sent to bbs.cgi --bbscgi-utf8 <none|api|all> : Specify whether a request body being sent to bbs.cgi should be converted to UTF-8 --bbscgi-lua <path> : Process request header/body being sent to bbs.cgi with a Lua script at <path> --verbose : Print logs in detail --gikofix : Fix invalid HTTP POST body (for gikoNavi) --keystore <path> : Use a file at <path> as a persistent storage for MonaKey --num-threads <num> : Specify number of threads in a thread pool
テスト版
通常配布版の入手先は上記の[概要]を参照。
※20170422ベース 20170427 test4
※20170422ベース 20170426 test1,2,3
過去のリリース
(関連レス)
※Tor板、5chスレの投稿
派生版、ツール
GUIフロントエンドツール
proxy2ch の実行を補助するためのツール。
GUI画面から proxy2ch を起動でき、またツールとの連携で同時に起動・終了が可能。
更新日時 | ツール名 | 実行形式 | 入手先 |
---|---|---|---|
2017/10/09 02:52 |
proxy2ch helper | HTMLアプリ | https://pastebin.com/F4AZNPdX |
2017/10/06 01:59 |
proxy2ch Frontend | バイナリ | 専用ページを参照 |
■proxy2ch Frontend
専用ページを参照。
■proxy2ch helper
proxy2ch と同じフォルダにダウンロード後、拡張子 .hta にリネームして実行する。
必要な項目を設定後、「開始」ボタンを押すと proxy2ch が起動される。
なお、設定した項目内容は、「保存」ボタンを押すか helper 終了時に .hta ファイル内に記録される。
(設定画面の一覧)
iOS版 proxy2ch
作者 | |
動作環境 | iOS(※Jailbreak環境、iOS4.3/6.1/7 SDK) |
動作タイプ | API(iOS6.1/7のみ?) HTML |
最新版(iOS4.3) | proxy2ch-20150326-ios.tar.gz (※2015/03/28 03:24 更新) http://xiwayy2kn32bo3ko.onion.city/test/download.cgi?board=tor&id=2015032803244217913&filetype=.gz |
最新版(iOS6.1) | proxy2ch-20150326-ios6.zip (※2015/04/18 15:51 更新) http://xiwayy2kn32bo3ko.onion.city/test/download.cgi?board=tor&id=2015041815513704204&filetype=.zip |
最新版(iOS7) | proxy2ch-20150326-ios7.zip (※2015/04/18 12:58 更新) http://xiwayy2kn32bo3ko.onion.city/test/download.cgi?board=tor&id=2015041812583008276&filetype=.zip |
(関連レス)
138 :完全匿名の名無しさん:2015/03/28(土) 03:24
proxy2chをiOS向けにビルドしたもの
Jailbreak環境でしか動かないよ
iOS4.3 SDKでビルドしたよ
iOS4.3 SDKだとcurlがSSLサポートを有効にできなかったのでAPIモードでは動かんよ
骨董品のiPod touch 4th with iOS 5で動いてるけど他で動くのかは知らんよ
167 :完全匿名の名無しさん:2015/04/18(土) 12:58
iOS7 SDKでビルドしたもの
実機持ってないから動くのかはシラネ
169 :完全匿名の名無しさん:2015/04/18(土) 15:51
iOS6.1 SDKを引っ張ってきた
770 名前:名無しさん@お腹いっぱい。[] 投稿日:2015/03/30(月) 14:50:06.70 ID:0O9WdxNm0 [2/3]
iOS版のproxy2ch使う場合proxypacはどこに置いとけばええの
773 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2015/03/30(月) 14:58:04.63 ID:xtqNvXU00 [2/3]
>>770
ORE KOKO NI SITERU
URL:file:///private/var/preferences/***.pac
778 名前:名無しさん@お腹いっぱい。[] 投稿日:2015/03/30(月) 16:50:44.91 ID:0O9WdxNm0 [3/3]
>>773
2chだけ読み込めない・・・ぼすけて
788 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2015/03/30(月) 17:40:49.64 ID:xtqNvXU00 [3/3]
>>778
KORE DE DOU?
function FindProxyForURL(url, host)
{
if (shExpMatch(url, "http://*.2ch.net/*.dat")) return "PROXY 127.0.0.1:9080";
else if (shExpMatch(url, "http://*.bbspink.com/*.dat")) return "PROXY 127.0.0.1:9080";
else return "DIRECT";
}
829 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2015/03/31(火) 08:48:57.17 ID:trwEQsZf0
>>788
いけたありがと
【twinkle他API未対応ブラウザで2chを見る方法・単独編】
・下準備
1.
脱獄し、MobileTerminalとiFileをインストール
2.
http://xiwayy2kn32bo3ko.onion.city/test/download.cgi?board=tor&id=2015032803244217913&filetype=.gz
↑をダウンロードし、解凍したproxy2chを/var/Mobileに入れる
3.
Terminalを起動し、root権限を取得
su→パスワード入力(初期値はalpine)
4.
以下のコマンドを順に入力
chmod 755 ./proxy2ch
nohup ./proxy2ch &
以後、iPhone再起動の度にTerminalでnohup ./proxy2ch &と入力する必要がある
5.
http://xiwayy2kn32bo3ko.onion.city/test/download.cgi?board=tor&id=2015032700020101441&filetype=.zip
↑をダウンロードし、解凍したproxy.pacをvar/preferencesに入れる
・wifi用設定
設定→Wi-Fiを開き、使用したいwifi設定の右のiボタンを押す
一番下のHTTPプロキシで自動を選択し、URLにfile:///var/preferences/proxy.pacと入力
・3G 4G用設定
/var/preferences/SystemConfiguration/preferences.plistのをiFileのテキストビューアーで編集
https://code.google.com/p/wallproxy/wiki/iOSFAQ
↑の<!-- 下行开始 -->から<!-- 上行结束 -->の間の文字列を追加し、
http://127.0.0.1:8086/proxy.pacをfile:///var/preferences/proxy.pacに書き換え、
保存でiPhone再起動
この際、文字列追加箇所を間違えやすいので、(ip1)を目印に探すこと
慎重に行くならpreferences.plistのバックアップも取っておくこと
5.
終了時には以下のコマンドを入力
killall proxy2ch
596 名前:iOS[sage] 投稿日:2015/03/31(火) 15:10:15.04 ID:uFC/NGzn [1/4]
うーん一度いけてそのあとはこうなってしまうなぜだろうだれかなんかご教授ください
http://i.imgur.com/t1RFKgn.jpg
598 名前:iOS[sage] 投稿日:2015/03/31(火) 15:19:48.15 ID:3MPXfd57 [4/5]
>>596
それmobile terminal(ios7)でしょ
iOS terminal使え
そのままがいいならcore utilities入れればいけるはず
前者のやつ俺入れてたが同じようにコマンド入ってなかったから自動追加されないんだろうな
Windows9x版 proxy2ch
古いWindowsで使えるように有志によりパッチ当てされたproxy2ch。
作者 | |
動作環境 | proxy2ch9x : Windows 95/98/98SE/Me proxy2chCE : Windows CE 3.0,4.0,5.0 (ARM)/PocketPC 2000,WindowsMobile 5,6 (ARM) |
動作タイプ | API(20151114-rev2以降) HTML |
最新版 | proxy2ch9x-20220522 (※2022/05/23 更新) https://1drv.ms/f/s!AvNsCKBzSl7rgxKoc9mCrjzCDtsN |
(関連レス)
OpenWrt版 proxy2ch
OpenWrt/LEDEファームウェアで稼働中のルーターで使えるように有志によりパッチ当てされたproxy2ch。
作者 | |
動作環境 | OpenWrt 21.02 / ath79 アーキテクチャ用 |
動作タイプ | API HTML |
最新版 | proxy2ch_20220522-1_mips_24kc (※2022/05/23 更新) http://alicubi.starfree.jp/openwrt/21.02/packages/mips_24kc/test/proxy2ch_20220522-1_mips_24kc.ipk |
(関連レス)
Tips
ウインドウを非表示で起動するVBS
ウインドウが出ないので、起動してるかどうかはタスクマネージャで確認する。
終了させるのもタスクマネージャで。
CreateObject("WScript.Shell").Run """C:\フォルダ名\proxy2ch.exe"" -p ""ポート番号"" -a ""好きなUser-Agent""",0
上の1行をコピペしてテキストファイルを作って、(適当な名前).vbs で保存。
C:\フォルダ名 、ポート番号、 好きなUser-Agent は適当に書き換える。
次からは、vbs をダブルクリックで起動。
最後の「,0」は、ウィンドウの表示(1)・非表示(0)。
最後の「,0」の後は、改行しないこと。半角スペースもNG。
(例)
CreateObject("WScript.Shell").Run """D:\Program Files\JaneXeno\proxy2ch\proxy2ch.exe"" -p ""8080"" -a ""Mozilla/5.0 (Windows NT 6.1; WOW64; rv:36.0) Gecko/20100101 Firefox/36.0""",0
※ショートカットをいじって「最小化」という手も。
【1】 proxy2ch.exe を右クリック → ショートカットの作成
【2】 ショートカット を右クリック → プロパティ → 実行時の大きさを「最小化」
(設定例)
proxy2chを起動・終了させるAHKスクリプト
908 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2015/03/26(木) 07:21:21.06 ID:kxJ0z2Ai0
proxy2chを起動したり終了したりするAHKスクリプト適当
DetectHiddenWindows, On
Process, Exist, proxy2ch.exe
if (ERRORLEVEL <> 0)
WinClose, ahk_pid %ERRORLEVEL%
else
Run, D:\hogehoge\proxy2ch.exe,, Hide
Linuxでのコンパイルエラー回避
24 :名無しさん@お腹いっぱい。 [sage] :2015/03/28(土) 09:31:26.85 ID:1JXaWHbD0
proxy2ch-20150326.zip
makeが通りません。
proxy2ch-20150326$ make
g++ -O2 -c main.cpp
main.cpp: In function ‘void log_printf(int, const char*, ...)’:
main.cpp:43:23: error: ‘va_start’ was not declared in this scope
va_start(argp, format);
^
main.cpp:45:13: error: ‘va_end’ was not declared in this scope
va_end(argp);
^
make: *** [main.o] Error 1
よろしくお願いします
25 :名無しさん@お腹いっぱい。 [sage] :2015/03/28(土) 09:39:24.89 ID:XchxShWn0
>>24
Linux環境ならmain.cppに#include <stdarg.h>を追加するとかなんとか
過去ログにあった
UNIXシェルによるproxy2ch起動
※APIキー部分はオトナの事情で"ごにょごにょ"してます。
27 :名無しさん@お腹いっぱい。 [sage] :2015/03/28(土) 16:09:16.51 ID:Zar3CLGZ0
今、この下のスクリプトで起動してますが
(途中、長すぎると出て書き込めなかったので改行してます)
#!/bin/bash
~/proxy2ch -p 8080 -a 'Mozilla/5.0 (Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko' --api 'ごにょごにょ:ごにょごにょ'
--api-auth-ua 'Mozilla/3.0 (compatible; JaneStyle/3.83)' --api-dat-ua 'Mozilla/3.0 (compatible; JaneStyle/3.83)' --api-auth-xua 'JaneStyle/3.83' --api-dat-xua 'JaneStyle/3.83' &
/home/assy/jd/jd && killall proxy2ch
下記のような感じで訂正しやすくしたいのですがうまくできません
#!/bin/bash
IFS_BACKUP=$IFS
IFS=$'\n'
PORT=8080
UA='Mozilla/5.0 (Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko'
APPKEY='ごにょごにょ'
HMKEY='ごにょごにょ'
APIAUTHUA='Mozilla/3.0 (compatible; JaneStyle/3.83)'
APIDATUA='Mozilla/3.0 (compatible; JaneStyle/3.83)'
APIAUTHXUA='JaneStyle/3.83'
APIDATXUA='JaneStyle/3.83'
~/proxy2ch -p $PORT -a $UA --api $APPKEY:$HMKEY --api-auth-ua $APIAUTHUA --api-dat-ua $APIDATUA --api-auth-xua $APIAUTHXUA --api-dat-xua $APIDATXUA &
/home/assy/jd/jd && killall proxy2ch
IFS=$IFS_BACKUP
うまく行く方法無いでしょうか?
28 :名無しさん@お腹いっぱい。 [sage] :2015/03/28(土) 17:27:05.08 ID:2Q2oQzZl0
>>27
そんなの、この程度で十分だろ
#!/bin/sh
APPKEY='~~~~'
HMKEY='~~~~'
path/to/proxy2ch -p 8080 --api "$APPKEY:$HMKEY" \
-a 'Mozilla/5.0 ~~~' \
--api-auth-ua '~~~~~' \
--api-dat-ua '~~~~~' \
--api-auth-xua '~~~~~' \
--api-dat-xua '~~~~~' &
/home/assy/jd/jd && killall proxy2ch
29 :名無しさん@お腹いっぱい。 :2015/03/28(土) 17:57:34.08 ID:T7h7lGEm0
>>27
#!/bin/bash
APIKEY='自分で調べてね'
HMKEY='自分で調べてね'
UA='Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko'
APIAUTHUA='Mozilla/3.0 (compatible; JaneStyle/3.83)'
PIDATUA='Mozilla/3.0 (compatible; JaneStyle/3.83)'
APIAUTHXUA='JaneStyle/3.83'
APIDATXUA="JaneStyle/3.83"
PORT=8888
TIMEOUT=9
PROXY=''
OPENPROXY=''
eval CHPROXYPATH="~/2ch/proxy2ch"
eval JDPATH="~/jd-2.8.9-150226/jd"
[ -e "${CHPROXYPATH}" ] | | exit ; [ -x "${CHPROXYPATH}" ] | | exit ; [ -e "${JDPATH}" ] | | exit ; [ -x "${JDPATH}" ] | | exit
if [ "${APIKEY}" -a "${HMKEY}" ]; then
"${CHPROXYPATH}" ${PORT:+ -p "${PORT}"} ${TIMEOUT:+ -t "${TIMEOUT}"} ${UA:+ -a "${UA}"} ${OPENPROXY:+ -g} ${PROXY:+ --proxy "${PROXY}"} \
--api ${APIKEY}:${HMKEY} \
${APIAUTHUA:+ --api-auth-ua "${APIAUTHUA}"} \
${APIDATUA:+ --api-dat-ua "${APIDATUA}"} \
${APIAUTHXUA:+ --api-auth-xua "${APIAUTHXUA}"} \
${APIDATXUA:+ --api-dat-xua "${APIDATXUA}"} &
else
"${CHPROXYPATH}" ${PORT:+ -p "${PORT}"} ${TIMEOUT:+ -t "${TIMEOUT}"} ${UA:+ -a "${UA}"} ${OPENPROXY:+ -g} ${PROXY:+ --proxy "${PROXY}"} &
fi
echo "proxy2ch PID= $!";sleep 1;"${JDPATH}";echo "JD $?";sleep 1;
kill $!
echo "kill $?";sleep 1
exit
30 :名無しさん@お腹いっぱい。 [sage] :2015/03/28(土) 18:35:15.35 ID:Zar3CLGZ0
>>28
"$APPKEY:$HMKEY" → ${APPKEY}:${HMKEY} に変更したらいけました
ありがとう
>>29
すごいです・・・
とても勉強になります
ありがとう
31 :名無しさん@お腹いっぱい。 :2015/03/28(土) 19:22:44.66 ID:T7h7lGEm0
#これproxy起動前に付けてproxy2重起動防
CHPROXYPID=$(pgrep -f "${CHPROXYPATH}")
if [ ${CHPROXYPID} ]; then
kill ${CHPROXYPID}
echo "kill proxy2ch"
fi
proxy2ch helperの画面レイアウトを自分用に変えたい
proxy2ch helper はHTMLベースのhtaファイルのため、HTML5の構文を知っていれば、自分用の設定画面にカスタマイズできる。
修正場所は以下の部分。
:
<BODY bgColor=threedface>
<FORM action=javascript:void(start())>
:
(画面レイアウトのHTMLタグ群)
:
</FORM></BODY></HTML>
(カスタマイズした設定画面例)
『不正なPROXYを検出しました』を回避したい
--bbscgi-headerオプションを使いAcceptヘッダーを書き換えて対処する。
proxy2ch.exe --bbscgi-header "Accept: text/html"
『アプリケーションを正しく起動できませんでした』ダイアログが出る
proxy2ch-20180624から付属してるlibcurl.dll(7.60.0)が原因。
対処法は別バージョンのlibcurl.dllを持ってくること。
(proxy2ch-20171003r以前にはlibcurl.dll(7.53.1.0)が付属している)
794 名無しさん@お腹いっぱい。 2018/06/25(月) 01:59:30.80 ID:
最新バージョンにしたらエラーが出て起動しないわ
796 名無しさん@お腹いっぱい。 2018/06/25(月) 02:04:35.38 ID:
>>794
1個前のlibcurl.dll(7.53.1.0)に戻せばいい。
『送信された内容が破損しています』を回避したい
--gikofixオプションを使い対処する。
proxy2ch.exe --gikofix
フィールド順序 --bbscgi-postorderオプション
bbs.cgiにPOSTされるリクエストボディのフィールドの順序を指定する。
カンマ区切りでフィールド名を並べて順序を指定。
例えば--bbscgi-postorder "FROM,mail,MESSAGE,bbs,key,time,submit"とすると、
FROM=A&mail=B&MESSAGE=C&bbs=D&key=E&time=F&submit=Gのように並び替えられる。
proxy2ch.exe --bbscgi-postorder "FROM,mail,MESSAGE,bbs,key,time,submit"
指定しなかったフィールドは指定したものの後に続く。
これにより別のブラウザからの投稿に擬態できる。
以下はJane系ブラウザの一例。
submit=A&FROM=B&mail=C&MESSAGE=D&bbs=E&key=F&time=G
proxy2ch.exe --bbscgi-postorder "submit,FROM,mail,MESSAGE,bbs,key,time"
- 最終更新:2023-07-14 00:21:10