Pregunta

Me gustaría establecer un hoteles de Linux como un servidor web para alojar una variedad de tecnologías web (PHP y Java EE vienen a la mente, pero me gustaría experimentar con Ruby o Python en el futuro).

Estoy bastante versado en la configuración de Tomcat en Linux para que sirven las aplicaciones Java EE, pero me gustaría ser capaz de abrir este servidor, incluso para que yo pueda crear algunas herramientas que puede utilizar mientras estoy trabajando en la oficina.Toda la experiencia que he tenido con la configuración de Java EE sitios ha sido para las aplicaciones de intranet donde nos dijeron que no centrarse en proteger las páginas para usuarios externos.

¿Cuál es su consejo sobre la creación de un personal de Linux servidor web en una lo suficientemente seguro como forma de abrir para el tráfico externo?

¿Fue útil?

Solución

Este artículo tiene algunas de las mejores maneras para bloquear las cosas:

http://www.petefreitag.com/item/505.cfm

Algunos aspectos destacados:

  • Asegúrese de que nadie puede navegar por los directorios
  • Asegurarse de que sólo root tiene permisos de escritura para todo, y sólo root tiene privilegios de lectura a ciertos archivos de configuración
  • Ejecutar mod_security

El artículo también toma algunos consejos de este libro:

Apache Securiy (O'Reilly Prensa)

Tan lejos como distribuciones, me he quedado Debain y Ubuntu, pero sólo depende de cuánto usted desea hacer.Corrí a Debian no X y sólo ssh había en él siempre que necesitaba cualquier cosa.Que es una forma sencilla de mantener la sobrecarga de abajo.O Ubuntu tiene algunas GUI cosas que hacen que sea fácil para el control de Apache/MySQL/PHP.

Otros consejos

Es importante que siga las mejores prácticas de seguridad siempre que sea posible, pero usted no quiere hacer las cosas excesivamente difícil para ti o perder el sueño preocuparse de mantenerse al día con las últimas hazañas.En mi experiencia, hay dos cosas claves que pueden ayudar a mantener a su personal de seguridad del servidor suficiente para lanzar en internet, manteniendo su cordura:

1) la Seguridad a través de oscuridad

Huelga decir que, confiando en que este en el 'mundo real' es una mala idea y no para ser entretenidos.Pero eso es porque en el mundo real, los malos saben lo que hay y que no hay botín que se tenía.

En un servidor personal, la mayoría de los 'ataques' vas a sufrir va a ser simplemente automatizado de los barridos de las máquinas que ya se han comprometido, en busca de las instalaciones predeterminadas de productos conocidos a ser vulnerables.Si su servidor no ofrece nada apetecible en los puertos por defecto o en la ubicación predeterminada, el sistema automatizado de atacante pasará.Por lo tanto, si vas a correr un servidor ssh, lo puso en un puerto no estándar (>1024) y lo más probable es que nunca será encontrado.Si usted puede conseguir lejos con esta técnica para el servidor web, a continuación, gran, cambio que a un oscuro puerto también.

2) la gestión de Paquetes

No compilar e instalar Apache o sshd de la fuente usted mismo a menos que sea absolutamente necesario.Si usted lo hace, usted está tomando la responsabilidad de mantenerse al día con los últimos parches de seguridad.Deje que el buen mantenedores de paquetes de las distribuciones de Linux como Debian o Ubuntu hacer el trabajo por usted.Instalación de la distro de paquetes precompilados, y mantenerse al día se convierte en una cuestión de la emisión de la ocasional apt-get update && apt-get-u dist-upgrade comando, o el uso de cualquier fantasía herramienta gráfica de Ubuntu proporciona.

Una cosa que usted debe estar seguro de tener en cuenta es qué puertos están abiertos a todo el mundo.Yo personalmente sólo abrir el puerto 22 de SSH y el puerto 123 por ntpd.Pero si se abre el puerto 80 (http) o ftp asegúrese de aprender a conocer, al menos, lo que está sirviendo al mundo y quién puede hacer qué con eso.No sé mucho acerca de ftp, pero hay millones de gran Apache tutoriales sólo una búsqueda en Google de distancia.

Bit-Tech.Net corrió un par de artículos sobre cómo configurar un servidor casero con linux.Aquí están los enlaces:

Artículo 1
Artículo 2

La esperanza de aquellos que son un poco de ayuda.

@svrist mencionado EC2.EC2 proporciona una API para la apertura y el cierre de los puertos de forma remota.De esta manera, usted puede mantener su cuadro de ejecución.Si usted necesita dar una demostración de un café o una oficina del cliente, usted puede tomar su IP y agregarlo a la lista.

Su seguro y seguro si usted mantiene su voz hacia abajo sobre ella (es decir, rara vez alguien que venga después de que su casa server si usted está a solo un hosting glorificado webroot en una casa de la conexión) y de su ingenio acerca de su configuración (es decir, evitar el uso de la raíz de todo, asegúrese de mantener su software al día).

En esa nota, aunque este hilo potencialmente disminuyen sólo en llamas, mi sugerencia personal para su servidor es ceñirse a nada de Ubuntu (obtener Ubuntu Server aquí);en mi experiencia, la forma más rápida de obtener respuestas de dónde preguntas en los foros (no estoy seguro de qué decir acerca de la absorción, sin embargo).

Mi casa de seguridad en el servidor por CIERTO un poco de los beneficios (creo, o quiero pensar) de no tener una IP estática (se ejecuta en el DynDNS).

Buena suerte!

/mp

Tenga cuidado al abrir el puerto SSH en el medio silvestre.Si lo hace, asegúrese de deshabilitar las conexiones de root (siempre se puede su o sudo una vez que usted consigue) y considerar más agresivos métodos de autenticación dentro de la razón.Vi un enorme ataque de diccionario en mi servidor de registros de un fin de semana va después de mi servidor SSH desde un DynDNS hogar IP del servidor.

Que siendo dicho, es realmente impresionante para ser capaces de llegar a su casa concha de trabajo o fuera...y añadir en el hecho de que usted puede utilizar SFTP en el mismo puerto, no podía imaginar la vida sin ella.=)

Usted podría considerar la posibilidad de un Instancia de EC2 de Amazon.De esa manera usted puede fácilmente probar "cosas" sin jugar con la producción.Y sólo pagar por el espacio,el tiempo y el ancho de banda que utiliza.

Si ejecuta un servidor Linux de la casa, instalar ossec en él una agradable ligero IDENTIFICADORES que funciona realmente bien.

[EDITAR]

Como nota lateral, asegúrese de que no choquen con los de tu ISP Política de Uso Aceptable y que permiten conexiones entrantes en los puertos estándar.El ISP yo solía trabajar para que la tenía escrita en sus términos que usted podría estar desconectado para el funcionamiento de los servidores a través del puerto 80/25 a menos que usted estaba en una clase de negocios de la cuenta.Mientras no nos activamente bloquear los puertos (que no la atención, a menos que se estaba causando un problema) algunos Isp no permitir el tráfico a través del puerto 80 o 25 por lo que tendrá que usar las alternativas puertos.

Si vas a hacer esto, gastar un poco de dinero y al menos comprar un dedicado router/firewall con zona DMZ puerto.Usted querrá firewall fuera de la red interna desde el servidor, de forma que cuando (no se si!!!) su servidor web está en peligro, su red interna, no es inmediatamente vulnerables así.

Hay un montón de maneras de hacer esto que funcionará muy bien.Yo normalmente uso justo de una .archivo htaccess.Instalación rápida y segura suficiente .Probablemente no sea la mejor opción pero a mí me funciona.No voy a poner mi número de tarjeta de crédito detrás de él, pero aparte de que no me importa.

Wow, estás abriendo una lata de gusanos tan pronto como se inicie la apertura de cualquier cosa, hasta para el tráfico externo.Tenga en cuenta que lo que usted considera experimental servidor, casi como un cordero de sacrificio, también es presa fácil para las personas que buscan hacer cosas malas con su red y sus recursos.

Todo su enfoque a un externamente-disponible en el servidor debe ser muy conservador y cuidadoso.Comienza con cosas simples, como las políticas de cortafuegos, incluye el sistema operativo subyacente (y se mantiene parcheado, configuración de seguridad, etc.) y consiste en que cada capa de cada pila se va a utilizar.No hay una respuesta simple o la receta, me temo.

Si quieres experimentar, que va a hacer mucho mejor mantener el servidor privado y el uso de una VPN si usted necesita para trabajar en él de forma remota.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top