Cree un servidor HTTP con un comando

Reimpreso del artículo de penetración de intranet remota: [Python] Cree rápida y fácilmente un servidor HTTP y acceda a la "penetración de intranet cpolar" desde la red pública

1. Introducción

Como lenguaje de programación relativamente popular, Python tiene una sintaxis simple y declaraciones claras, y Python tiene buena compatibilidad.Se puede conectar fácilmente con módulos establecidos en otros lenguajes de programación (como C/C++), y Python es rico y poderoso. Las bibliotecas están empaquetadas y se pueden llamar fácilmente, por lo que son muy populares.

Hoy intentaremos usar python para construir un servidor http simple para mostrar los directorios y archivos especificados en la computadora local.

2. Cree un servidor http local

En términos generales, el servidor http simple de Python no se basa en programas de servidor complejos como Apache e IIS, porque viene con una sola línea de comandos para crear un servicio http. Pero relativamente, este servicio http simple no puede proporcionar funciones complejas y solo puede proporcionar servicios de directorio relativamente simples. Pero para aquellos que quieren aprender y familiarizarse con python, este es otro paso necesario.

2.1.Instalación y configuración de Python

Primero, necesitamos instalar el programa python localmente. El programa Python se puede encontrar en su sitio web oficial ( www.python.org/ ) para descargar la versión del sistema operativo correspondiente. El autor usa el sistema operativo Windows, así que elija la versión de Windows para descargar.

20230330132801

20230330132802

Una vez completada la descarga de Python, haga clic en installer.exe directamente para instalarlo. Al mismo tiempo, cabe señalar que durante el proceso de instalación, es necesario verificar Add python.exe to PATHlas opciones.

20230330132803

20230330132804

Después de completar la instalación del programa python, podemos comenzar a construir el servidor http python

2.2.Configuración y prueba del servidor Python

Dado que python tiene un paquete de servicio http simple incorporado, para python, solo necesita ingresar una línea de comandos para abrir el servicio http fácilmente. Por supuesto, para ejecutar una página web, la página web debe mostrar contenido. Por lo tanto, primero podemos crear una carpeta para almacenar archivos de páginas web. Por ejemplo, el autor creó una nueva carpeta de "prueba" en la unidad E de la computadora local

20230330132805

Luego, ejecute 命令提示符la interfaz de la computadora local como administrador e ingrese el comando para transferir al disco duro donde está almacenado el archivo

e:

Ve a la carpeta que quieras compartir

cd test

20230330132806

20230330132807

Luego ingrese el comando启动http服务

  • Si la versión de Python es 2.x, ingrese el comando
python -m SimpleHTTPServer 8081
  • Si la versión de Python es 3.x, ingrese el comando
python -m http.server 8001

Entre ellos, 8081 es el puerto de salida del servidor a construir, siempre que elija un puerto desocupado. Si aparece un mensaje de aviso del cortafuegos, simplemente selecciónelo 允许访问.

Después de ingresar la línea de comando, python brinda retroalimentación Serving HTTP on 0.0.0.0 port 8081 ..., lo que significa que nuestro servicio http de python se abrió con éxito en el puerto local 8081.

20230330132808

Luego ingresamos en la barra de direcciones del navegador en la computadora local localhost:8081para abrir el archivo en la carpeta a compartir.

20230330132809

Poder ver estos contenidos significa que el servicio http de python en la computadora local se ha habilitado y los archivos en esta carpeta ya se pueden verificar. Del mismo modo, si colocamos archivos de páginas web en esta carpeta, también se pueden mostrar como páginas web.

En este momento, para dispositivos bajo la misma LAN, siempre que ingrese la dirección IP de la computadora local + número de puerto (el formato específico es 192.168.XXX.XXX: número de puerto) en el navegador, la página web de python puede ser desplegado.

20230330132810

Sin embargo, las páginas web a las que no se puede acceder en la Internet pública siempre sienten falta de alma, por lo que podemos usar la penetración de intranet cpolar para crear un túnel de datos de penetración de intranet, de modo que podamos acceder a python en condiciones de Internet pública.

3. Instalación y registro de cpolar

Del mismo modo, podemos encontrar el software correspondiente a la versión del sistema operativo en el sitio web oficial de cpolar ( https://www.cpolar.com/ ), el autor también elige aquí la versión de Windows.

20230330132811

20230330132812

Después de descargar el software Cpolar, descomprima el paquete comprimido y haga doble clic para .msi文件instalarlo automáticamente, solo Nextdebemos hacer clic hasta el final.

20230330132813

20230330132814

Dado que cpolar creará un túnel de datos independiente para cada usuario, complementado con contraseñas de usuario y códigos de token para garantizar la seguridad de los datos, debemos registrar a los usuarios antes de usar cpolar. El proceso de registro también es muy simple. Simplemente haga clic en la esquina superior derecha de la página de inicio de cpolar 用户注册y complete la información necesaria en la página de registro para completar el registro.

20230330132815

20230330132816

3.1 Configuración de la nube Cpolar

Después de completar la instalación y el registro de cpolar, podemos comenzar a usar cpolar para crear un túnel de datos de penetración de intranet para conectar la página web de python de la computadora local con la Internet pública. Cabe señalar que el túnel de datos de la versión gratuita de cpolar se reinicia cada 24 horas. El autor no desea restablecer la configuración del túnel de datos todos los días, por lo que actualicé cpolar a la versión VIP para obtener un túnel de datos de penetración de intranet estable a largo plazo.

Para generar un túnel de datos de penetración de intranet estable y a largo plazo, primero debemos visitar el sitio web oficial de cpolar e iniciar sesión, y buscar y hacer clic en el botón en el lado izquierdo de la página "Tablero" para ingresar a la página "Reserva" 预留.

20230330132817

20230330132818

En la página "Reserva", podemos ver que cpolar proporciona elementos de reserva de túnel de datos para varios protocolos. Y el servidor de python es el protocolo http, por lo que encontramos 保留二级子域名el campo. Por supuesto, si ya compró su propio nombre de dominio de un proveedor de nombres de dominio, también puede seleccionar el campo "Reservar nombre de dominio personalizado".

En el campo "nombre de subdominio de segundo nivel reservado", debemos configurar la información del nombre de subdominio de segundo nivel que pretendemos reservar, y el conjunto de información también se convertirá en la entrada del túnel para que podamos acceder al servidor python local en el Internet pública (la dirección de la parte de Internet pública). La información específica que debe configurarse es:

  • 地区: El área donde se encuentra el servidor, solo seleccione el más cercano
  • 二级域名Eventualmente aparecerá en la dirección de Internet pública generada como uno de los identificadores de la dirección de red.
  • 描述Puede considerarse como la descripción de este túnel de datos, que puede distinguirse de otros túneles.

Después de ingresar esta configuración, puede hacer clic en 保留el botón a la derecha para mantener este túnel de datos. Si ya no queremos la entrada de este túnel, también podemos hacer clic en la "x" a la derecha para eliminar el túnel fácilmente

20230330132819

3.2 Ajustes locales de Cpolar

Después de completar la configuración de la nube cpolar, volvemos a la computadora local, abrimos e iniciamos sesión en el cliente cpolar (puede ingresar localhost: 9200 en el navegador para acceder directamente, o hacer clic en el acceso directo del cliente cpolar en el menú de inicio).

20230330132820

Haga clic en el botón en el lado izquierdo de la interfaz principal del cliente para ingresar a la página de creación de túnel local (si desea crear un túnel de datos temporal cuya dirección se restablece cada 24 horas, puede configurarlo directamente aquí en lugar de dejar un espacio en blanco túnel de datos en el sitio web oficial de cpolar) 隧道管理.创建隧道

En esta página, también se deben realizar varias configuraciones de información, que incluyen:

  1. 隧道名称—— Se puede considerar como la anotación de información del túnel local de cpolar, siempre que sea conveniente para nosotros distinguir;
  2. 协议——Tomcat genera páginas web, así que elija el protocolo http;
  3. 本地地址——La dirección local es el número de puerto de salida del sitio web local. Configuramos 8081 como el puerto de salida antes, así que complete 8081 aquí;
  4. 域名类型——En este ejemplo, hemos reservado el túnel de datos del nombre de subdominio de segundo nivel en la nube cpolar, así que verifique el "nombre de subdominio de segundo nivel" (si el nombre de dominio reservado es un nombre de dominio personalizado, verifique el nombre de dominio personalizado nombre), y complete el nombre de subdominio de segundo nivel reservado en la columna "Subdominio" en la siguiente línea, aquí completamos "pythonweb" (si solo crea un túnel de datos temporal, marque directamente "nombre de dominio aleatorio", y el cliente cpolar generará la red por sí mismo dirección);
  5. 地区——Al igual que la configuración de la nube cpolar, completamos la ubicación más cercana de acuerdo con la ubicación real;

20230330132821

Después de completar esta configuración, puede hacer clic en 创建el botón en la parte inferior de la página para conectar la página web del servidor Python local con el subdominio de segundo nivel reservado en la nube cpolar para generar un túnel de datos de penetración de intranet completo.

Después de crear el túnel, cpolar saltará automáticamente a 隧道管理la página -- 隧道列表, donde puede ver el estado del túnel de datos (si está desbloqueado) o controlar la apertura, el cierre o la eliminación del túnel. Si necesita cambiar la información del túnel, también puede usar el botón "Editar" aquí

20230330132822

4. Prueba de acceso a la red pública

Una vez establecido el túnel de datos, podemos hacer clic en el lado izquierdo del cliente cpolar 状态- 在线隧道列表. Encuentre una dirección pública de Internet donde pueda acceder a la página de su servidor Python local.

20230330132823

Simplemente ingrese esta dirección en la dirección del navegador y podrá acceder fácilmente a la página del servidor Python en la computadora local.

20230330132824

5. Conclusión

Hasta ahora, hemos utilizado con éxito python para crear una página de servidor simple y hemos creado un túnel de datos para ella a través de cpolar que puede penetrar la barrera de la intranet y publicar esta página de python en la Internet pública. De hecho, siempre que sepamos el número de puerto de salida de la página web (o software), podemos usar cpolar para penetrar en la intranet, permitiéndonos acceder a la página web local (o software) en la Internet pública.

Supongo que te gusta

Origin blog.csdn.net/m0_64102491/article/details/130391642
Recomendado
Clasificación