docs: update vpn/openvpn/servidor
This commit is contained in:
parent
1a507c8fa2
commit
6051aea5b1
@ -2,7 +2,7 @@
|
|||||||
title: OpenVPN - Servidor
|
title: OpenVPN - Servidor
|
||||||
description: Tutorial de instalación del Servidor OpenVPN
|
description: Tutorial de instalación del Servidor OpenVPN
|
||||||
published: true
|
published: true
|
||||||
date: 2022-05-25T22:01:16.999Z
|
date: 2022-05-25T22:13:16.266Z
|
||||||
tags: vpn, servidor, debian
|
tags: vpn, servidor, debian
|
||||||
editor: markdown
|
editor: markdown
|
||||||
dateCreated: 2022-05-18T16:48:57.246Z
|
dateCreated: 2022-05-18T16:48:57.246Z
|
||||||
@ -293,40 +293,37 @@ cd ~/EasyRSA/
|
|||||||
cp pki/private/{client1.key,client2.key,client3.key,client4.key} ~/client-configs/keys/
|
cp pki/private/{client1.key,client2.key,client3.key,client4.key} ~/client-configs/keys/
|
||||||
```
|
```
|
||||||
|
|
||||||
* Enviamos la solicitud de nuestra VPN a la SubCA para validarla
|
* Enviamos las solicitudes de nuestra VPN a la SubCA para validarlas
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
scp ~/EasyRSA/pki/reqs/client1.req signer@signer.bastionado.es:/tmp
|
scp ~/EasyRSA/pki/reqs/{client1.req,client2.req,client3.req,client4.req} signer@signer.bastionado.es:/tmp
|
||||||
```
|
```
|
||||||
|
|
||||||
* Nos situamos sobre la SubCA e importamos y firmamos las solicitudes
|
* Nos situamos sobre la SubCA e importamos y firmamos las solicitudes
|
||||||
|
|
||||||
```bash
|
|
||||||
ssh signer@signer.bastionado.es
|
|
||||||
|
|
||||||
cd ~/EasyRSA
|
|
||||||
```
|
|
||||||
|
|
||||||
* Importamos y firmamos la solicitud
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
./easyrsa import-req /tmp/client1.req client1
|
./easyrsa import-req /tmp/client1.req client1
|
||||||
|
./easyrsa import-req /tmp/client2.req client2
|
||||||
|
./easyrsa import-req /tmp/client3.req client3
|
||||||
|
./easyrsa import-req /tmp/client4.req client4
|
||||||
|
|
||||||
./easyrsa sign-req client client1
|
./easyrsa sign-req client client1
|
||||||
|
./easyrsa sign-req client client2
|
||||||
|
./easyrsa sign-req client client3
|
||||||
|
./easyrsa sign-req client client4
|
||||||
```
|
```
|
||||||
|
|
||||||
* Devolvemos el certificado válido a nuestra oVPN
|
* Devolvemos los certificados válidos a nuestra oVPN
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
scp pki/issued/client1.crt ovpn@ovpn.bastionado.es:/tmp
|
scp pki/issued/{client1.crt,client2.crt,client3.crt,client4.crt} ovpn@ovpn.bastionado.es:/tmp
|
||||||
```
|
```
|
||||||
|
|
||||||
* Volvemos a la VPN y copiamos el certificado a nuestro directorio de configuraciones Cliente
|
* Volvemos a la VPN y copiamos el certificado a nuestro directorio de configuraciones Cliente
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
exit
|
|
||||||
|
|
||||||
cp /tmp/client1.crt ~/client-configs/keys/
|
cp /tmp/{client1.crt,client2.crt,client3.crt,client4.crt} ~/client-configs/keys/
|
||||||
```
|
```
|
||||||
|
|
||||||
* Ahora copiamos el certificado de la SubCA y la Firma HMAC a nuestro directorio de configuraciones Cliente
|
* Ahora copiamos el certificado de la SubCA y la Firma HMAC a nuestro directorio de configuraciones Cliente
|
||||||
@ -334,8 +331,7 @@ cp /tmp/client1.crt ~/client-configs/keys/
|
|||||||
```bash
|
```bash
|
||||||
exit
|
exit
|
||||||
|
|
||||||
sudo cp /etc/openvpn/ta.key ~/client-configs/keys/
|
sudo cp /etc/openvpn/{ca.crt,ta.key} ~/client-configs/keys/
|
||||||
sudo cp /etc/openvpn/ca.crt ~/client-configs/keys/
|
|
||||||
```
|
```
|
||||||
|
|
||||||
### Configuración de OpenVPN
|
### Configuración de OpenVPN
|
||||||
@ -345,11 +341,36 @@ Ahora que ya hemos terminado completamente con la Infraestructura de Clave Públ
|
|||||||
* Comenzamos copiando la configuración de ejemplo y lo editamos
|
* Comenzamos copiando la configuración de ejemplo y lo editamos
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf /etc/openvpn/
|
|
||||||
|
|
||||||
sudo nano /etc/openvpn/server.conf # sudo vim /etc/openvpn/server.conf
|
sudo nano /etc/openvpn/server.conf # sudo vim /etc/openvpn/server.conf
|
||||||
```
|
```
|
||||||
|
|
||||||
|
* Modificamos el puerto por defecto y mantenemos el uso del protocolo UDP, más rápido y resistente frente a ataques de denegación de servicio
|
||||||
|
|
||||||
|
```bash
|
||||||
|
port 6174
|
||||||
|
proto udp
|
||||||
|
```
|
||||||
|
|
||||||
|
* Especificamos la interfaz de red que se creará de forma explícita como `tun0`
|
||||||
|
|
||||||
|
```bash
|
||||||
|
dev tun0
|
||||||
|
```
|
||||||
|
|
||||||
|
* Apuntaremos a nuestros certificados generados anteriormente
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ca ca.crt
|
||||||
|
cert ovpn.crt
|
||||||
|
key ovpn.key
|
||||||
|
```
|
||||||
|
|
||||||
|
* Establecemos la directiva `dh` con nuestra clave generada anteriormente
|
||||||
|
|
||||||
|
```bash
|
||||||
|
dh dh.pem
|
||||||
|
```
|
||||||
|
|
||||||
> La directiva `tls-auth` añade una capa adicional de autenticación HMAC sobre el canal de control TLS para mitigar los ataques DoS y los ataques a la pila TLS. En pocas palabras, --tls-auth habilita una especie de "cortafuegos HMAC" en el puerto TCP/UDP de OpenVPN, donde los paquetes del canal de control TLS que lleven una firma HMAC incorrecta pueden ser descartados inmediatamente sin respuesta.
|
> La directiva `tls-auth` añade una capa adicional de autenticación HMAC sobre el canal de control TLS para mitigar los ataques DoS y los ataques a la pila TLS. En pocas palabras, --tls-auth habilita una especie de "cortafuegos HMAC" en el puerto TCP/UDP de OpenVPN, donde los paquetes del canal de control TLS que lleven una firma HMAC incorrecta pueden ser descartados inmediatamente sin respuesta.
|
||||||
|
|
||||||
* Nos aseguramos de que `tls-auth` está habilitado (debemos eliminar el `;` inicial si existe)
|
* Nos aseguramos de que `tls-auth` está habilitado (debemos eliminar el `;` inicial si existe)
|
||||||
@ -374,11 +395,7 @@ cipher AES-256-CBC
|
|||||||
auth SHA512
|
auth SHA512
|
||||||
```
|
```
|
||||||
|
|
||||||
* Buscamos la directiva `dh` para modificar su nombre a `dh.pem` ya que es como se denomina nuestro fichero generado anteriormente
|
|
||||||
|
|
||||||
```bash
|
|
||||||
dh dh.pem
|
|
||||||
```
|
|
||||||
|
|
||||||
* Haremos que el servicio OpenVPN se ejecute con el usuario `nobody` y grupo `nogroup` descomentando estos valores
|
* Haremos que el servicio OpenVPN se ejecute con el usuario `nobody` y grupo `nogroup` descomentando estos valores
|
||||||
|
|
||||||
@ -387,12 +404,7 @@ user nobody
|
|||||||
group nogroup
|
group nogroup
|
||||||
```
|
```
|
||||||
|
|
||||||
* Apuntaremos a nuestro certificado generado anteriormente
|
|
||||||
|
|
||||||
```bash
|
|
||||||
cert ovpn.crt
|
|
||||||
key ovpn.key
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
* Y para finalizar forzaremos que todo el tráfico de los clientes sea redirigido por la VPN. Buscaremos y descomentaremos las siguientes líneas
|
* Y para finalizar forzaremos que todo el tráfico de los clientes sea redirigido por la VPN. Buscaremos y descomentaremos las siguientes líneas
|
||||||
|
Loading…
x
Reference in New Issue
Block a user