Хакер

    Компания MaxMind ведет базу данных о местонахождении каждого IP-адреса на планете вместе с координатами GPS, кодом города, почтовым индексом и страной. Эта база данных не находится в типичном формате реляционной базы данных, а это скорее обычный текстовый файл. MaxMind берет лицензионный сбор за пользование их базой данных в размере 370 долларов США на каждый сайт и 90 долларов США в месяц (или 1360 долларов США в год) за получение обновлений этой базы данных. У их программного обеспечения красивый и понятный интерфейс, который дает возможность пользователям делать запросы к базе данных достаточно просто.

    MaxMind также предоставляет бесплатную версию этой базы данных для разработчиков, но без каких-либо средств для ее чтения. Бесплатная версия менее точная, чем коммерческая. Все, что нужно для определения местоположения нужного IP-адреса — это программа для чтения этих данных.

    Два программиста, Дженнифер Эннис и Т. Уильямс, разработали небольшой Python-скрипт под названием pygeoip и выпустили его под лицензией GPL, что позволяет нам вводить IP-адрес и получать нужную нам информацию. Мы считаем, что эта статья не требует пояснений, но если вы хотите обновить ваши навыки работы с Python перед тем, как идти дальше, то посмотрите на нашем сайте статьи по Python.

    Шаг 1. Запустите Kali и откройте терминал

    Первым шагом, конечно же, является запуск нашей надежной системы Kali или, в данном случае, любого дистрибутива Linux. Затем откройте терминал.

    Примечание. Будьте осторожны при использовании приведенных ниже команд. Форматирование этой статьи создает несколько пробелов для растягивания текста для соответствия полям. Смотрите на скриншоты, чтобы иметь представление о том, как эти команды выглядят на самом деле.

    Шаг 2. Скачайте базу данных

    Теперь нам нужно скачать базу данных с сайта MaxMind. Для этого введите в терминал следующую команду:

     

    kali> wget -N -q http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz

    Затем нужно разархивировать ее:

    kali> gzip -d GeoLiteCity.dat.gz

    Теперь давайте проверим, что база данных находится там, где нужно, отобразив содержание текущей папки:

    kali > ls -alh GeoLiteCity.dat

    Шаг 3. Скачайте и установите Pygeoip

    Установим скрипт Python для чтения базы данных — pygeoip. Мы можем скачать его, введя следующее:

    kali> wget http://pygeoip.googlecode.com/files/pygeoip-0.1.3.zip

    Затем разархивируйте его:

    kali> unzip pygeoip-0.1.3.zip

    Скачаем некоторые инструменты установки в каталог pygeoip.

    kali> cd /pygeoip-0.1.3
    kali> wget http://svn.python.org/projects/sandbox/trunk/setuptools/ez_setup.py 
    kali> wget http://pypi.python.org/packages/2.5/s/setuptools-0.6c11-py2.5.egg

    Давайте теперь перейдем, а затем создадим и установим инструменты установки.

    kali> mv setuptools-0.6c11-py2.5.egg setuptools-0.7a1-py2.5.egg
    kali> python setup.py build
    kali> python setup.py install

    Нам нужно переместить базу данных в каталог pygeoip, чтобы скрипт мог получить к нему доступ, не используя полный путь.

    kali> mv GeoLiteCity.dat /pygeoip-0.1.3/GeoLiteCity.dat

    Шаг 4. Запросы к базе данных

    Теперь, когда у нас есть база данных, а скрипт pygeoip скачан и установлен, мы можем начать делать запросы к этой базе данных с помощью pygeoip.

    Во-первых, нам нужно запустить оболочку Python.

    kali> python

    Когда вы это сделаете, вас поприветствует тройная угловая скобка >>>, указывающая, что вы сейчас находитесь в интерактивной оболочке python. Давайте импортируем модуль и создадим экземпляр класса.

    >>> import pygeoip
    >>> gip = pygeopip.GeoIP('GeoLiteCity.dat')

    Теперь мы можем сделать наш запрос. Посмотрим, где находится Google.

    >>>rec = gip.record_by_addr('64.233.161.99')
    >>>for key.val in rec.items():
    ... print «%s: %s» %(key,val)
    ...

    Обратите внимание, что важно следить за отступами у команды print. В противном случае, вы получите ошибку.

    Как вы видите, мы смогли найти IP-адрес Google в Mountain View, CA с региональным кодом 650, почтовым индексом 94043, долгота -122.0574 и широту 37.4192. Неплохо! Теперь давайте попробуем найти IP-адрес cnn.com.

    Еще раз, сочетание этой базы данных и скрипта pygeoip может дать нам информацию о местоположении сервера CNN по его IP-адресу

    Tags:

    • Показать Комментарии (0)

    Вам Также Может Понравиться

    wifiwifi

    Как защитить WI FI роутер от взлома

    Далеко не все пользователи беспроводных сетей заботятся о безопасности своих роутеров. Взлом роутера несет ...

    ШифрованиеШифрование

    Настройка OTR шифрование для Windows

    OTR (от англ. Off-the-record) – протокол, который позволяет людям вести конфиденциальные беседы с помощью ...

    анонимностьанонимность

    Как настроить браузер для анонимной работы

    [hide] Настраиваем Firefox для анонимного серфинга без утраты производительности Отрываем: about:config и начинаем. Чтобы добавит значение ...

    биткоин кошелекбиткоин кошелек

    ТОП-5 лучших кошельков для хранения криптовалюты

    Аппаратные кошельки являются наиболее надёжными устройствами для хранения виртуальной наличности. Интерес к криптовалютам постоянно ...

    VPNVPN

    Как поднять свой VPN

    Telegram заблокировали, бесплатные прокси и VPN работают с перебоями из-за большого наплыва пользователей или ...

    ИнтернетИнтернет

    Какая разница между локальной сетью и Интернетом

    Локальная сеть или ЛВС — это частная сеть, которая связывает компьютеры в одном месте, ...

    +

    Авторизация

    * *
    *

    Регистрация

    *
    *
    *
    *

    Генерация пароля