Создайте HTTP-сервер с помощью строковых команд Python и объедините его с проникновением во внутреннюю сеть для получения доступа к внешней сети.

1. Введение

Будучи относительно популярным языком программирования, Python имеет простой синтаксис и понятные операторы. Python имеет хорошую совместимость и может быть легко связан с модулями, установленными на других языках программирования (например, C/C++). Кроме того, Python богат и мощен. Библиотека инкапсулирована и ее легко вызывать, поэтому она очень популярна.

Сегодня мы попробуем использовать Python для создания простого HTTP-сервера для отображения указанных каталогов и файлов на локальном компьютере.

2. Настройте локальный http-сервер.

Вообще говоря, простой HTTP-сервер Python не зависит от сложных серверных программ, таких как Apache и IIS, поскольку он содержит только одну строку команд для создания http-сервиса. Но, напротив, эта простая служба http не может предоставлять сложные функции и может предоставлять только относительно простые службы каталогов. Но для тех, кто хочет изучить и познакомиться с Python, это еще один шаг, который необходимо сделать.

2.1.Установка и настройка Python

Во-первых, нам нужно установить программу Python локально. Программу Python можно загрузить с официального сайта ( www.python.org/ ), чтобы найти соответствующую версию операционной системы. Автор использует операционную систему Windows, поэтому я выбрал для загрузки версию Windows.

20230330132801

20230330132802

После завершения загрузки Python непосредственно щелкните файл installer.exe, чтобы установить его. При этом следует отметить, что в процессе установки нужно уделить внимание проверке Add python.exe to PATHопций.

20230330132803

20230330132804

После завершения установки программы Python мы можем приступить к настройке http-сервера Python.

2.2.Настройка и тестирование сервера Python

Поскольку в Python есть встроенный простой пакет службы http, для Python вам нужно всего лишь ввести строку команд, чтобы легко открыть службу http. Конечно, для запуска веб-страницы необходимо отображать контент. Итак, мы можем сначала создать папку для хранения файлов веб-страниц. Например, автор создал новую «тестовую» папку на диске E локального компьютера.

20230330132805

Затем запустите интерфейс локального компьютера от имени администратора 命令提示符и введите команду для переноса жесткого диска, на котором хранится файл.

e:

Затем перейдите в папку, которой хотите поделиться.

cd test

20230330132806

20230330132807

Затем введите команду启动http服务

  • Если версия Python — 2.x, введите команду
python -m SimpleHTTPServer 8081
  • Если версия Python — 3.x, введите команду
python -m http.server 8001

8081 — это выходной порт сервера, который вы планируете построить. Просто выберите свободный порт. Если появится приглашение брандмауэра, просто выберите 允许访问его.

После ввода командной строки Python выдает обратную связь Serving HTTP on 0.0.0.0 port 8081 ..., что означает, что наш http-сервис Python был успешно открыт под локальным портом 8081.

20230330132808

Затем мы вводим в адресную строку браузера на локальном компьютере, localhost:8081чтобы открыть файл в папке, которой мы собираемся поделиться.

20230330132809

Если вы видите это содержимое, это означает, что http-сервис Python на локальном компьютере открыт, и файлы в этой папке уже можно просмотреть. Аналогично, если мы поместим в эту папку файл веб-страницы, он также может отображаться как веб-страница.

В настоящее время для устройств в одной локальной сети при вводе IP-адреса локального компьютера + номера порта в браузере (конкретный формат — 192.168.XXX.XXX:номер порта) будет отображаться веб-страница Python.

20230330132810

Однако веб-страницы, к которым невозможно получить доступ в общедоступном Интернете, всегда чувствуют недостаток души, поэтому мы можем использовать проникновение в интрасеть cpolar для создания туннеля данных о проникновении в интрасеть, чтобы мы могли получить доступ к Python в условиях общедоступного Интернета.

3.Установка и регистрация cpolar

Аналогично мы можем найти программное обеспечение, соответствующее версии операционной системы, на официальном сайте cpolar ( https://www.cpolar.com/ ), здесь автор также выбирает версию Windows.

20230330132811

20230330132812

После загрузки программного обеспечения Cpolar разархивируйте сжатый пакет и дважды щелкните его, чтобы .msi文件установить его автоматически. Нам Nextнужно только щелкнуть до конца.

20230330132813

20230330132814

Поскольку cpolar создаст независимый туннель данных для каждого пользователя, дополненный паролями пользователей и кодами токенов для обеспечения безопасности данных, нам необходимо зарегистрировать пользователей перед использованием cpolar. Процесс регистрации также очень прост: просто нажмите на правый верхний угол главной страницы cpolar 用户注册и заполните необходимую информацию на странице регистрации, чтобы завершить регистрацию.

20230330132815

20230330132816

3.1 Настройки облака Cpolar

После завершения установки и регистрации cpolar мы можем начать использовать cpolar для создания туннеля данных о проникновении во внутреннюю сеть для подключения веб-страницы Python на локальном компьютере к общедоступному Интернету. Следует отметить, что туннель данных бесплатной версии cpolar сбрасывается каждые 24 часа. Автор не хочет каждый день сбрасывать настройки туннеля данных, поэтому я обновил cpolar до VIP-версии, чтобы получить туннель данных о проникновении в интранет, который сможет стабильно существовать в течение длительного времени.

Чтобы создать долгосрочный стабильный туннель данных о проникновении в интранет, мы должны сначала посетить официальный сайт cpolar и войти в систему, а в левой части страницы «Панель управления» найти и нажать кнопку, чтобы войти на страницу «Резервирование» 预留.

20230330132817

20230330132818

На странице «Резервирование» мы видим, что cpolar предоставляет проекты резервирования туннелей данных для нескольких протоколов. Сервер Python использует протокол http, поэтому мы находим 保留二级子域名поле. Конечно, если вы приобрели собственное доменное имя у поставщика доменных имен, вы также можете выбрать поле «Зарезервировать собственное доменное имя».

В поле «Зарезервированное имя субдомена второго уровня» нам необходимо установить информацию для имени субдомена второго уровня, которое мы намерены зарезервировать, и настроенная информация также станет входом в туннель, чтобы мы могли получить доступ к локальному серверу Python на общедоступный Интернет (часть общедоступного интернет-адреса). Конкретная информация, которую необходимо установить:

  • 地区: Район, где расположен сервер, просто выберите ближайший
  • 二级域名в конечном итоге появится в сгенерированном общедоступном интернет-адресе как один из идентификаторов сетевого адреса.
  • 描述Его можно рассматривать как описание этого туннеля данных, который можно отличить от других туннелей.

После ввода этих настроек вы можете нажать 保留кнопку справа, чтобы сохранить этот туннель данных. Если нам больше не нужен вход в этот туннель, мы также можем нажать «x» справа, чтобы легко удалить туннель.

20230330132819

3.2 Полярные локальные настройки

После завершения настройки облака cpolar возвращаемся на локальный компьютер, открываем и авторизуемся в клиенте cpolar (для прямого доступа вы можете ввести localhost:9200 в браузере или нажать ярлык клиента cpolar в стартовом меню).

20230330132820

隧道管理Нажмите кнопку в левой части основного интерфейса клиента 创建隧道, чтобы перейти на страницу создания локального туннеля (если вы хотите создать временный туннель данных, который сбрасывает адрес каждые 24 часа, вы можете настроить его прямо здесь, не настраивая пустые данные). туннель на официальном сайте cpolar).

На этой странице также необходимо выполнить несколько информационных настроек, к которым относятся:

  1. 隧道名称—— Его можно рассматривать как локальную туннельную информационную аннотацию cpolar, если нам удобно различать;
  2. 协议——Tomcat выводит веб-страницу, поэтому выбран протокол http;
  3. 本地地址——Локальный адрес — это номер выходного порта локального веб-сайта. Ранее мы установили 8081 в качестве выходного порта, поэтому здесь также заполняем 8081;
  4. 域名类型—— В этом примере мы зарезервировали туннель данных имени субдомена второго уровня в облаке cpolar, поэтому проверьте «Имя субдомена второго уровня» (если зарезервированное имя домена является именем собственного домена, проверьте имя личного домена ), И заполните зарезервированное имя поддомена второго уровня в столбце «Субдомен» в следующей строке. Здесь мы заполняем «pythonweb» (если вы создаете только временный туннель данных, сразу отметьте «Случайное имя домена» и клиент cpolar сам сгенерирует сетевой адрес);
  5. 地区——Так же, как и при настройке полярного облака, заполняем его в соответствии с реальным местоположением;

20230330132821

После завершения этих настроек вы можете нажать 创建кнопку внизу страницы, чтобы подключить веб-страницу локального сервера Python с именем субдомена второго уровня, зарезервированным в облаке cpolar, для создания полного туннеля данных о проникновении в интрасеть.

После создания туннеля cpolar автоматически перейдет на страницу 隧道管理- 隧道列表, где вы сможете увидеть состояние туннеля данных (плавно ли он) или управлять открытием, закрытием или удалением туннеля. Если вам нужно изменить информацию о туннеле, вы также можете сделать это с помощью кнопки «Изменить» здесь.

20230330132822

4. Проверка доступа к общедоступной сети.

После того, как туннель данных установлен, мы можем нажать на левую часть клиента cpolar 状态在线隧道列表. Найдите общедоступный интернет-адрес, который обеспечивает доступ к странице локального сервера Python.

20230330132823

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

20230330132824

5. Вывод

До сих пор мы успешно использовали Python для создания простой страницы сервера и создали для него туннель данных через cpolar, который может преодолеть барьер интрасети и опубликовать эту веб-страницу Python в общедоступном Интернете. Фактически, пока мы знаем номер выходного порта веб-страницы (или программного обеспечения), мы можем использовать cpolar для проникновения в интрасеть, что позволяет нам получить доступ к локальной веб-странице (или программному обеспечению) в общедоступном Интернете.

Перепечатано из статьи об облаке cpolar полюса: Python быстро создает простой HTTP-сервер и публикует доступ к общедоступной сети.

おすすめ

転載: blog.csdn.net/m0_75215937/article/details/132832554