به نام حضرت دوست که هر چه داریم از اوست
و به نام رنگ آزادی و دموکراسی ، سبز!
هدف از تهیه این اسکریپت ، گسترش آزادی و اطلاع رسانی و دسترسی نامحدود در اینترنت برای ایرانیان و مردم سبز داخل ایران می باشد که با توجه به اقدامات دولت کودتا از جمله فیلترینگ سایت های مخالف دولت با بهانه های پوچ و بی محتوا که در جهت کاهش آگاهی مردم صورت گرفته است و می گیرد ، و یا کاهش سرعت اینترنت به بهانه های دروغین و یا از کار انداختن نرم افزارهایی مانند الترا سرف و پوف و خصوصا اقدام اخیر مخابرات ایران که تشخیص و دیکد کردن الگوریتم های رمز نگاری (مانند BASE64) اسکریپت های پروکسی مانند Glype و Zelune و... انجام گرفته است و تمام این کارها بدون شک با همکاری روس ها و چینی ها انجام میگیرد ؛ تصمیم بر آن گرفتیم با تعدادی از دوستان ، اسکریپ های مختلف پروکسی را بررسی کرده و سبک ترین آن را انتخاب کنیم و الگوریتم رمزنگاری آن را تغییر دهیم و علاوه بر آن امکاناتی را به آن اضافه کنیم.
اسکریپت حاضر بر پایه اسکریپت PHProxy می باشد که از نظر سرعت نسبت به دیگر اسکریپت ها بسیار سریع بوده و کم حجم تر می باشد! همچنین این اسکریپت بر خلاف سایر اسکریپت های مشابه از گسترش دهنده CURL استفاده نمی کند . این کار باعث می شود تا این اسکریپت در هاست هایی که گسترش دهنده CURL روی آن نصب یا فعال نیست ، به آسانی کار کند و همچنین گسترش دهنده CURL از توان CPU خیلی زیاد استفاده می کند . همچنین این اسکریپت ساده با نسخه 4 پی اچ پی هم سازگاری دارد .
حداقل امکانات مورد نیاز:
- یک هاست برای آپلود اسکریپت (هاست های رایگان بدلیل فعال بودن safe-mode اکثر توابع پی اچ پی غیر فعال هستند و به احتمال زیاد این اسکریپت کار نمی کند.)
- PHP 4 یا بالاتر که اکثر سرور ها نسخه پی اچ پی خود را به 5 آپدیت کرده اند .
کار با اسکریپت در محیط کاربری:
- در قسمت اول منویی است که با کلیک روی آن ، آدرس آن در قسمت Enter URL ظاهر می شود .
- در قسمت Latest News ، می توانید عنوان آخرین خبرهای سایت راه سبز را مشاهده کنید . با کلیک روی هر عنوان خبری ، لینک آن در قسمت Enter URL ظاهر می شود تا ادامه خبر را بدون محدودیت در سایت راه سبز مشاهده نمایید.
- در قسمت پایین تر ، کادری را می بینید که برخی از سایتهای فیلتر شده و مخالف دولت در آن قرار دارد که این قسمت برای راحتی کار کاربر و دسترسی سریع به سایت های فیلتر شده قرار داده شده است . برای استفاده از این قسمت کافی است روی لینک دلخواه خود کلیک کنید تا لینک آن در قسمت Enter URL ظاهر شود .
- در قسمت Enter URL هم می توانید لینک مورد نظر خود را وارد کنید و در پایان روی دکمه Browse کلیک کنید تا صفحه مورد نظر را بدون محدودیت مشاهده کنید.
- یکی از قسمت های مهم دیگر ، قسمت Options می باشد که با کلیک بر روی آن ، گزینه های مدریتی مختلفی را می بینید:
Include mini URL-form on every page: این گزینه سبب میشود فرمی برای وارد کردن آدرس و ابزارهای مدیریتی این قسمت به صورت کوچک در بالای صفحه مشاهده شود ( پیشفرض فعال) :
(Remove client-side scripting (i.e JavaScript : این گزینه سبب می شود اسکریپت های سمت کلانت مانند جاوااسکریپت یا وی بی اسکریپت یا ... غیرفعال شوند. (پیشفرض غیر فعال)
Allow cookies to be stored: این گزینه سبب می شود کوکی ها پذیرفته و ذخیره شوند . این امکان برای لاگین کردن در سایت های مختلف لازم است . (پیشفرض فعال)
Show images on browsed pages: این گزینه سبب می شود ، تصاویر نیز نمایش داده شوند. (پیشفرض فعال)
Show actual referring Website: این گزینه سبب می شود referer مرورگر نمایش داده شود ، این کار سبب میشود لینکی که شما را به سایتی منتقل کرده به آن سایت فرستاده شود ، (پیشفرض غیر فعال برای مسائل امنیتی)
Strip page title: حذف عنوان صفحه وب (پیشفرض غیرفعال)
Store cookies for this session only: تمام کوکی ها دارای محدودیت زمانی خواهند بود و با بستن مرورگر یا مدت زمانی محدودی ، از مرورگر حذف خواهند شد. (پیشفرض فعال برای مسائل امنیتی)
گزیته های مربوط به انکودینگ:
Use ROT13 encoding on the address : استفاده از الگوریتم Rot13 در انکود (رمزنگاری) URL ها
Use base64 encoding on the address : استفاده از الگوریتم base64 در انکود (رمزنگاری) URL ها
Use a2 encodng on the address: تلفیقی از الگوریتم های بالا و رندوم سازی لینک ها (پیشفرض)
نکته: در صورتی که همه روش ها یا 2 تا از روش ها انتخاب شده باشد ، الویت به صورت زیر است:
a2 ==> base64 ==> rot13
یعنی ابتدایی ترین روش انجام می گیرد یعنی اول a2 در صورتی که a2 انتخاب نشده باشد base64.
تغییر و شخصی سازی اسکریپت:
برای تغییرات عمده و اصلی می توانید فایل index.php را با notepad یا wordpad یا Notepad++ یا ادیتور های پیشرفته تر باز کرده و صورت زیر عمل کنید:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 | $_config = array ( 'script_title' => 'A2', 'url_var_name' => 'q', 'flags_var_name' => 'hl', 'get_form_name' => '____pgfa', 'basic_auth_var_name' => '____pbavn', 'max_file_size' => -1, 'allow_hotlinking' => 0, 'upon_hotlink' => 1, 'show_rss' => 1, 'rssItems' => 10, 'rssLink' => 'http://www.rahesabz.net/feeds/allP/', 'show_favorites' => 1, 'compress_output' => 0 ); $_favorites = array ( 'Facebook' => 'http://facebook.com', 'Twitter' => 'http://twitter.com', 'RaheSabz' => 'http://rahesabz.net', 'Balatarin' => 'http://balatarin.com', 'Youtube' => 'http://youtube.com', 'Kaleme' => 'http://kaleme.org', 'SahamNews' => 'http://sahamnews.org/', 'AyandeNews' => 'http://ayandenews.com', 'RoozOnline' => 'http://roozonline.com', 'ParlemanNews' => 'http://parlemannews.ir', 'BBCPersian' => 'http://bbc.co.uk/persian', 'IranNewsAgancy(INA)' => 'http://irannews-ina.com', 'VOAPersian' => 'http://www1.voanews.com/persian', 'RadioFarda' => 'http://www.radiofarda.com', 'AkhbarRooz' => 'http://akhbar-rooz.com', 'SedayeFarda' => 'http://sedayefarda.com', 'IranianUK' => 'http://iranianuk.com', 'Sazegara' => 'http://sazegara.net', 'AkbarAlami' => 'http://akbaralami.com', 'KhodNevis' => 'http://www.khodnevis.org/persian/', 'Hiss' => 'http://irhiss.com', 'GOrdab' => 'http://gordab.com' ); $_navItems = array ( 'Facebook' => 'http://facebook.com', 'YouTube' => 'http://youtube.com', 'RaheSabz' => 'http://rahesabz.net' ); $_flags = array ( 'include_form' => 1, 'remove_scripts' => 0, 'accept_cookies' => 1, 'show_images' => 1, 'show_referer' => 0, 'a2_encode' => 1, 'rotate13' => 0, 'base64_encode' => 0, 'strip_meta' => 1, 'strip_title' => 0, 'session_cookies' => 1 ); $_frozen_flags = array ( 'include_form' => 0, 'remove_scripts' => 0, 'accept_cookies' => 0, 'show_images' => 0, 'show_referer' => 0, 'a2_encode' => 0, 'rotate13' => 0, 'base64_encode' => 0, 'strip_meta' => 0, 'strip_title' => 0, 'session_cookies' => 0 ); $_labels = array ( 'include_form' => array('Include Form', 'Include mini URL-form on every page'), 'remove_scripts' => array('Remove Scripts', 'Remove client-side scripting (i.e JavaScript)'), 'accept_cookies' => array('Accept Cookies', 'Allow cookies to be stored'), 'show_images' => array('Show Images', 'Show images on browsed pages'), 'show_referer' => array('Show Referer', 'Show actual referring Website'), 'a2_encode' => array('A2', 'Use a2 encodng on the address'), 'rotate13' => array('Rotate13', 'Use ROT13 encoding on the address'), 'base64_encode' => array('Base64', 'Use base64 encodng on the address'), 'strip_meta' => array('Strip Meta', 'Strip meta information tags from pages'), 'strip_title' => array('Strip Title', 'Strip page title'), 'session_cookies' => array('Session Cookies', 'Store cookies for this session only') ); |
I. آرایه config:
این آرایه تنظیمات اصلی اسکریپت را کنترل می کند که تک تک در زیر شرح داده می شود:
script_title : عنوان اسکریپت را مشخص می کند. (پیشفرض A2
url_var_name : نام متغیر در لینک را مشخص می کند (پیشفرض : q ) :
flags_var_name : نام آرایه متغیر های قسمت Options (پیشفرض : hl )
get_form_name: نام تگ input از نوع hidden که در صورتی که متد فرم GET تعریف شود به کار می رود.
basic_auth_var_name: نام تگ input از نوع hidden که در صورتی که صفحه لاگین تنظیم شود در فرم لاگین قرار می گیرد.
max_file_size : سقف حجم مجاز برای دانلود فایل ، -1 یعنی بدون محدودیت حجمی
allow_hotlinking : اجازه استفاده از لینک دادن به صورت مستقیم برای صفحات
upon_hotlink: واکنش اسکریپت نسبت به hotlink را کنترل می کند . عدد 1 نمایش پیغام خطایی در صفحه اول اسکریپت ؛ عدد 2 برای نمایش پیغام 404 ؛ و مقدار دیگر سبب redirect کردن اسکریپت به آدرس وارد شده، می شود.
show_rss : آیا قسمت آخرین اخبار که بر اساس rss انجام می گیرد نمایش داده شود یا خیر (پیشفرض 1 برای نمایش هست)
rssItems : تعداد نمایش آیتم های آخرین اخبار ( باید به تعداد آیتم های سایت مرجع نیز توجه شود!)
rssLink : لینک آدرس rss برای دریافت اخبار
show_favorites : نمایش لینکهای منتخب (پیشفرض 1 برای نمایش)
compress_output : فشرده سازی یا gzip کردن صفحات برای کاهش bandwidth سرور و کاهش حجم صفحات ، این کار از cpu بیشتر مصرف می کند بنابراین در سرورهایی که cpu های قوی دارند پیشنهاد می شود (پیشفرض 0 برای غیر فعال سازی)
II. آرایه favorites :
در این آرایه می توانید لینک های منتخب خود را برای نمایش در صفحه اصلی قرار دهید .
III . آرایه navItems :
آیتم های منوی بالا (navbar) را می توانید در این قسمت وارد کنید.
IV. آرایه flags :
در این قسمت می توایند پیشفرض فعال یا غیرفعال بودن گزینه های قسمت Options را که در بالا هم توضیح داده شد ، تنظیم کنید .
V. آرایه labels :
در این قسمت می توانید به ترتیب مقدار name تگ input از نوع checkbox را برای گزینه مورد نظر تغییر دهید ؛ در قسمت دوم عنوان یا توضیح کوتاه گزیته مورد نظر برای نمایش در فرم کوچک در هنگام نمایش صفحات ، تنظیم می شود. در قسمت پایانی نیز عنوان یا توضیح بلند گزینه مورد نظر در صفحه اصلی نوشته می شود.
VI . تغییر قالب:
برای تغییر قالب نیز می توانید فایل های index.inc.php و main.css را تغییر دهید. این کار نیاز به اطلاعاتی در مورد HTML و CSS می باشد.
تغییرات عمده ای که در نسخه های آینده انجام خواهد گرفت: (Road Map)
- تغییر الگوریتم های رمز نگاری موجود در صورت نیاز و شناسایی شدن
- افزودن حداقل 2 الگوریتم رمز نگاری دیگر به اسکریپت
- افزدون امکان رمزنگاری محتوای صفحه
- افزودن سیستم rss پیشرفته تر
- افزودن سیستمی برای قالب ها
- افزودن راهنما در اسکریپت
- افزودن قالب های متنوع
- افزودن افکت ها و امکانات web2 و ای جکس (AJAX)
- بهینه ساری امنیت و سرعت اسکریپت
- رفع باگ های احتمالی
- ایجاد صفحه لاگین
- ایجاد صفحه مدیریت کوکی ها
ارتباط با ما:
Email:
a2freedom4iran@gmail.com
blog:
a2freedom.blogspot.com
or
httpS://a2freedom.wordpress.com
4shared:
httpS://a2freedom.4shared.com
https://sourceforge.net/projects/a2freedom