Архив рубрики: Публикации

Parrot Security OS — альтернатива Kali Linux. Установка Parrot Security OS. 10 лучших дистрибутивов для хакинга и пентеста



























Rate this post

Parrot Security OS поставляется в нескольких редакциях:

  • Полная (Full) – базовая система и все инструменты для тестирования безопасности, графическое окружение Gnome;
  • Облегченная (Lite) – содержит только базовую систему, без инструментов;
  • Облачная (Cloud) – для установки на сервер и удаленного управления, поставляется без графического интерфейса;
  • IoT – версия для устройств интернета вещей, например, Raspberry Pi;

Перед тем как перейти к установке необходимо скачать образ установщика и записать его на носитель. Дальше рассмотрим весь этот процесс. Читайте так же: “Лучшие дистрибутивы Linux

Шаг 1. Загрузка образа Parrot Security OS

Скачать необходимую вам редакцию образа вы можете на официальном сайте. Для большинства образов доступны как 64, так и 32 битная архитектура. Вам достаточно выбрать зеркало загрузки и нажать Download или Torrent для загрузки с помощью торрента.

parrot

Мы будем использовать версию Full, образ занимает 3,2 Гб, что не так уж много учитывая полный набор инструментов, которые поставляются с дистрибутивом.

Шаг 2. Запись образа на носитель

Для записи установочного образа на флешку разработчики предоставляют специальные утилиты. Но мы можем воспользоваться программой Rufus в Windows:

rufus2

Или Unetbootin в Linux:

unetbootin1

Что касается записи на диск, то вы можете использовать такие программы, как UltraISO в Windows или k3b в Linux.

Шаг 3. Настройка BIOS или виртуальной машины

Дальше нам нужно загрузить компьютер с выбранного носителя. Для этого перезагрузите свое устройство и во время заставки BIOS нажмите F2, F8, Del или Shift+F2 чтобы войти в меню настройки BIOS. Затем перейдите на вкладку Boot и установите свою флешку или CD дисковод на первое место в разделе Boot Device Priority:

Затем перейдите на вкладку Exit и выберите Exit & Save Changes.

Если вы хотите установить Parrot Security OS на виртуальную машину, например, VirtualBox или VMware, то предварительно машину нужно настроить. Чтобы установка прошла успешно удалите из созданной машины сетевой адаптер, звуковую карту и принтер. После завершения установки их можно вернуть.

Как установить Parrot OS на VirtualBox

Шаг 1: Загрузка и установка VirtualBox

Зайти на Oracle VirtualBox и скачать последнюю версию VirtualBox.

Установите его, после загрузки оставив все по умолчанию.

Шаг 2: Загрузка ОС ParrotSec

Загрузите Parrot Security дистрибутив. Выберите 32 или 64 бит в зависимости от вашей архитектуры системы.

После того, как вы установили VirtualBox и загрузили ISO-файл ParrotSec, мы можем приступить к созданию нашей виртуальной машины.

Шаг 3: Создание виртуальной машины ParrotSec

Хорошо, откройте VirtualBox и нажмите New, чтобы создать новую виртуальную машину.

Введите Имя, в качестве Системы выберите Linux и Другой Linux 64-битный или 32-битный в соответствии с вашей архитектурой.

Далее мы собираемся выделить память. У меня её много, поэтому я даю 4096 МБ. Отрегулируйте в соответствии с вашей системной памятью. Выделение около 25-50% этого будет достаточно.

Оставьте формат в VDI для образа диска VirtualBox.

Далее выберите «Dynamically allocated или Динамический диск».

Это означает, что если вы выберете, скажем, размер жесткого диска 20 ГБ, он будет занимать только пространство, которое фактически использует, а не полные 20 ГБ. Он заполняет пространство со временем максимум до 20 ГБ.

Далее мы выберем место для сохранения нашего файла VDI.

Выберите место, которое подходит вам лучше всего. Желательно SSD накопитель.

Нажмите на маленькую папку с правой стороны, чтобы выбрать местоположение, затем отрегулируйте «Размер диска».

Я выделю ему 25 ГБ

А теперь запустите свою Виртуальную Машину. Вам будет предложено указать путь к загруженному ранее файлу ParrotSec.ISO.

Нажмите на папку и укажите расположение файла, скорее всего это C:UsersYourUserNameDownloads.

Шаг 4: Установка ParrotSec

Хорошо, время для запуска процесса установки.

В первом появившемся окне выберите Установить

Далее выберите стандартный установщик. По желанию вы можете выбрать установщик GTK GUI.

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

Далее выберите ваше местоположение

… и выберите свои локали. Если вы не знаете, что выбрать здесь, просто оставьте США.

Поверь мне, мы почти у цели. Выберите Keymap для использования при установке. На самом деле это не имеет значения, вы должны выбрать его снова, как только система загрузится в любом случае, не знаю почему, но это то, что есть.

Теперь установите свой пароль ROOT. Это ваш самый важный пароль, если вы парень из Windows, это ваш пароль администратора.

Далее мы создаем учетную запись пользователя для неадминистративной деятельности. Замечательно, что это автоматически делается в Parrot, в Kali вам нужно будет сделать это вручную. Выберите имя пользователя. Вы можете использовать любое имя пользователя.

Я уже говорил, что мы почти на месте? Это была шутка!

В качестве метода разбиения выберите: «Guided – Use Entire Disk».

Выберите ваш виртуальный жесткий диск.

Теперь мы выбираем файл разметки. Оставьте все файлы в одном разделе, если вы не знаете, что делаете.

Выберите «Завершить создание разделов», записать изменения на диск и подтвердить «Да».

Подтвердите, что вы хотите установить загрузчик Grub на основную загрузочную запись.

Теперь выберите жесткий диск VBOX

Теперь дождитесь окончания установки, это займет около 10 минут.

Подтвердите, нажав Продолжить, чтобы перезагрузить систему.

Поздравляем! Начальная установка выполнена!

Шаг 5: Обновление системы

После перезагрузки войдите в систему от имени пользователем без root прав, которого вы создали ранее.

Это занимает пару секунд, и Parrot попросит вас установить Updates. Установить обновления.

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

Введите свой пароль и установите флажок, чтобы сохранить его для этой сессии.

Теперь позвольте процессу обновления завершиться. Это займет пару минут.

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

Хорошо, как только это будет сделано, выберите ваш Keymap / Layout еще раз.

Шаг 6: Установка гостевых дополнений VirtualBox

Теперь мы буквально почти закончили!

Теперь нам нужно только установить VirtualBox Guest Additions, чтобы насладиться великолепным полноэкранным режимом, и мы готовы к работе!

Откройте окно терминала и введите:

sudo apt-get update && apt-get upgrade -y

Ваша система должна быть уже обновлена, но давайте удостоверимся.

Теперь мы устанавливаем гостевые дополнения VirtualBox:

sudo apt-get install virtualbox-guest-utils

Скорее всего, это уже установлено. Продолжаем:

sudo apt-get install virtualbox-guest-x11

С последующей перезагрузкой:

sudo reboot now

После перезагрузки вы сможете развернуть окно VirtualBox и использовать Parrot в полноэкранном режиме.

Вы можете проверить, работает ли VBoxService, набрав:

sudo /usr/sbin/VBoxService -V

На этом мы завершаем этот урок. Я рекомендую вам также посетить официальную документацию ParrotSec .

Установка ParrotSec на VirtualBox довольно проста. Мне очень нравится чистота ОС и то, что она автоматически создает пользователя без полномочий root и рекомендует вам использовать sudo.

Установка Parrot Security ОС

Зачем устанавливать Parrot OS 3.1.1?

Parrot Security OS используется для выполнения тестов на взлом, оценки уязвимостей, компьютерной криминалистики и анонимного серфинга. Он используется главным образом в судебном отделе. В этой статье объясняется установка Parrot Security ОС. Делается это очень быстро. Если будут вопросы, пишите их в форму комментариев.

Установка Parrot Security ОС

Скачайте последнюю версию Parrot OS со своего официального сайта,

https://www.parrotsec.org/download.fx

  • Также, вы можете посмотреть руководство о том как установить Ubuntu .

Загрузите его через DVD или USB. Страница установки Parrot выглядит следующим образом, нажмите «Установить», чтобы продолжить.

Затем выберите тип выполняемой установки. Например, мы выбираем стандартный установщик.

Выберите предпочтительный язык.

Установите местоположение и нажмите клавишу ввода.

Настройте свои настройки клавиатуры, выбрав тип клавиатуры, которую вы хотите использовать.



Создайте пароль root и нажмите «Продолжить».



Чтобы создать нового пользователя

В новом окне придумайте новый пользователь и пароль для Parrot OS. Введите имя пользователя.



Задайте пароль для пользователя.



Выберите ручной раздел, чтобы создать собственный раздел.

Выберите жесткий диск и нажмите клавишу ввода.

Нажмите «Да», чтобы продолжить.

Создайте таблицу разделов, выбрав свободное место на жестких дисках.

Теперь нажмите «Создать новый раздел» и нажмите «Ввод».

Укажите размер основной точки монтирования и нажмите «Продолжить».

Выберите тип раздела.

Затем установите место для раздела.

Проверьте настройки раздела и выберите «выполнить настройку раздела».

Чтобы создать раздел подкачки, нажмите «Создать новый раздел».

Укажите размер раздела подкачки и убедитесь, что он вдвое превышает объем оперативной памяти.

Выберите тип раздела.

Установите место для нового раздела.

Проверьте данные вашего системного раздела.

Затем выберите область подкачки для таблицы разделов.

Теперь выберите выполненную настройку раздела.

Нажмите «Готово» и выполните запись изменений на диск.

Нажмите «Да», чтобы подтвердить и продолжить.

Теперь начинается установка.

Выберите «Да», чтобы установить загрузчик grub.

Мы уже писали о том, как можно установить загрузчик Grub2 на ваше устройство.

Выберите жесткий диск для установки grub.

После успешного завершения установки нажмите «Продолжить» и перезагрузите систему.

После перезагрузки войдите в Parrot OS, используя учетные данные для входа.

Источники:

  • https://losst.ru/ustanovka-parrot-security-os
  • https://zen.yandex.by/media/id/5ced32fd7129f700ae3357aa/kak-ustanovit-parrot-os-na-virtualbox-5ea52bf6e553831c6fd34b93?feed_exp=ordinary_feed&from=channel&rid=4210536334.517.1591372492331.43855&integration=site_desktop&place=layout&secdata=CPLl%2FqmbLiABMAJQDw%3D%3D
  • https://linuxinsider.ru/ustanovka-parrot-security-os/
  • https://proglib.io/p/10-luchshih-distributivov-dlya-hakinga-i-pentesta-2019-09-28


2020-06-10T12:32:01
Linux

Как установить и использовать TeamViewer в Linux

Вы техподдержка для своих друзей и семьи? TeamViewer делает кроссплатформенную удаленную поддержку быстрой и бесплатной для частного использования. Вот как установить и использовать его в Linux.

Кроссплатформенная семейная техническая поддержка

Вы технарь для друзей и семьи, когда они сталкиваются с компьютерными трудностями? Всегда приятно помочь, но все, что делает работу быстрее и проще, приветствуется. Попытка поговорить с кем-то, кто не разбирается в технологиях с помощью простой процедуры, может разочаровать вас обоих. Хуже того, это может помешать этому человеку в будущем освоить новые технологии.

Увидеть проблему лично всегда полезно, но иногда это невозможно. Вот где появляется программное обеспечение для удаленного доступа. Оно позволяет вам управлять удаленным компьютером и использовать его более или менее так же, как если бы вы сидели перед ним.

Очевидно, что вы не можете выполнять физические действия, такие как вставка или извлечение USB-накопителей, но у вас есть помощник, который может сделать это за вас, если это необходимо.

TeamViewer — это широко известное приложение для удаленного доступа и общего доступа к рабочему столу. Это коммерческий продукт с закрытым исходным кодом, но его также можно бесплатно использовать в некоммерческих условиях. Вы можете использовать его  в Linux , Windows, MacOS и других операционных системах.

Установка TeamViewer в Linux

Мы протестировали установку TeamViewer на Ubuntu 20.04, Fedora 32 и Manjaro 20.0.1. TeamViewer предоставляет упакованные двоичные файлы для Ubuntu и Fedora. Если вы используете Manjaro, вы можете установить TeamViewer из  Arch User Repository (AUR).

Чтобы установить TeamViewer в Ubuntu и Fedora, запустите браузер и перейдите на страницу загрузки TeamViewer Linux.

Есть ссылки для загрузки файлов Ubuntu DEB и файлов Fedora RPM.

Загрузите соответствующий файл пакета. После завершения загрузки найдите файл пакета на вашем компьютере (он, вероятно, будет находиться в папке «Загрузки»).

Это пакет Ubuntu, поэтому имя файла в вашей системе может отличаться. Дважды щелкните файл пакета и, когда приложение запустится, нажмите «Установить».

На Fedora ваш пакет будет выглядеть как на картинке ниже.

Опять же, поскольку имя файла отражает версию приложения TeamViewer, ваше имя может отличаться. Дважды щелкните файл RPM, чтобы установить его, и при запуске приложения нажмите «Установить».

В Manjaro нам нужно проделать еще немного работы, потому что мы должны установить следующие зависимости:

sudo pacman -Sy qt5-webkit

sudo pacman -Sy qt5-quickcontrols

После того, как вы установите вышеизложенное, запустите менеджер программного обеспечения Pamac. Если вы еще не включили поддержку AUR, откройте меню приложения, перейдите в «Свойства» > «Установки» и перейдите на вкладку «AUR». Включите ползунок AUR.

Закройте окно настроек, щелкните значок «Поиск» в главном окне и введите «teamviewer». Выберите версию, которую вы хотите установить, из списка результатов.

Мы загрузили и установили версию вверху (15.5.3) в Ubuntu и Fedora, потому что лучше всего установить последнюю версию.

Установка клиента

Люди, которым вы помогаете, могут использовать компьютеры с Windows, Mac или Chromebook. Во всех случаях самое простое — попросить их загрузить программное обеспечение TeamViewer. Они могут перейти на веб-сайт TeamViewer, щелкнуть соответствующую операционную систему вверху экрана, а затем загрузить утилиту TeamViewer QuickSupport.

На Mac и Windows им даже не нужно устанавливать это — они просто запустят загруженный файл. На Chromebook он должен быть установлен.

После запуска клиента это выглядит как на картинке ниже. В центре экрана, под «Your ID», находится номер.

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

Использование TeamViewer

Чтобы подключиться к удаленному компьютеру, запустите TeamViewer на своем компьютере. В GNOME нажмите клавишу Super (обычно находится между Ctrl и Alt слева). Начните вводить «teamviewer», появится значок TeamViewer.

Нажмите на значок, чтобы запустить TeamViewer. Нажмите «Принять лицензионное соглашение».

Появится главное окно TeamViewer. Введите идентификационный номер лица, которому вы помогаете, в поле «Идентификатор партнера», а затем нажмите «Подключиться».

Введите пароль человека, которому вы помогаете, и нажмите «Войти».

Рабочий стол другого человека появляется в окне, и теперь у вас есть полный доступ к этому компьютеру. Когда вы наводите указатель мыши на окно, указатель мыши на удаленном компьютере делает то же самое.

На изображении ниже мы подключены к компьютеру с Windows.

Чтобы уменьшить сетевой трафик и ускорить соединение, вы не увидите обои рабочего стола — они будут черными.

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

Есть пара настроек, которые стоит отметить. Если вы нажмете «Просмотр» в верхней части окна, появится меню. Вы можете выбрать вид, который лучше всего подходит для комбинации двух разрешений рабочего стола и размера окна, которое вы хотите использовать. Опция «Масштаб» является хорошей отправной точкой, и она лучше всего работает в большинстве ситуаций.

Нажмите «Действия», чтобы открыть это меню. Если вы включите «Отправить комбинацию клавиш», ваши комбинации клавиш будут отправляться на удаленный компьютер, а не на ваш собственный. Например, если вы нажмете Super + E, чтобы открыть окно браузера файлов, это будет действовать на удаленном компьютере, но не на вашем.

Однако когда указатель мыши находится за пределами окна TeamViewer, ваши комбинации клавиш будут применяться к вашему компьютеру.

Меньше стресса, быстрые исправления

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

Помните, что TeamViewer бесплатен только для некоммерческого использования; если вы хотите использовать его для своего бизнеса,  вы должны приобрести лицензию.



2020-06-09T10:27:29
Вопросы читателей

Как изменить размер меню «Пуск» в Windows 10

Ваше меню Пуск кажется слишком большим или слишком маленьким? Если это так, вы можете легко изменить размер меню «Пуск» в Windows 10 до тех пор, пока оно не станет правильным, что даст вам больше места для закрепления ваших любимых элементов — или откроет больше рабочего стола. Вот как это сделать.

Сначала запустите меню «Пуск», нажав кнопку «Пуск» на панели задач или нажав клавишу Windows.

Когда меню «Пуск» открыто, поместите курсор мыши на его край. Ваш курсор мыши изменится на курсор изменения размера, который выглядит как короткая линия со стрелкой на каждом конце.

Чтобы изменить высоту меню «Пуск», поместите курсор на верхний край меню «Пуск», затем, удерживая левую кнопку мыши, перетащите указатель мыши вверх или вниз.

Меню «Пуск» изменит размер при перетаскивании мыши. Когда вы найдете нужную высоту, отпустите кнопку мыши, и меню «Пуск» останется таким же.

Вы также можете изменить ширину меню «Пуск» таким же образом: захватите его правый край курсором изменения размера и перетащите мышью, чтобы увеличить или уменьшить его. При изменении размера по горизонтали меню «Пуск» будет привязано к кратному размеру вашего плитки.

Или вы можете одновременно отрегулировать высоту и ширину, щелкнув в правом верхнем углу меню «Пуск» и перетащив мышку внутрь или наружу по диагонали.

Если вы увеличите меню «Пуск», у вас будет достаточно места для живых плиток и ярлыков ваших любимых приложений, веб-сайтов и документов . Вы можете даже сделать меню покрывающим большую часть экрана, если хотите.

Или, если вы чувствуете, что ваше меню «Пуск» занимает слишком много места, вы можете сделать его крошечным. Таким образом, он не покрывает так много вашего рабочего стола, когда появляется.

Выбор размера полностью за вами. Это всего лишь еще один способ персонализировать вашу систему и получить наиболее удобный опыт работы с Windows 10.

И, кстати, меню «Пуск» — не единственное, что вы можете изменить в Windows 10. Вы также можете легко изменить высоту панели задач. Удачи изменения размера!



2020-06-09T10:16:14
Вопросы читателей

Как добавить PowerShell в контекстное меню в Windows 10

В Windows 10 контекстное меню — это меню GUI (графический интерфейс пользователя), которое появляется при щелчке правой кнопкой мыши. Это меню предлагает ограниченный набор опций или вариантов в зависимости от приложения или операционной системы. Контекстное меню может появиться в любом приложении, которое предлагает множество опций для простой и эффективной работы. В этом посте мы покажем, как легко добавить PowerShell в контекстное меню в Windows 10.

Чтобы добавить PowerShell в контекстное меню в Windows 10, следуйте нашим инструкциям, приведенным ниже.

  • Нажмите клавишу Windows + R, чтобы вызвать диалоговое окно «Выполнить».
  • В диалоговом окне «Выполнить» введите regedit и нажмите Enter, чтобы открыть редактор реестра.
  • Перейдите или перейдите к расположению кустов реестра ниже:

HKEY_CLASSES_ROOTDirectoryshell

  • На левой панели щелкните правой кнопкой мыши ключ оболочки, выберите «Создать» > «Ключ» и назовите его PowerShellDesktop.
  • Нажмите на только что созданный ключ PowerShellDesktop.
  • На правой панели дважды щелкните значение строки по умолчанию, чтобы изменить его свойства.
  • Введите Open PowerShell Здесь, в поле данных Значение.
  • Нажмите ОК.

Снова на левой панели щелкните правой кнопкой мыши ключ PowerShellDesktop и выберите « Создать» > «Ключ» и назовите его «Command».

  • Нажмите на вновь созданный командный ключ.
  • На правой панели дважды щелкните значение строки по умолчанию, чтобы изменить его свойства.
  • Скопируйте и вставьте приведенное ниже строковое значение в поле « Значение».

C:Windowssystem32WindowsPowerShellv1.0powershell.exe -NoExit -Command Set-Location -LiteralPath '%L'

Путь к Windows PowerShell по умолчанию — C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe.

Если вы установили Windows на любой другой раздел, вам нужно найти путь к PowerShell. Кроме того, если вы установили любую другую версию PowerShell, измените v1.0 на текущую версию, установленную на вашем компьютере.

  • Нажмите ОК.

  • Перезагрузите компьютер, чтобы изменения вступили в силу.



2020-06-08T11:34:05
Вопросы читателей

Как скачать и установить iCloud для Windows

Если вы гордый владелец одного или нескольких устройств Apple, таких как iPhone, iPad или Mac, iCloud — это то, на что вы, вероятно, положитесь. Вы также используете ПК с Windows 10 или Windows 7? Хотели бы вы получить от него легкий доступ к файлам iCloud ? К счастью, Apple предоставляет нам приложение под названием iCloud для Windows, которое мы можем использовать только для этого. Вот где скачать iCloud для Windows и как установить его на Windows 10 или Windows 7.

Читать

Python. Давайте создадим простой HTTP-сервер

Веб-серверы есть везде.

Черт возьми, вы взаимодействуете с одним прямо сейчас!

Независимо от того, какой вы разработчик программного обеспечения, в какой-то момент вашей карьеры вам придется взаимодействовать с веб-серверами. Может быть, вы создаете сервер API для бэкэнда. Или, может быть, вы просто настраиваете веб-сервер для своего сайта.

В этой статье мы расскажем, как создать самый простой http веб-сервер на Python.

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

Если вы уже знаете, как работают веб-серверы, вы можете сразу перейти к этому разделу.

  • Что такое HTTP-сервер?
  • Адрес сокета TCP
  • Создайте простой файл HTTP
  • Создать HTTP веб-сервер

 

Что такое HTTP-сервер?

Веб-сервер HTTP — это не что иное, как процесс, который выполняется на вашем компьютере и выполняет ровно две вещи:

1- Прослушивает входящие HTTP-запросы на определенный адрес сокета TCP (IP-адрес и номер порта, о которых мы расскажем позже)

2- Обрабатывает этот запрос и отправляет ответ обратно пользователю.

 

Но что на самом деле происходит под капотом?

На самом деле много чего происходит, и мы могли бы посвятить целую статью, чтобы объяснить магию, как это произошло.

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

На высоком уровне, когда вы набираете www.yandex.ru  в своем браузере, ваш браузер создаст сетевое сообщение, называемое HTTP-запросом.

Этот запрос будет распространяться на компьютер yandex, на котором работает веб-сервер. Этот веб-сервер перехватит ваш запрос и обработает его, отвечая HTML-кодом домашней страницы yandex.

Наконец, ваш браузер отображает этот HTML на экране, и это то, что вы видите на своем экране.

Каждое взаимодействие с домашней страницей yandex после этого (например, когда вы нажимаете на ссылку) инициирует новый запрос и ответ точно так же, как первый.

Повторим еще раз: на машине, которая получает запрос http, работает программный процесс, называемый веб-сервером. Этот веб-сервер отвечает за перехват этих запросов и их обработку соответствующим образом.

Хорошо, теперь, когда вы знаете, что такое веб-сервер и какова его функция, вам может быть интересно, как запрос в первую очередь достигает машины yandex?

Хороший вопрос!

Позвольте нам объяснить, как, но опять же … на высоком уровне.

 

Адрес сокета TCP

Любое http-сообщение (будь то запрос или ответ) должно знать, как добраться до места назначения.

Чтобы достичь места назначения, каждое http-сообщение содержит адрес, называемый адресом TCP назначения.

И каждый TCP-адрес состоит из IP-адреса и номера порта.

Мы знаем, что все эти аббревиатуры (TCP, IP и т. д.) могут быть ошеломляющими, если ваши сетевые знания не сильны.

Так где же этот адрес, когда все, что вы сделали, и набрали www.yandex.ru в вашем браузере?

Ну, это доменное имя преобразуется в IP-адрес через большую распределенную базу данных, называемую DNS.

Хотите проверить, что это за IP-адрес?

Легко! Зайдите в свой терминал и сделайте следующее:

$ host yandex.ru

Yandex.ru has address 77.88.55.66                                                                                                                                               

Yandex.ru has address 5.255.255.70                                                                                                                                              

Yandex.ru has address 77.88.55.70                                                                                                                                               

Yandex.ru has address 5.255.255.60                                                                                                                                              

Yandex.ru has IPv6 address 2a02:6b8:a::a                                                                                                                                        

Yandex.ru mail is handled by 10 mx.Yandex.ru.

 

Как видите, как DNS переведет yandex.ru на любой из указанных выше адресов.

Один только IP-адрес позволит HTTP-сообщению поступить на нужный компьютер, но вам все равно нужен номер порта, чтобы HTTP-запрос поступил именно на веб-сервер.

Другими словами, веб-сервер — это обычное сетевое приложение, которое прослушивает определенный порт.

И HTTP-запрос ДОЛЖЕН быть адресован этому порту.

Так где же номер порта при вводе www.yandex.ru ?

По умолчанию номер порта равен 80 для http и 443 для https, поэтому даже если вы не указали номер порта явно, он все еще там.

И если веб-сервер прослушивает номер порта не по умолчанию (ни 80, ни 443), вы должны явно указать номер порта следующим образом:

www.yandex.ru:445

 

К настоящему времени у вас должна быть вся необходимая информация для создания http-сервера на Python.

Так что без дальнейших церемоний, давайте начнем.

 

Создайте простой файл HTML

Вот что мы хотим сделать.

Мы хотим создать простой http-сервер, который обслуживает статическую HTML-страницу.

Давайте создадим нашу HTML-страницу.

<html>

    <head>

        <title>Python-это потрясающе!</title>

    </head>

    <body>

        <h1>yandex</h1>

        <p>Поздравляю! Сервер HTTP работает!</p>

    </body>

</html>

 

Теперь сохраните этот файл как index.html.

Теперь, для обслуживания веб-страницы, следующим шагом является создание веб-сервера, который будет обслуживать эту HTML-страницу.

 

Создать HTTP веб-сервер

Чтобы создать веб-сервер в Python 3, вам нужно импортировать два модуля: http.server и socketserver

Обратите внимание, что в Python 2 был модуль с именем  SimpleHTTPServer. Этот модуль был объединен с http.server в Python 3

Давайте посмотрим на код для создания http-сервера

import http.server

import socketserver



PORT = 8080

Handler = http.server.SimpleHTTPRequestHandler



with socketserver.TCPServer(("", PORT), Handler) as httpd:

    print("serving at port", PORT)

    httpd.serve_forever()

 

Просто так у нас есть функциональный http-сервер.

Теперь давайте разберем этот код построчно.

Во-первых, как мы упоминали ранее, веб-сервер — это процесс, который прослушивает входящие запросы на определенный TCP-адрес.

И, как вы уже знаете, TCP-адрес идентифицируется по IP-адресу и номеру порта.

Во-вторых, веб-сервер также должен знать, как обрабатывать входящие запросы.

Эти входящие запросы обрабатываются специальными обработчиками. Вы можете думать о веб-сервере как о диспетчере, поступает запрос, http-сервер проверяет запрос и отправляет его назначенному обработчику.

Конечно, эти обработчики могут делать все что угодно.

Но что вы думаете, какой самый основной обработчик?

Ну, это будет обработчик, который просто обслуживает статический файл.

Другими словами, когда мы заходим на yandex.ru, веб-сервер на другом конце отправляет обратно статический HTML-файл.

Это на самом деле то, что мы пытаемся сделать.

И это, и есть то, что является http.server.SimpleHTTPRequestHandler : простой обработчик HTTP-запросов, который обслуживает файлы из текущего каталога и любых его подкаталогов.

 

Класс socketserver.TCPServer

Теперь поговорим о классе socketserver.TCPServer.

Экземпляр TCPServer описывает сервер, который использует протокол TCP для отправки и получения сообщений (http — это протокол прикладного уровня поверх TCP).

Чтобы создать экземпляр TCP-сервера, нам нужны две вещи:

  1. TCP-адрес (IP-адрес и номер порта)
  2. Обработчик

 

socketserver.TCPServer(("", PORT), Handler)

 

Как видите, TCP-адрес передается в виде кортежа (IP-адрес, номер порта)

Передача пустой строки в качестве IP-адреса означает, что сервер будет прослушивать любой сетевой интерфейс (все доступные IP-адреса).

А поскольку PORT хранит значение 8080, сервер будет прослушивать входящие запросы на этот порт.

Для обработчика мы передаем простой обработчик, о котором мы говорили ранее.

Handler = http.server.SimpleHTTPRequestHandler

 

Ну, а как насчет serve_forever?

serve_forever — это метод в экземпляре TCPServer, который запускает сервер и начинает прослушивать и отвечать на входящие запросы.

Круто, давайте сохраним этот файл как server.py в том же каталоге, что и index.html, потому что по умолчанию SimpleHTTPRequestHandler будет искать файл с именем index.html в текущем каталоге.

В этом каталоге запустите веб-сервер:

$ python server.py

serving at port 8080

 

Благодаря этому теперь у вас есть HTTP-сервер, который прослушивает любой интерфейс на порте 8080 и ожидает входящие HTTP-запросы.

Пришло время для забавных вещей!

Откройте браузер и введите localhost:8080 в адресной строке.

Потрясающие! Похоже, все работает нормально.

Но что такое localhost ?

localhost — это имя хоста, которое означает этот компьютер. Он используется для доступа к сетевым службам, работающим на хосте, через петлевой сетевой интерфейс.

А поскольку веб-сервер прослушивает любой интерфейс, он также прослушивает интерфейс обратной связи.

Вы хотите знать, какой IP-адрес соответствует localhost?

Введите следующее:

$ host localhost

localhost has address 127.0.0.1

localhost has IPv6 address ::1

Host localhost not found: 3(NXDOMAIN)

 

Фактически вы можете полностью заменить localhost на 127.0.0.1 в вашем браузере, и вы все равно получите тот же результат.

 

Одно последнее слово

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

Просто зайдите в свой терминал и сделайте следующее (но убедитесь, что вы на Python 3)

python -m http.server 8080

 

По умолчанию этот сервер будет прослушивать все интерфейсы и порт 8080.

Если вы хотите прослушать определенный интерфейс, сделайте следующее:

python -m http.server 8080 --bind 127.0.0.1

 

Также начиная с Python 3.7, вы можете использовать флаг –directory для обслуживания файлов из каталога, который не обязательно является текущим каталогом.

Таким образом, теперь возникает вопрос: зачем вам когда-либо писать сценарий, когда вы можете просто вызывать сервер из терминала?

Хорошо, помните, что вы используете  SimpleHTTPRequestHandler. Если вы хотите создать свои собственные обработчики (что вы, вероятно, захотите), то вы не сможете сделать это из терминала.



2020-06-05T15:50:58
Python 3