هوستي: برنامج نصي لإزالة الإعلانات في أي متصفح

منذ أن جربت تطبيق AdAway لنظام Android ، بحثت عن نفس الشيء لنظام Linux ، لكن لم أجده ، إذا كانت هناك حلول مماثلة مثل تلك التي تم نشرها بالفعل هنا البرنامج النصي لإزالة الإعلانات في أي متصفح، لكنه ليس بالضبط ما أبحث عنه. ماهو الفرق؟ يأخذ AdAway خطوطًا متعددة ، ويدمجها ، ويزيل الخطوط المكررة ، وينظف الملف.

وكذلك البرامج النصية التي وجدتها لم تستخدم ملف المضيفين الأصلي ، أي أن تكوينات ملف المضيفين لم تكن في ملف المضيفين الذي تم إنشاؤه. لذلك ، وجدت نصًا قريبًا جدًا من البحث ، وقمت بتحريره وتغييره لتحقيق ما أريده بالضبط ، وكانت النتيجة الضيوف، لذلك أطلق عليه.

مزايا على AdBlock وملحقات المتصفح الأخرى؟ بالإضافة إلى حقيقة أن هذا يعمل على نظام التشغيل بأكمله مرة واحدة ، فإنه يتجنب استخدام موارد هذا النوع من الامتدادات.

الاحتياجات:

يتطلب cURL و Wget

نقوم بتثبيت المتطلبات:

Ubuntu / Mint / Debian:
$ sudo apt-get install curl wget

القوس / مانجارو / أنترجوس:
$ sudo pacman -S curl wget

فيدورا / RHEL / CentOS:
$ sudo yum install curl wget

سوس:
$ sudo zypper in curl wget

تثبيت هوستي:

$ sudo rm /usr/local/bin/hosty ; sudo wget -c https://github.com/juankfree/hosty/raw/master/hosty -O /usr/local/bin/hosty ; sudo chmod +x /usr/local/bin/hosty

نقوم الآن بتشغيله (تذكر تشغيله مرة واحدة على الأقل في الأسبوع أو كل شهر لتحديث ملف المضيفين الخاص بك وحظر المواقع الإعلانية الجديدة):
$ hosty

استعادة ملف المضيفين الأصلي

$ sudo cp /etc/hosts.original /etc/hosts

قم بإلغاء تثبيت البرنامج النصي

$ sudo rm /usr/local/bin/hosty

تلميح: إذا كنت ترغب في تعديل ملف المضيفين ، فإنني أوصيك بتعديل الملف /etc/hosts.original ثم تشغيل hosty ، وبهذه الطريقة سيقوم hosty بإنشاء ملف hosts بإعداداتك الشخصية (افعل ذلك إذا كنت قد قمت بالفعل بتشغيل hosty من قبل ، وليس قبل ذلك).

كل كود البرنامج النصي متاح في بلدي GitHub جيثب:.

تحيات!


اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.

  1.   جورجيسيو قال

    لا تنس إضافته إلى Cron أيضًا. لقد فعلت ذلك لجعل هذا ضرب من أجلي.

    لقد اختبرت ذلك للتو ، وهو يعمل بشكل مثالي. أود أن أذهب إلى حد القول إنه يعمل بشكل أفضل من الطريقة مع الشياطين مثل Squid أو Privoxy.

    هو موضع تقدير!

    1.    جورجيسيو قال

      شك ، نعم:

      كيف أساهم في قائمة الإعلانات الممنوعة؟ سأقوم بتحميل بعض إلى جيثب الخاص بي الذي جربته للتو وهم يعملون.

      الدراما هي أيضًا أن المساحة (القسم) تُترك بمسافة مع تحذير بأنه "لا يمكن توصيله". المساعدة موضع تقدير 😀

      1.    johnfree قال

        لقد حصلت على المشكلة ، تم تضمينها بالفعل ، قم بتشغيل hosty لتحديث المضيفين. يتم أخذها مباشرة من المستودع الخاص بك.

  2.   بابل قال

    طريقة رائعة. بسيطة وسهلة. شكرا.

  3.   البلوط قال

    شكرا على الادخال. يعمل.

  4.   ثيكاتوني قال

    شكراً جزيلاً لعملك ، سأحاول ذلك.

  5.   خواكين قال

    وظيفة جيدة! أعتقد أنك أخطأت في كتابة أمر ما إذا لم أكن مخطئًا:

    sudo cp /etc/hosts.original / etc / hosts

    ألا يجب أن يكون الأمر بالعكس؟

    sudo cp /etc/hosts /etc/hosts.original

    1.    johnfree قال

      لا ، هذا مكتوب بشكل جيد لاستعادة الملف الأصلي. الخطوات الوحيدة المطلوبة هي التثبيت والتشغيل ، والخطوات الأخرى هي العودة إلى المضيف الأصلي وإلغاء تثبيت البرنامج.

      1.    خواكين قال

        نعم ، هذا هو أنني لم أر رمز البرنامج النصي الخاص بك. أدرك الآن أن البرنامج النصي يصنع نسخة من النسخة الأصلية التي تسمى "hosts.original" وقد أفسدت عليك. اعتقدت أنه كان يجب عمل النسخة قبل تشغيل البرنامج النصي. في صحتك!

  6.   الصويا قال

    جيد جدا ، أنا حقا أحب ذلك.

    الاقتراح الوحيد الذي أراه هو "التحليل والتنظيف وإلغاء التكرار والفرز ..." لتضمين ملف "القائمة البيضاء" أو استثناءات

    1.    johnfree قال

      جاهز ، من الآن فصاعدًا يمكنك تضمين استثناءات في /etc/hosts.whitelist واحد لكل سطر. يمكن أن يكون العنوان بمفرده أو مع 0.0.0.0 أو 127.0.0.1 في البداية.

  7.   com.ianpocks قال

    إنه يعمل بشكل جيد للغاية على الأقل في الوقت الحالي !!!

    شكرا جزيلا 🙂

  8.   بيرت قال

    عظيم. فقط ما احتاجه. في Kontact ، كان من المستحيل فتح المتصفح بدون سلسلة الإعلانات المعلقة من المقالة للقراءة.
    غراسياس.

  9.   Xurxo قال

    شكرا لنشر السيناريو.
    إنه قابل للتدقيق والتعديل بسهولة ويوفر لي الاضطرار إلى تحديث قائمتي في / etc / hosts بين الحين والآخر.

  10.   خام قال

    جيد جدا. شكرا للمشاركة. تحيات الأرجنتين.

  11.   مارتن قال

    سؤال واحد ، هل يمكن اكتشاف هذه الطريقة من خلال مواقع الويب المضادة لحظر الإعلانات التي تنتشر على الويب؟

    1.    johnfree قال

      إذا كان قابلاً للاكتشاف ، فحتى الآن على موقع ويب واحد فقط واجهت هذه المشكلة.

      1.    johnfree قال

        قم بإصلاحه عن طريق إضافة الويب إلى القائمة البيضاء.

      2.    مارتن قال

        شكرا على الجواب وعلى الأداة.

  12.   xpt قال

    جيد جدا !!
    شكرا لك!

  13.   بيغاسوسونلاين قال

    كم هو جيد هذا السيناريو!

    كاقتراح أود أن أخبرك لتحسين تنفيذ البرنامج النصي وتضخيمه هو أنه في التعليمات ، استخدم git clone / git pull حتى نستفيد جميعًا من التحديثات!

    شكرا جزيلا لك واستمر في ذلك !!!

    تحياتي
    بيغاسوس

    1.    johnfree قال

      لا أستخدم git لهذا ولكن يتم تحديث البرنامج النصي دائمًا تلقائيًا من اليوم 0. مع هذا السطر البسيط يتم تحديثه دائمًا.
      https://github.com/juankfree/hosty/blob/master/hosty

      تحية! 🙂

  14.   وزارة الزراعة قال

    في أي نقطة ستستعيد ملف المضيف الأصلي؟ أو لست مضطرًا لاستعادته لأن هذه الخطوة لم أفعلها ، حيث أضفتها إلى cron ، وأيضًا كيف يمكنني تعديل المضيفين الأصليين ، كيف ستسير الأمور 😀

    1.    Juank قال

      بالضبط ، من الواضح أن استعادة المضيف الأصلي لا يجب القيام به.

      فيما يتعلق بـ cron ، لا أستخدمه مع cron ، فلدى Google بالتأكيد برامج تعليمية جيدة جدًا ، ومن خططي توسيع المضيف والواجهة الرسومية و cron وما إلى ذلك. لكن في المستقبل.

      لتعديل hosts.original:
      في المحطة: $ sudo FAVORITE-TEXT-EDITOR /etc/hosts.original

      تحيات!

  15.   com.cyttorak قال

    حولا

    لقد حاولت تحسين البرنامج النصي الخاص بك وتركته على هذا النحو: https://github.com/cyttorak/hosty/blob/master/hosty.sh
    ماذا عن؟
    هذه هي المرة الأولى التي أعمل فيها على github ، لذا يرجى إعلامي إذا كان يجب علي إعادة تسمية النص لاحترام حقوق التأليف أو إضافة بعض الاعتراف أو مثل هذا.
    غراسياس.

    1.    Juank قال

      مرحبا!
      سأشرح كيفية المتابعة بشكل طبيعي في Github عندما تريد المساهمة في مشروع 🙂
      1) شوكة - تم
      2) قم بتعديل ما تريد ، والحفاظ على التوافق مع المشروع الأصلي - نصف ، قمت بتعديل الأشياء التي لا تتوافق في المضيف الأصلي ، أعتقد أنك تفهم ما أعنيه ، ويرجى الاحتفاظ بجميع النصوص باللغة الإنجليزية.
      3) تقديم طلب سحب إلى المشروع الأصلي ، للقيام بذلك ، يجب أن تذهب إلى المستودع الخاص بك ، انتقل إلى طلبات السحب https://i.imgur.com/Y1PMKST.png ثم إلى طلب سحب جديد http://i.imgur.com/ljhaIdH.png وشرح كل التغييرات التي تم إجراؤها
      4) ثم أقبل السحب وفويلا ، يتم تحديث المضيف الأصلي باسم المستخدم الخاص بك كمؤلف.

      شكرا جزيلا على اهتمامك ، إذا كنت تريد الاتصال بي بسرعة على مدونتي ، فلديك شبكات التواصل الاجتماعي الخاصة بي http://juankblog.tk/ يفضل أن يكون على Twitter أو G + إذا لم يكن لديك واحد. في صحتك!

      1.    com.cyttorak قال

        حولا
        لقد قمت بالفعل بتعديل الرسالة التي لدي باللغة الإسبانية.
        فيما يتعلق بالنقطة الثانية حول التوافق ، لا أعرف ما تقصده ، هل هو بسبب استخدام awk؟
        من المحتمل أن أكون في الخارج طوال اليوم ، لذا سأفعل السحب غدًا
        شكرا جزيلا. وداعا.

    2.    Juank قال

      أعني التغييرات على README.md و hosty و install.sh ، فهي غير مدعومة من قبل المشروع. ارجع إلى الملفات الأصلية.

      1.    com.cyttorak قال
    3.    Juank قال

      جاهز ، قم بتكييف الملف التمهيدي وحزمة aur مع الكود الجديد وجعلهما أكثر قابلية للقراءة.

      تحياتي وشكرًا لتعاونك مع المشروع ، برنامج مجاني يعيش! : د.

      1.    com.cyttorak قال

        سؤال واحد ، لماذا المجالات الموجودة في السطر 42 من https://github.com/juankfree/hosty/blob/master/hosty.sh من خلال العطش؟ ألا يعني ذلك وجود قائمة بيضاء بغض النظر عما يفعله المستخدم؟

    4.    Juank قال

      هوستي هو مانع إعلانات ، أعتقد ذلك ، إذا قام بحظر مواقع الويب بطريقة تجعل من المستحيل الوصول إلى المحتوى ، تصبح رقابة مفروضة ذاتيًا وتبتعد عن كونها مانع إعلانات ، حتى لو تم عرض المزيد من الإعلانات ، على الأقل هذا يمكنني الوصول إلى مواقع الويب ، لأن الفكرة هي أن أتمكن من استخدام جميع المواقع ، حتى لو كان ذلك يعني مشاهدة الإعلانات.

      يتم استخدام Sed لأن ... لا أعرف ، لقد نجح في الوقت الذي كتبته فيه ببساطة ، وستكون الفكرة استخدام نفس طريقة ملف القائمة البيضاء ، ولكي يقرر المستخدم باستخدام -a / –all إذا كان يريد حظر كل شيء أم لا ، على الرغم من أنني أعتقد أنه لا يمكنك أخذ المعلمات دون تعديل https://github.com/juankfree/hosty/blob/master/hosty أو إذا؟

      1.    com.cyttorak قال

        لقد أجريت الاختبار وإذا كان بإمكاني.
        ميرا http://back.host22.com/ej.sh
        و اهرب
        bash <(curl -s http://back.host22.com/ej.sh) واحد إثنان ثلاثة أربعة
        سيكون الإخراج:
        بارام: واحد
        بارام: اثنان
        بارام: ثلاثة
        بارام: أربعة

        بعد فترة ، سأقوم بسحب آخر مع بعض التحسينات

      2.    com.cyttorak قال

        لقد أجريت الاختبار وإذا كان بإمكاني. يركض
        bash <(curl -s back.host22.com/ej.sh) واحد اثنان ثلاثة أربعة
        وسيكون الناتج:
        بارام: واحد
        بارام: اثنان
        بارام: ثلاثة
        بارام: أربعة

        بعد فترة ، سأقوم بسحب آخر مع بعض التحسينات

      3.    com.cyttorak قال

        لقد أجريت الاختبار وإذا كان بإمكاني. يركض
        bash <(curl -s back. host22. com / ej.sh) واحد اثنان ثلاثة أربعة # إزالة المسافات من عنوان url ، أكتبها على هذا النحو لأنه بخلاف ذلك لن يتم نشر التعليق
        وسيكون الناتج:
        بارام: واحد
        بارام: اثنان
        بارام: ثلاثة
        بارام: أربعة

        بعد فترة ، سأقوم بسحب آخر مع بعض التحسينات

  16.   الأفعى قال

    أفترض أنه سيكون من المبالغة أن نطلب أن تختفي نافذة الإعلان كما يفعل adblock؟ أطلب عدم بقاءها. بالنسبة للباقي ، فإن البرنامج النصي رائع ويمكنك رؤية استهلاك ذاكرة الوصول العشوائي وأكثر من خلال 20 علامة تبويب مفتوحة. هل يمكنني إضافة المزيد من القوائم؟

    1.    يوكيتيرو قال

      ليس الأمر صعبًا ، يمكنك استخدام نمط CSS مخصص في Firefox لمنع هذه النوافذ من البقاء ، وهناك معلومات حول الإجراء هنا ، http://foro.desdelinux.net/viewtopic.php?pid=22259#p22259

      الطريقة هي نفسها بشكل أساسي ، تتم إضافة خطوة واحدة فقط لتجنب الصفحة القبيحة التي تظهر تقول أن صفحة الويب غير متوفرة. اتمني ان يكون مفيدا.

  17.   باتريك قال

    شكرًا جزيلاً لك ، هذا ما كنت أبحث عنه لـ Spotify ، هل سيكون من الممكن إخفاء صندوق الإعلانات الخاص بعميل Linux؟ هل أحتاج إلى إضافته إلى Cron؟

    التحيات،

    1.    Juank قال

      على الرحب والسعة 🙂
      لا أعرف ، لكنه جزء من التطبيق نفسه ، ولا أعتقد أنه سهل للغاية
      لا ، أقوم دائمًا بالتحديث يدويًا
      تحياتي: D!

      1.    ليسكو قال

        لقد قمت بتثبيته من AUR ، لكنه لا يعمل على الإطلاق. والتي قد تكون؟

      2.    ليسكو قال

        مع التعليمات الواردة في هذا المنشور ، لا يعمل ذلك أيضًا بالنسبة لي.

      3.    Juank قال

        قم بتثبيته من AUR:
        $ yaourt -S هوستي

        وتشغيله:
        sudo هوستي

        تحياتي

      4.    ليسكو قال

        أفعل ذلك بهذه الطريقة ، لكنه لا يعمل على الإطلاق. لا أرى أي تسريب إعلاني. لا أعرف ما هي المشكلة. في الوقت الحالي ، أواصل استخدام AdBlock Plus.
        غراسياس.

      5.    يوكيتيرو قال

        يتحققlesco من أن الملف / etc / hosts يحتوي على الإدخالات الجديدة التي تم إنشاؤها بواسطة البرنامج النصي. إذا كان ذلك ممكنًا وللمراجعة ، قم بتمرير محتوى الملف من خلال http://paste.desdelinux.net/

      6.    ليسكو قال

        أود أن أقول إن ملف / etc / hosts فارغ عمليًا. لديها فقط هذه الخطوط:

        # تم إنشاء مضيفي حظر الإعلانات الاثنين مارس 2 20:05:48 ART 2015
        # لا تكتب أسفل هذا الخط. سوف تضيع إذا قمت بتشغيل hosty مرة أخرى.

        عند تشغيل "sudo hosty" أحصل على هذه النتيجة:
        http://paste.desdelinux.net/?dl=5110

        تحية.

      7.    Juank قال

        قم بتشغيل الأمر:
        $ ls -lah / etc / hosts

        والصق الناتج هنا.

    2.    ليسكو قال

      JuanK ، شكرا لاهتمامكم. هذا هو ناتج مثل هذا الأمر:

      -rw-r - r– 1 root root 0 Mar 2 20:15 / etc / hosts

      1.    Juank قال

        يركض:
        هوستي ديبوغ

        والصق ناتج هذا الأمر وبعض الأسطر الأولى من الملف المشار إليها بعد "يمكنك رؤية النتائج في"

      2.    Juank قال

        الأمر هو "hosty –debug"
        مررت بوقت سيء ، إنه "مضيف" متبوعًا بشرطة "-" و "تصحيح"

      3.    Juank قال

        واصلة فضاء hosty واصلة وسط تصحيح أخطاء

      4.    ليسكو قال

        ناتج "hosty-debug":

        http://paste.desdelinux.net/?dl=5112

        الملف المذكور بعد "يمكنك رؤية النتائج في" هو /tmp/tmp.viLL774YmV في حالتي ، وأسطره الوحيدة هي:

        # تم إنشاء مضيفي حظر الإعلانات الأربعاء 4 مارس 23:38:18 ART 2015
        # لا تكتب أسفل هذا الخط. سوف تضيع إذا قمت بتشغيل hosty مرة أخرى.

        لا توجد أسطر أخرى في الملف.

  18.   جيل مونور قال

    هولا خوان!

    شكري لهذا التطور الرائع المسمى hosty.
    كنت أعثر على عناوين أردت إضافتها إلى hosty ، بعض الإعلانات الجديدة ، كيف يمكنني أنا والآخرون مساعدتك في إضافتها إلى "مستودع" الإعلانات؟

    تحيات ARG

    جيلي

  19.   Felipe قال

    مرحبا،
    هل يمكنك وضع ذلك في هاتف ذكي به أوبونتو ، أم يجب عليك تغيير شيء ما لتكييفه؟ وإذا كان الجواب نعم ، فما هو المقاس أكثر أو أقل بعد ارتداءه؟ لمعرفة ما إذا كان لدي مساحة كافية.
    شكر

  20.   بول قال

    فشل البرنامج النصي في توزيعات مثل Gentoo التي لا تستخدم sudo افتراضيًا. يجب عليك إنشاء نسخة بدون sudo والإشارة إلى أن cronjob يجب أن يتم إنشاؤه في cron الخاص بالمسؤول.

    خلاف ذلك ، فكرة ممتازة. كانت هناك حاجة إلى شيء مريح مثل Adaway ولكن لنظام Linux.
    تحية.

  21.   مارسيلو قال

    شكرا جزيلا!!! غاضب جدا !!!

  22.   gato2707 قال

    في أوائل فبراير 2016 ، تم تغيير البرنامج ليصبح أداة للرقابة. شرح أكثر شمولاً في:

    https://elgatoconlinux.wordpress.com/2016/02/20/bloquear-publicidad-no-es-lo-mismo-que-el-activismo-politico-o-la-censura-moralina/

    1.    S قال

      مرحبا. أنا مؤلف التغيير ، وبالتالي فقد أخفقت ، لأن هذا التغيير خطأ غير مقصود.

      تم تعديل البرنامج النصي كما هو موضح في الالتزام للسماح بأمرين
      1- أن السكربت يمكنه استخدام الخطوط بتنسيق zip و .7z
      2- أن يتمكن المستخدم من إضافة مصادر دون الحاجة إلى وضعها في السكربت
      (يمكنك التحقق من ذلك في تعليق الدمج الذي يقدم الخطأ الذي ذكرته).

      أولاً ، وجدت عدة مصادر في zip و 7z واعتقدت أنه من المثير للاهتمام أن البرنامج النصي يمكنه التعامل معها ، لذلك أضفتها (وضعت كل ما وجدته للاختبار بشكل أفضل ، ولهذا السبب يوجد كل شيء) لاختبار التعديلات اللازمة لذلك يمكنني فك ضغطها وإضافتها إلى النتيجة.

      ثم أردت اختبار قائمة aede أيضًا وإضافتها.

      خلال كل هذا أدركت أن هذا منعني من تحميل التغييرات على المشروع لأن هذه المصادر ، كما قلت ، لا ينبغي أن تكون في النص. ومن هنا جاء التعديل الآخر الذي كنت أعلق عليه: يمكن للمستخدم إضافة مصادر (عبر ~ / .hosty) دون الحاجة إلى تعديل البرنامج النصي.

      نظرًا لضيق الوقت ، قمت بإجراء كل هذه التغييرات بشكل متقطع ويبدو أنني نسيت إزالة مصادر البرنامج النصي قبل إجراء الدمج.
      لزيادة الطين بلة ، تم قبول طلب السحب الخاص بي دون إدراك هذا الخطأ.

      أعتقد أنه من المفهوم ألا يقوم أحد بتضمين هذه المصادر على أمل ألا يلاحظ المؤلف الأصلي الذي يتعين عليه قبول طلب السحب ولا المستخدمون النهائيون. لقد كان مجرد خطأ.

      أرجو أن أكون قد أوضحت ما حدث وأطلب منكم تعديل منشورك بحيث ينعكس.

      شكرا جزيلا لك وآسف على الإزعاج.

  23.   إيفان قال

    أهلا جون! أستخدم هذا البرنامج النصي منذ أن قمت بنشره ... ولكنه الآن لا يزيل إعلانات YouTube بعد الآن….

    ممكن تصلحه ؟؟

    شكرا لك!

    تحية!

  24.   بريداتوكس قال

    جيدة.
    أستخدم hosty على Gnu / Linux منذ بعض الوقت. أحاول تشغيله على Mac ، هل يمكنك مساعدتي؟
    تحياتي