docs: update vpn/openvpn/servidor
This commit is contained in:
parent
1a507c8fa2
commit
6051aea5b1
@ -2,7 +2,7 @@
|
||||
title: OpenVPN - Servidor
|
||||
description: Tutorial de instalación del Servidor OpenVPN
|
||||
published: true
|
||||
date: 2022-05-25T22:01:16.999Z
|
||||
date: 2022-05-25T22:13:16.266Z
|
||||
tags: vpn, servidor, debian
|
||||
editor: markdown
|
||||
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/
|
||||
```
|
||||
|
||||
* Enviamos la solicitud de nuestra VPN a la SubCA para validarla
|
||||
* Enviamos las solicitudes de nuestra VPN a la SubCA para validarlas
|
||||
|
||||
```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
|
||||
|
||||
```bash
|
||||
ssh signer@signer.bastionado.es
|
||||
|
||||
cd ~/EasyRSA
|
||||
```
|
||||
|
||||
* Importamos y firmamos la solicitud
|
||||
|
||||
```bash
|
||||
./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 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
|
||||
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
|
||||
|
||||
```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
|
||||
@ -334,8 +331,7 @@ cp /tmp/client1.crt ~/client-configs/keys/
|
||||
```bash
|
||||
exit
|
||||
|
||||
sudo cp /etc/openvpn/ta.key ~/client-configs/keys/
|
||||
sudo cp /etc/openvpn/ca.crt ~/client-configs/keys/
|
||||
sudo cp /etc/openvpn/{ca.crt,ta.key} ~/client-configs/keys/
|
||||
```
|
||||
|
||||
### 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
|
||||
|
||||
```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
|
||||
```
|
||||
|
||||
* 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.
|
||||
|
||||
* Nos aseguramos de que `tls-auth` está habilitado (debemos eliminar el `;` inicial si existe)
|
||||
@ -374,11 +395,7 @@ cipher AES-256-CBC
|
||||
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
|
||||
|
||||
@ -387,12 +404,7 @@ user nobody
|
||||
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
|
||||
|
Loading…
x
Reference in New Issue
Block a user