Entonces, para comenzar, primero debe decirle a su sistema dónde encontrar y descargar la última versión de OpenVPN.
yum install http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
A continuación, instalaremos dos paquetes de software importantes: OpenVPN y Easy-RSA. OpenVPN es un software VPN robusto y altamente flexible que utiliza todas las funciones de cifrado, autenticación y certificación de la biblioteca OpenSSL para implementar técnicas de red privada virtual (VPN). Easy-RSA es un pequeño paquete de administración de claves RSA, basado en la herramienta de línea de comandos openssl. Lo usaremos para generar certificados y administrar claves (privadas).
- ¿Cuál es el futuro de la industria VPN?
- ¿Cuáles son algunas buenas VPN que no cuestan más de $ 3 / mes?
- ¿Opera VPN es confiable?
- ¿Existe un servicio confiable para ingresar a internet chino mientras estoy en el extranjero? Quiero uno que permita la transmisión sin obstáculos de sitios web basados en la RPC mientras estoy lejos de Dalu.
- Cómo acceder a sitios bloqueados (India) gratis
# Use el siguiente comando para instalar OpenVPN, Easy-RSA y su software necesario para instalar openvpn easy-rsa -y
Ahora trasladaremos todos los archivos de configuración de VPN desde donde se instalaron originalmente a “/ etc / openvpn /” para que se pueda acceder a ellos desde una ubicación y las actualizaciones futuras no eliminen los cambios que hayamos realizado.
# Copie los archivos de configuración de muestra de OpenVPN en “/ etc / openvpn” cp /usr/share/doc/openvpn-2.3.2/sample/sample-config-files/server.conf / etc / openvpn # Copie los archivos de configuración de muestra de easy-rsa a “/ etc / openvpn” cp -R / usr / share / easy-rsa / etc / openvpn
OpenVPN usa PKI (Infraestructura de clave pública) para la autenticación. El cliente debe autenticar el certificado del servidor y el servidor debe autenticar el certificado del cliente antes de que se pueda establecer una conexión. En los siguientes pasos crearemos 3 pares de certificados y sus claves asociadas. El primer par es para el servidor y el segundo par es para el cliente. El último par es el certificado raíz (también conocido como CA o Autoridad de certificación) y su clave privada, que se utilizará para firmar los certificados de servidor y cliente. Puede crear los pares de claves con Easy-RSA:
cd /etc/openvpn/easy-rsa/2.0
# Edite la secuencia de comandos vars para utilizar la ruta http: // correcta.
vi vars
# Cambiar línea: exportar KEY_CONFIG = `$ EASY_RSA / whichopensslcnf $ EASY_RSA` a
export KEY_CONFIG = / etc / openvpn / easy-rsa / 2.0 / openssl-1.0.0.cnf
# De vuelta en el símbolo del sistema, use el siguiente comando para reflejar los cambios.
# Observe el espacio entre. y vars.
.vars
# Eliminar todos los certificados creados anteriormente.
./Limpiar todo
# Cree el certificado y la clave de la autoridad de certificación (CA).
# Elija un nombre único como “Nombre común”. Otros campos son opcionales.
./build-ca
# Genere un certificado y una clave privada para el servidor.
# Elija un “Nombre común” único como “servidor”.
# Ingrese “.” cuando se le solicite una contraseña de desafío.
./build-key-server server
# Construir parámetros Diffie-Hellman para el servidor.
./build-dh
# crea un certificado para el cliente: RobbC.
# Elija un “Nombre común” único como “RobbC”.
# Ingrese “.” cuando se le solicite una contraseña de desafío.
./build-key RobbC
# Repita el comando anterior si necesita agregar más clientes.
Ahora transferiremos los certificados y las claves del servidor a la máquina del cliente. En nuestro caso, se deben enviar 3 archivos al cliente: ca.crt, RobbC.crt y RobbC.key. La forma más fácil de hacer que estos archivos estén disponibles en la máquina del cliente es mediante el comando “cat”. Este comando muestra el contenido del archivo (por ejemplo, “cat ca.crt”) como texto claro en la ventana de su terminal. Ahora cree un nuevo archivo de texto en la máquina del cliente. Copie el contenido de la ventana de terminal y péguelo en el nuevo archivo de texto. Finalmente, guarde el archivo con el mismo nombre que el original (en nuestro ejemplo “ca.crt”).
Ahora configuraremos nuestro servidor OpenVPN editando el archivo “server.conf” que copiamos previamente en “/ etc / openvpn”.
# Editar la configuración del servidor
CD / etc / openvpn
vi server.config
# Incluye la siguiente configuración.
# ¿En qué puerto TCP / UDP debe escuchar OpenVPN?
puerto 1194
# ¿Servidor TCP o UDP?
proto udp
# Crear un túnel IP enrutado
Dev Tun
# Señale nuestros archivos ca, cert, key y dh.
ca / etc / openvpn / easy-rsa / 2.0 / keys / ca.crt
cert /etc/openvpn/easy-rsa/2.0/keys/server.crt
clave /etc/openvpn/easy-rsa/2.0/keys/server.key
dh /etc/openvpn/easy-rsa/2.0/keys/dh2048.pem
# Proporcione una subred VPN para el servidor y los clientes
servidor 10.8.0.0 255.255.255.0
# Asignar la dirección IP utilizada anteriormente
ifconfig-pool-persist ipp.txt
# Redireccionar todo el tráfico IP a través de la VPN
presione “redirect-gateway def1 bypass-dhcp”
# Las direcciones a continuación se refieren a los servidores DNS de
# Comodo DNS. Cambie a Google DNS si lo prefiere.
presione “dhcp-option DNS 8.26.56.26”
presione “dhcp-option DNS 8.20.247.20”
# Permitir que varios clientes compartan los mismos archivos de certificado / clave.
duplicar-cn
keepalive 10 120
# Habilitar la compresión
comp-lzo
# reduce los privilegios del demonio OpenVPN después de la inicialización.
usuario nadie
grupo nadie
# Las opciones persistentes
clave persistente
persist-tun
# Opciones de registro
status openvpn-status.log
log-append /var/log/openvpn.log
verbo 3
# Agregue un nombre de usuario adicional / autenticación de contraseña para clientes
plugin /usr/lib/openvpn/plugin/lib/openvpn-auth-pam.so iniciar sesión
Además de la autenticación basada en certificados, también queremos autenticar a cada cliente solicitando un nombre de usuario y contraseña. Por lo tanto, crearemos una cuenta para cada cliente que otorgue privilegios limitados.
# Create a user account with no home directory and shell access.
useradd RobbC -M -s /bin/false
passwd RobbC
Felicitaciones, su servidor VPN ahora está configurado. El último paso es optimizar su sistema para ejecutar el servicio VPN correctamente. Primero habilitaremos el reenvío de IP. Luego haremos que el servicio se inicie automáticamente después del arranque. Finalmente, editaremos la configuración del firewall para permitir el tráfico VPN.
# Habilitar el reenvío de IP
vi /etc/sysctl.conf
# Cambiar net.ipv4.ip_forward = 0 a:
net.ipv4.ip_forward = 1
# Guardar y aplicar cambios.
sysctl -p
# Inicie el servidor OpenVPN al iniciar el sistema.
chkconfig openvpn en
# Permitir nuestra subred VPN en el firewall
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
servicio iptables guardar