Dudas con la seguridad de los datos al montar un server con acceso externo

Iniciado por Mariano00, Mayo 03, 2017, 08:19:40 AM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Amigos, estoy pensando en crear un servidor local para crear una wiki o utilizar owncloud para poder gestionar tareas y elaborar proyectos que tengo en mente, además de usarlo como resguardo de mi ordenador personal.

La cuestión es que quisiera instalarle Windows XP (debido a los bajos recursos del ordenador) ya que estoy más familiarizado con Windows. Descarto la idea de Linux por diversos motivos, pero no lo odio ;)


Lo que me preocupa de esto es la seguridad de los datos, porque tengo pensado acceder desde el exterior. Les describo lo que quiero hacer para que me digan si hay algo que debo cambiar.

La idea sería la siguiente:

- Redireccionar la IP pública a la privada.

- Instalar Windows XP.

- Instalar WAMP para crear el servidor.

- Instalar y configurar Owncloud o Wiki.

- Instalar tunel SSH con llave pública por si necesito transferir archivos desde algún PC o Android.

- Instalar Firewall y configurar de modo que no permita conexiones entrantes y sólo permita las de determinadas MAC.

- Configurar la auditoría de los archivos de forma que me informe cualquier acceso o modificación de los mismos.

- Crear reglas en el visor de sucesos que filtren sólo los sucesos de auditoría.

- Particionar y cifrar una unidad que contenga los datos más importantes para montarla sólo cuando sea necesario.

- Instalar y configurar TeamViewer para acceder desde mi ordenador (ya que la pantalla está partida en una parte y se la voy a quitar).


Espero que de paso esta información le sea útil a aquel que quiera montar un server y también tenga dudas sobre la seguridad de sus datos.


Leo sus opiniones.

Desde ya XP es vulnerable y no es un S.O recomendado ahora; por lo que comentas me parece que vas bien con la seguridad, yo te sugiero que uses puertos desconocidos para la conexión remota si es que intentas hacerlo público con tu router.

Gracias por leer!
DUDA

Hola.

Lo que puedes realizar es un tunel VPN, de ese modo te ahorras mucho trabajo con puertos, servicios, ya que te conectas desde un lugar remoto por VPN a tu sitio y trabajas de forma local.

Para el tunel VPN si tienes ip fija es lo mejor, caso opuesto, puedes trabajar con algun servicio de dns dinámico (no-ip, dyndns).

El firewall es lo primero que debes revisar y ordenar, que filtros utilizaras en el Input/Forward/Output.

Saludos !


Te doy mis opiniones, pero no tienen por que estar bien. Te trato de argumentar el por qué y despues tu ya sacas tus conclusiones.

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Amigos, estoy pensando en crear un servidor local para crear una wiki o utilizar owncloud para poder gestionar tareas y elaborar proyectos que tengo en mente, además de usarlo como resguardo de mi ordenador personal.

La cuestión es que quisiera instalarle Windows XP (debido a los bajos recursos del ordenador) ya que estoy más familiarizado con Windows. Descarto la idea de Linux por diversos motivos, pero no lo odio ;)


Lo que me preocupa de esto es la seguridad de los datos, porque tengo pensado acceder desde el exterior. Les describo lo que quiero hacer para que me digan si hay algo que debo cambiar.

La idea sería la siguiente:

- Redireccionar la IP pública a la privada.


Yo redireccionaria solo los puertos que necesites y lo demás no. Asi evitaras ampliar la superficie de exposición de tu equipo.

Citar

- Instalar Windows XP.


No, windows XP es una mala idea tal y como te comentan. Si es equipo viejo yo tiraría a una distro de linux ligera. Mírate un poco los últimos exploits que salieron y los parches que aplicó microsoft a TODOS sus SO menos a XP. Logico porque ya no dan soporte a dicho SO.

Citar

- Instalar WAMP para crear el servidor.


En general un AMP sobre el sistema operativo que toque. Piensa si vas a necesitar la parte de mysql y si no evita instalar servicios que no vas a usar.

Citar

- Instalar y configurar Owncloud o Wiki.


Bueno instala los servicios web que necesites, pero restringete a los que realmente necesites. No dejes nada abierto por hacer pruebas y recuerda cambiar todas las credenciales por defecto. Importante, mantén actualizadas las versiones de los programas que instales SIEMPRE. Y metete en el listado de correo de los servers para mantenerte informado de las ultimas vulnerabilidades y parches.

Citar

- Instalar tunel SSH con llave pública por si necesito transferir archivos desde algún PC o Android.


¿Con esto te refieres a que dejarás el servicio de ssh activo? El tunel se genera desde un cliente hacia un server, pero para que quieres hacer un tunel ¿Quieres acceder a otros equipos de tu misma red? Si solo quieres subir archivos ¿no te vale con el ssh server simplemente?

Para dar un punto mas de seguridad, puedes hacer un port knocking y un cambio de puerto al ssh para que no te den demasiado la lata. Y por otro lado, puedes instalarte un demonio de los que miran el log y ante pruebas al ssh deniegan a la IP hacer mas peticiones.

Citar
- Instalar Firewall y configurar de modo que no permita conexiones entrantes y sólo permita las de determinadas MAC.


El filtrado MAC aqui no te va a ayudar (al menos para las conexiones externas). Las direcciones MAC son de ambito local y se pierden a partir del primer router. Si quieres tendras que hacer filtrado por IP o similares. Si no permites conexiones entrantes, tu tampoco te podrás conectar a él.

Citar

- Configurar la auditoría de los archivos de forma que me informe cualquier acceso o modificación de los mismos.


tienes herramientas que se guardan los md5 de los archivos y avisan ante cambios, pero si vas a cambiar los archivos muy a menudo, entiendo por lo que dices que vas a subir archivos etc... va a ser un coñazo. Recuerda que todos los logs que generes despues, tendras que mirarlos. Si no, no te vale de nada.

Citar

- Crear reglas en el visor de sucesos que filtren sólo los sucesos de auditoría.


Pero recuerda, tendrás que mirarlas. No te vale de nada generar logs si después no los miras. ¿Vas a tener tiempo para hacerlo?

Citar

- Particionar y cifrar una unidad que contenga los datos más importantes para montarla sólo cuando sea necesario.


Si quieres dejar el servidor dando servicio, todo a lo que desees tener acceso tendra que ir sin cifrar. Si lo has cifrado para arrancarlo lo tendrás que descifrar asi que... Recuerda que las claves de ssh de tus usuarios no podrán estar en la unidad encriptada si no se desencripta ya que cuando intentes entrar no podra acceder a tus claves públicas.

Citar

- Instalar y configurar TeamViewer para acceder desde mi ordenador (ya que la pantalla está partida en una parte y se la voy a quitar).


Si tienes acceso ya por ssh para controlar la maquina ¿Para que deseas también acceso por teamviewer?
Yo trataría de limitar al maximo la superficie de exposicion, y no poner servicios que den servicios duplicados.

Por otro lado, al ser un equipo servidor, tiraria de un SO sin interfaz grafica y más si es un equipo viejo. Con el acceso por ssh tienes de sobra para hacer todo.

Lo siento, no contesto dudas por MP, si tienes dudas las planteas en el foro.

Citar

Yo redireccionaria solo los puertos que necesites y lo demás no. Asi evitaras ampliar la superficie de exposición de tu equipo.


Buen punto, eso no lo tenía en cuenta.


Citar

No, windows XP es una mala idea tal y como te comentan. Si es equipo viejo yo tiraría a una distro de linux ligera. Mírate un poco los últimos exploits que salieron y los parches que aplicó microsoft a TODOS sus SO menos a XP. Logico porque ya no dan soporte a dicho SO.


Entiendo que Windows XP es una mala idea, de echo lo estuve pensando muy bien. Sinceramente instalaría alguna distro de linux, el tema es que no conozco muy bien como auditar los archivos, como comprobar el disco y la integridad de los archivos, etc, etc y eso me preocupa un poco. Pero supongo que con algún software para auditar y un firewall ¿bastaría para empezar a protegerme? ¿Qué distro(s) de linux me recomiendas?

Citar

- Instalar tunel SSH con llave pública por si necesito transferir archivos desde algún PC o Android.

¿Con esto te refieres a que dejarás el servicio de ssh activo? El tunel se genera desde un cliente hacia un server, pero para que quieres hacer un tunel ¿Quieres acceder a otros equipos de tu misma red? Si solo quieres subir archivos ¿no te vale con el ssh server simplemente?


Con instalar un tunel SSH me refiero a instalar FreeSSHd y dejar activo el servicio SSH server para poder establecer la conexión desde otra parte.

La idea del tunel es para transferir archivos desde cualquier parte hacia mi servidor. Aunque estaría bueno que la navegación también sea por medio del SSH para evitar cualquier captura de paquetes. No se si me entiendes.


Citar

- Configurar la auditoría de los archivos de forma que me informe cualquier acceso o modificación de los mismos.

tienes herramientas que se guardan los md5 de los archivos y avisan ante cambios, pero si vas a cambiar los archivos muy a menudo, entiendo por lo que dices que vas a subir archivos etc... va a ser un coñazo. Recuerda que todos los logs que generes despues, tendras que mirarlos. Si no, no te vale de nada.


Entiendo lo que planteas, de echo ya lo había pensado de antemano, pero la idea era dejar sólo una carpeta (la que voy a usar para cargar los archivos desde el exterior) sin configurar la auditoría y configurarla para todas las demás. Esto es para que si alguien llegara a recorrer las demás carpetas, sería advertido de ello y podría detectar la lectura de información por parte del atacante.

Eso es lo que se me había ocurrido, no sé si habrá algún sistema mejor. Me pregunto como hacen saber los que mantienen los servidores, si los archivos están en constante modificación y lectura. Osea ¿cómo hacen detectar que una intrusión está robando datos?



Citar

- Particionar y cifrar una unidad que contenga los datos más importantes para montarla sólo cuando sea necesario.


Si quieres dejar el servidor dando servicio, todo a lo que desees tener acceso tendra que ir sin cifrar. Si lo has cifrado para arrancarlo lo tendrás que descifrar asi que... Recuerda que las claves de ssh de tus usuarios no podrán estar en la unidad encriptada si no se desencripta ya que cuando intentes entrar no podra acceder a tus claves públicas.


La idea de cifrar la unidad es para que esté más segura, al estar desmontada no podrían acceder. Toda la información que contiene esta unidad, no sería para acceder de forma externa, sino más bien de forma local para leer algún que otro dato y desmontarla cuanto antes.


Citar

- Instalar y configurar TeamViewer para acceder desde mi ordenador (ya que la pantalla está partida en una parte y se la voy a quitar).


Si tienes acceso ya por ssh para controlar la maquina ¿Para que deseas también acceso por teamviewer?
Yo trataría de limitar al maximo la superficie de exposicion, y no poner servicios que den servicios duplicados.

Por otro lado, al ser un equipo servidor, tiraria de un SO sin interfaz grafica y más si es un equipo viejo. Con el acceso por ssh tienes de sobra para hacer todo.



Perdón por mi ignorancia pero no sabía que con SSH se puede controlar la máquina, por eso pensé lo de team viewer  :).


Gracias por los consejos que me has aportado, de echo, son muy valiosos. Quisiera poder montar el server y configurarlo lo más seguro posible, de paso aprendo algo nuevo.

Estoy atento a sus recomendaciones.




No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Hola.

Lo que puedes realizar es un tunel VPN, de ese modo te ahorras mucho trabajo con puertos, servicios, ya que te conectas desde un lugar remoto por VPN a tu sitio y trabajas de forma local.

Para el tunel VPN si tienes ip fija es lo mejor, caso opuesto, puedes trabajar con algun servicio de dns dinámico (no-ip, dyndns).

El firewall es lo primero que debes revisar y ordenar, que filtros utilizaras en el Input/Forward/Output.

Saludos !

Hola!

Gracias por la recomendación! La razón por la que quería instalar Windows XP, eran diversas y entre ellas el firewall. Como conozco bien el funcionamiento de éste, me sentía seguro.

Creo que al final, según las recomendaciones dadas, voy a instalar alguna distro liviana de linux y a ver como me va. ¿Qué distro me recomendarías?

Yo buscaria una ligera basada en ubuntu server sin interfaz grafica. Al final vas a tener un server, la interfaz grafica solo consumira recursos en un ordenador en principio con poca capacidad.

Se que alguno dira, "buuuuu ubuntu es de loosers" pero te explico la razon mas importante de poner una ubuntu frente a otras, gentoo o similares que te ofreceran un sistema mas optimizado. DOCUMENTACION (en negrita subrayada y cambiando de color). Si buscas informacion de cualquier otras distros posiblemente naufragues entre paginas con informacion muchas veces escueta. Si tienes una basada en ubuntu tienes mares de informacion y casi seguro que ante el 99% de los problemas encontraras una solucion rapida con una busqueda en google.

Sobre el firewall, tienes iptables, sencillisimo de usar. (La primera accion a realizar te digo bajo mi punto de vista es deshabilitar ipv6 y dropear todos los paquetes ipv6 y a partir de ahi lo que quieras capar)

Otra cosa, ten en cuenta que los sistemas basados en md5 de archivos solo ven modificaciones de archivos no si estan abiertos en lectura.

El SSH viene de secure shell que es básicamente un telnet cifrado. Tambien puedes copiar archivos con el o hacer un tunel cifrado para permitir abrir servicios en la red de cualquiera de los puntos de la conexion hacia la red de la otra haciendo de proxy (osea que es mas o menos una VPN pero ligada a nivel de aplicacion o puerto). Es una herramienta muy potente, te recomiendo que mires un poco todas sus posibilidades. Ademas, si la ejecutas con -X permite abrir en la maquina local aplicaciones remotas del entorno X por lo que podrias abrir por ejemplo un mozilla en la maquina remota para acceder a una web y verias la ventana en tu ordenador local. Osea que en vez de exportar todo el escritorio a la maquina remota exportas solo la ventana de la aplicacion X que desees utilizar.

Sobre los logs en linux, no tienes mas que ir a la carpeta /var/log y ahi estan todos ordenaditos para que los puedas trabajar y leer.

Para securizar sistemas linux te recomiendo que veas rkhunter, chkrootkit y clamscan que son utiles detectando bichos.

No me enrollo mas, habrá mas gente que te podrá dar consejos más útiles.

Lo siento, no contesto dudas por MP, si tienes dudas las planteas en el foro.