Amazon Prime Video con tu VPN personal

Amazon no permite acceder a sus contenidos a través de VPN; esto significa que bloquea cualquier tipo de VPN de las empresas mas conocidas tipo NordVPN, PrivateVPN, etc. La única forma de poder acceder a Prime Video con una IP de un país diferente al que estamos, es crear una VPN personal utilizando OpenVPN y, en mi caso, un router Mikrotik.

La parte de OpenVPN la he montado en una servidor CentOS 7 del país donde mi interesa la IP, en mi caso Italia. Una vez alquilado el VPS accedemos vía SSH y actualizamos el sistema:

yum update -y

luego reiniciamos el VPS:

reboot

Volvemos a acceder y instalamos openpvn junto a unas utilidades:

yum install -y wget nano epel-release

yum install -y openvpn

descargamos el paquete que contiene las utilidades para crear los certificados:

wget -O /tmp/easyrsa https://github.com/OpenVPN/easy-rsa-old/archive/2.3.3.tar.gz

lo descomprimimos:

cd /tmp

tar xfz /tmp/easyrsa

creamos la carpeta donde vamos a copiar las utilidades:

mkdir /etc/openvpn/easy-rsa

y copiamos:

cp -rf easy-rsa-old-2.3.3/easy-rsa/2.0/* /etc/openvpn/easy-rsa

creamos la carpeta que contendrá los certificados que vamos a crear:

mkdir /etc/openvpn/easy-rsa/keys

abrimos este archivo:

nano /etc/openvpn/easy-rsa/vars

modificamos estos parámetros:

export KEY_COUNTRY="IT"

export KEY_PROVINCE="MI"

export KEY_CITY="Milano"

export KEY_ORG="VozToVoice"

export KEY_EMAIL="admin@miodominio.org"

export KEY_EMAIL=admin@miodominio.org

export KEY_CN=vpnit.miodominio.it

export KEY_NAME=server

export KEY_OU=vpn

export PKCS11_MODULE_PATH=changeme

export PKCS11_PIN=1234

IMPORTANTE: Personalizar; KEY_CN con el dominio o subdominio asociado al servidor; KEY_NAME siempre server; KEY_OU pueden dejar vpn

Se guardan los cambios y se continua con:

cd /etc/openvpn/easy-rsa

source ./vars

./clean-all

Se crea el certificado de la autoridad de certificación:

./build-ca

se crea el certificado del servidor

./build-key-server server

se crea la clave de Diffie-Hellman (puede tardar unos cuantos minutos):

./build-dh

Se copian los certificados del servidor en la carpeta de OpenVPN:

cd /etc/openvpn/easy-rsa/keys

cp dh2048.pem ca.crt server.crt server.key /etc/openvpn

se crean los certificado para los clientes, uno para cada cliente, ejemplo:

./build-key mikrotik

mikrotik es el nombre del certificado cliente que me recuerda que lo voy a utilizar en el router Mikrotik. Otros dos ejemplos:

./build-key windows10

para Windows 10;

./build-key linumint

para Linux Mint. Terminamos con:

cp /etc/openvpn/easy-rsa/openssl-1.0.0.cnf /etc/openvpn/easy-rsa/openssl.cnf

Ahora configuramos OpenVPN, lado servidor:

nano /etc/openvpn/server.conf

mi configuración:

local 1.2.3.4

port 1194

proto tcp

dev tun

ca ca.crt

cert server.crt

key server.key

dh dh2048.pem

server 10.8.50.0 255.255.255.0

ifconfig-pool-persist ipp.txt

push "redirect-gateway def1 bypass-dhcp"

push "dhcp-option DNS 208.67.222.222"

push "dhcp-option DNS 208.67.220.220"

keepalive 10 120

cipher AES-256-CBC

max-clients 10

persist-key

persist-tun

status openvpn-status.log

log openvpn.log

log-append openvpn.log

verb 3

Antes de guardar los cambios, modificar 1.2.3.4 con la IP publica de su servidor. Por ultimo configuramos IPtables:

systemctl stop firewalld

systemctl disables firewalld

yum install iptables-services -y

systemctl enable iptables

mv /etc/sysconfig/iptables /etc/sysconfig/iptables.old

empezamos con la configuración:

iptables -A INPUT -i lo -j ACCEPT

iptables -A INPUT ! -i lo -d 127.0.0.0/8 -j REJECT

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -A OUTPUT -j ACCEPT

iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT

iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 1194 -j ACCEPT

iptables -A INPUT -p udp -m udp --dport 1194 -j ACCEPT

iptables -A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT

iptables -A INPUT -i tun0 -j ACCEPT

iptables -A INPUT -j REJECT --reject-with icmp-port-unreachable

iptables -A FORWARD -i tun0 -j ACCEPT

iptables -A FORWARD -s 10.8.50.0/24 -i tun0 -o eth0 -j ACCEPT

iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT

iptables -A FORWARD -j REJECT --reject-with icmp-port-unreachable

iptables -A OUTPUT -o eth0 -p udp -m state --state ESTABLISHED -m udp --sport 1194 -j ACCEPT

iptables -A OUTPUT -o eth0 -p tcp -m state --state ESTABLISHED -m tcp --sport 1194 -j ACCEPT

iptables -A OUTPUT -o tun0 -j ACCEPT

iptables -A OUTPUT -j ACCEPT

iptables -t nat -A POSTROUTING -s 10.8.50.0/24 -o eth0 -j MASQUERADE

Terminadas las reglas guardamos la configuración:

service iptables save

iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ]

se inicia:

systemctl start iptables

Para que los paquetes sean correctamente procesados:

nano /etc/sysctl.conf

al inicio del archivo añadimos la siguiente linea:

net.ipv4.ip_forward = 1

activamos openvpn para que se inicie con el sistema:

systemctl enable openvpn@.service

Desactivamos Selinux:

nano /etc/selinux/config

SELINUX=disabled

reiniciamos el sistema:

reboot

Volvemos a acceder vía SSH. Si todo está bien:

ifconfig

Ahora tenemos que descargar del servidor remoto los siguientes archivos:

ca.crt mikrotik.crt y mikrotik.key

Pasamos a la configuración de Mikrotik. Accedemos vía Winbox y entramos en el menú Files donde copiamos los tres archivos:

pasamos al menú System → Certificates donde con el botón IMPORT, importamos los tres certificados:

 

pasamos al menú Interfaces y seleccionamos:

en la nueva ventana, pestaña General:

pestaña Dial Out:

Botón OK. Si todo sale bien:

la R indica que hay conexión. Para terminar se accede al menú IP → Firewall pestaña NAT + para crear una regla para la nueva red:

pestaña Action:

Luego Botón OK. El resultado en mi caso:

Ahora, ¿Cómo hice para saber que IP de Amazon Prime Añadir al menú IP → Routes? He accedido al menú IP → Firewall, pestaña Connections y he aplicado como filtro la IP local de mi celular donde tengo instalada la aplicación de Prime Video:

luego he cerrado todas las aplicaciones abiertas en el celular y he abierto la aplicación de Amazon Prime Video, en la pestaña de Connections han empezado a aparecer una nuevas IP, he sacado un pantallazo de las IP y he buscado desde la terminal Linux, con whois, si esas IP eran de Amazon. En la consulta de Whois, el resultado arroja todos los rangos asociados a esa IP. He repetido esta operación 3 veces y luego con todos los resultados, menú IP → Routes +, he creado reglas parecidas a esta:

Conclusión, si van a ver Prime Video en un celular o una tableta, con algo de suerte funciona con las VPN comerciales pero si quieren ver Primer Video en los televisores, Apple TV o dispositivos parecidos eso no sirve y necesitan la configuración que acabo de explicar.

Si notan errores o tienen una forma mejor de realizar la configuración, me comentan.

Vota el Articulo: 

Sin votos (todavía)
Evalúa la calidad del articulo
Suscribirse a Comentarios de "Amazon Prime Video con tu VPN personal" Suscribirse a VozToVoice - Todos los comentarios