Skip to main content

The whitelisting tool of the Ultimate Hosts Blacklist project.

Project description

The Ultimate Hosts Blacklist whitelist script
=============================================

This is the branch which contain the script which we use to whitelist domains or IP into our infrastructure.

Installation
------------

::

$ pip3 install --user ultimate-hosts-blacklist-whitelist



Complementary whitelist
-----------------------

Our script allow us to link one or more file(s) to the system which will be used in complementary of our whitelist list.

Special markers
---------------

If you already used a whitelist list you already know that we generaly only list all domains we want to whitelist one by one.

It's also possible to do that with our whitelisting system but we can do more.

:code:`ALL`
^^^^^^^^^^^

The :code:`ALL` marker will tell the system to escape and regex check againt what follows.

INVALID characters
""""""""""""""""""

* :code:`$`

* As we automatically append :code:`$` to the end, you should not use this character.

* :code:`\\`

* As we automatically escape the given expression, you should not explicitly escape your regular expression when declaring an :code:`ALL` marker.

:code:`REG`
"""""""""""

The :code:`REG` marker will tell the system to explicitly check for the given regex which follows the marker.

:code:`RZD`
"""""""""""

The :code:`RZD` marker will tell the system to explicitly check for the given string plus all possible TDL.


Understanding what we actually do
---------------------------------

If we have the following secondary whitelist list:

::

facebook.com
ALL .gov
REG face
RZD example

our system will actually :

* Remove every line which match :code:`facebook.com` and :code:`www.facebook.com`
* Remove everyline which match :code:`example.*`
* In complementary convert all lines with :code:`ALL ` or :code:`REG` to the right format.
* Check every line again the regular expression.
* Print or save on screen the results.

The generated regular expression will be in this example:

::

(\.gov$)|(face)|(example(.*))


**NOTE: The :code:`example` group is much longer as we construct the list of TDL based on the Root Zone Database of the IANA and the Public Suffix List project.**

Which actually means that we whitelist:

* all elements/lines which ends with :code:`.gov`
* all elements/lines which contain the word :code:`face`

Contributors
------------

* Daniel - `@dnmTX`_

Usage of the script
-------------------

The sript can be called as :code:`uhb-whitelist`, :code:`uhb_whitelist` (which is kept for historical reason) and :code:`ultimate-hosts-blacklist-whitelist`.

::

The Ultimate Hosts Blacklist whitelist script
=============================================

This is the branch which contain the script which we use to whitelist domains or IP into our infrastructure.

Installation
------------

::

$ pip3 install --user ultimate-hosts-blacklist-whitelist



Complementary whitelist
-----------------------

Our script allow us to link one or more file(s) to the system which will be used in complementary of our whitelist list.

Special markers
---------------

If you already used a whitelist list you already know that we generaly only list all domains we want to whitelist one by one.

It's also possible to do that with our whitelisting system but we can do more.

:code:`ALL`
^^^^^^^^^^^

The :code:`ALL` marker will tell the system to escape and regex check againt what follows.

INVALID characters
""""""""""""""""""

* :code:`$`

* As we automatically append :code:`$` to the end, you should not use this character.

* :code:`\\`

* As we automatically escape the given expression, you should not explicitly escape your regular expression when declaring an :code:`ALL` marker.

:code:`REG`
"""""""""""

The :code:`REG` marker will tell the system to explicitly check for the given regex which follows the marker.

:code:`RZD`
"""""""""""

The :code:`RZD` marker will tell the system to explicitly check for the given string plus all possible TDL.


Understanding what we actually do
---------------------------------

If we have the following secondary whitelist list:

::

facebook.com
ALL .gov
REG face
RZD example

our system will actually :

* Remove every line which match :code:`facebook.com` and :code:`www.facebook.com`
* Remove everyline which match :code:`example.*`
* In complementary convert all lines with :code:`ALL ` or :code:`REG` to the right format.
* Check every line again the regular expression.
* Print or save on screen the results.

The generated regular expression will be in this example:

::

(\.gov$)|(face)|(example(.*))


**NOTE: The :code:`example` group is much longer as we construct the list of TDL based on the Root Zone Database of the IANA and the Public Suffix List project.**

Which actually means that we whitelist:

* all elements/lines which ends with :code:`.gov`
* all elements/lines which contain the word :code:`face`

Contributors
------------

* Daniel - `@dnmTX`_

Usage of the script
-------------------

The sript can be called as :code:`uhb-whitelist`, :code:`uhb_whitelist` and :code:`ultimate-hosts-blacklist-whitelist`.

::

usage: uhb_whitelist [-h] [-d] [-f FILE] [-o OUTPUT] [-m] [-p PROCESSES] [-v]
[-w WHITELIST [WHITELIST ...]] [-wc]

The tool to clean a list or a hosts file with the Ultimate Hosts Blacklist
whitelist list or your own.

optional arguments:
-h, --help show this help message and exit
-d, --debug Activate the debug mode. This mode will write the
whole processes to stdout.
-f FILE, --file FILE Read the given file and remove all element to
whitelist.
-o OUTPUT, --output OUTPUT
Save the result to the given filename or path.
-m, --multiprocessing
Activate the usage of multiple processes.
-p PROCESSES, --processes PROCESSES
The number of (maximal) processes to use.
-v, --version Show the version end exist.
-w WHITELIST [WHITELIST ...], --whitelist WHITELIST [WHITELIST ...]
Read the given file and append its data to the our
whitelist list.
-wc, --without-core Disable the usage of the Ultimate Hosts Blacklist
whitelist list.

Crafted with ♥ by Nissar Chababy (Funilrys)


.. _@dnmTX: https://github.com/dnmTX

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Built Distribution

File details

Details for the file ultimate-hosts-blacklist-whitelist-3.7.2.tar.gz.

File metadata

  • Download URL: ultimate-hosts-blacklist-whitelist-3.7.2.tar.gz
  • Upload date:
  • Size: 13.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.28.1 CPython/3.7.3

File hashes

Hashes for ultimate-hosts-blacklist-whitelist-3.7.2.tar.gz
Algorithm Hash digest
SHA256 506e146c5c01705d5e5e32e8a418601372f1819c0d0c2b08391e2af9ab5c67a0
MD5 cf06e7cc7b62b6eb6c641d6a8ffce97e
BLAKE2b-256 d12bd5e8b821dfed73eec00c3c37009fe9bd7633501782ecdec1b727f4c6ec54

See more details on using hashes here.

File details

Details for the file ultimate_hosts_blacklist_whitelist-3.7.2-py3-none-any.whl.

File metadata

File hashes

Hashes for ultimate_hosts_blacklist_whitelist-3.7.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c6425e278c80b70e863856c7731123471b0e53ba443d8719065000c5be7062ac
MD5 366958b7cc71debe0e8cb920655b03a8
BLAKE2b-256 549d8de5c1e466c3e842767f3a8f2a2108ae62175530caca9b0ae9bdbcbdf074

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page