Cómo configurar Shadowsocks en VPS para eludir censura
Guía paso a paso para instalar y configurar Shadowsocks en VPS Hiddence para eludir censura de internet de forma segura y rápida.

Shadowsocks es una de las herramientas más efectivas para eludir censura de internet, especialmente popular en países con restricciones estrictas. A diferencia de las VPN tradicionales, Shadowsocks usa un proxy SOCKS5 con cifrado, haciendo que su tráfico sea prácticamente indistinguible del HTTPS regular. Esta guía le mostrará cómo desplegar su propio servidor Shadowsocks en un VPS Hiddence en 10 minutos.
¿Por qué Shadowsocks?
- Sigilo: El tráfico está enmascarado como conexiones HTTPS regulares, difícil de detectar por sistemas DPI
- Velocidad: Menos sobrecarga comparado con VPN, velocidad casi nativa
- Flexibilidad: Funciona a nivel de aplicación, puede configurarse para programas específicos
- Multiplataforma: Clientes para Windows, macOS, Linux, Android, iOS
- Código abierto: Transparencia y seguridad completas del código
Requisitos
- VPS Hiddence (mínimo 1 GB RAM, cualquier SO Linux)
- Ubuntu 22.04 o 24.04 (recomendado)
- Acceso root al servidor
- Cliente SSH para conexión
- 5-10 minutos de su tiempo
Instalando Shadowsocks-Rust (Recomendado)
Usaremos la implementación shadowsocks-rust — la versión más rápida y moderna, escrita en Rust.
Paso 1: Preparar el sistema
# Conectar al servidor vía SSH
ssh root@su-ip-servidor
# Actualizar sistema
sudo apt update && sudo apt upgrade -y
# Instalar paquetes necesarios
sudo apt install curl wget -yPaso 2: Instalar Shadowsocks-Rust
# Descargar última versión
wget $(curl -s https://api.github.com/repos/shadowsocks/shadowsocks-rust/releases/latest | grep 'browser_download_url.*x86_64-unknown-linux-gnu.tar.xz' | cut -d '"' -f 4)
# Extraer archivo
tar -xvf shadowsocks-*.tar.xz
# Mover binarios a directorio del sistema
sudo mv ssserver /usr/local/bin/
sudo mv sslocal /usr/local/bin/
sudo chmod +x /usr/local/bin/ss*
# Verificar instalación
ssserver --versionPaso 3: Configuración
# Crear directorio para configuración
sudo mkdir -p /etc/shadowsocks
# Crear archivo de configuración
sudo nano /etc/shadowsocks/config.json
# Insertar la siguiente configuración:
{
"server": "0.0.0.0",
"server_port": 8388,
"password": "SU_CONTRASEÑA_FUERTE_AQUÍ",
"timeout": 300,
"method": "chacha20-ietf-poly1305",
"fast_open": true,
"mode": "tcp_and_udp",
"nameserver": "8.8.8.8"
}
# Reemplace SU_CONTRASEÑA_FUERTE_AQUÍ con una contraseña fuerte
# Puede generar: openssl rand -base64 32
# Métodos de cifrado recomendados:
# chacha20-ietf-poly1305 (Recomendado) — equilibrio de velocidad y seguridad
# aes-256-gcm — estándar AES
# aes-128-gcm — más rápido, para móvil
# 2022-blake3-aes-256-gcm — más nuevo SS2022Paso 4: Inicio automático
Creemos un servicio systemd para inicio automático de Shadowsocks al arrancar el sistema.
# Crear archivo de servicio
sudo nano /etc/systemd/system/shadowsocks.service
# Insertar:
[Unit]
Description=Servidor Shadowsocks-Rust
After=network.target
[Service]
Type=simple
User=root
ExecStart=/usr/local/bin/ssserver -c /etc/shadowsocks/config.json
Restart=on-failure
RestartSec=5s
[Install]
WantedBy=multi-user.target
# Guardar y activar servicio
sudo systemctl daemon-reload
sudo systemctl enable shadowsocks
sudo systemctl start shadowsocks
# Comprobar estado
sudo systemctl status shadowsocksPaso 5: Firewall
# Si usa UFW
sudo ufw allow 8388/tcp
sudo ufw allow 8388/udp
sudo ufw reload
# Si usa firewalld
sudo firewall-cmd --permanent --add-port=8388/tcp
sudo firewall-cmd --permanent --add-port=8388/udp
sudo firewall-cmd --reloadPaso 6: Optimización
Configuremos el sistema para máxima velocidad de conexión.
# Optimización de pila de red
sudo nano /etc/sysctl.conf
# Añadir al final del archivo:
# Control de congestión BBR
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
# Aumentar búferes
net.core.rmem_max=134217728
net.core.wmem_max=134217728
net.ipv4.tcp_rmem=4096 87380 67108864
net.ipv4.tcp_wmem=4096 65536 67108864
net.ipv4.tcp_mtu_probing=1
# Fast Open
net.ipv4.tcp_fastopen=3
# Aplicar cambios
sudo sysctl -pPaso 7: Clientes
Después de configurar el servidor, necesita conectar dispositivos cliente. Instrucciones detalladas para cada plataforma a continuación.
Cliente Windows
1. Descarga e instalación
Vaya a la página de GitHub shadowsocks/shadowsocks-windows y descargue la última versión (archivo Shadowsocks-x.x.x.zip). Extraiga el archivo a cualquier carpeta y ejecute Shadowsocks.exe.
2. Añadir servidor
Haga clic derecho en el icono de Shadowsocks en la bandeja del sistema (cerca del reloj) y seleccione Servidores > Editar servidores. Complete los detalles:
3. Habilitar proxy
Clic derecho en icono de bandeja > Proxy del sistema > Global (para proxy de todo el tráfico) o PAC (modo automático para sitios bloqueados). Habilite 'Habilitar proxy del sistema'. ¡Listo! Todo su tráfico ahora pasa por Shadowsocks.
Cliente Android
1. Instalación de aplicación
Instale 'Shadowsocks' de Max Lv desde Google Play Store o descargue APK desde GitHub (shadowsocks/shadowsocks-android). Abra la aplicación después de la instalación.
2. Añadir perfil
Toque el botón '+' (más) en la esquina inferior derecha. Seleccione 'Configuración manual'. Complete los campos:
3. Conexión
Toque el icono de avión de papel en la parte inferior de la pantalla para conectar. En la primera conexión, Android solicitará permiso para crear una conexión VPN — toque 'Aceptar'. Después de conectar, aparecerá un icono de llave en la barra de estado.
Cliente iOS
1. Instalación de aplicación
Abra App Store y busque 'Shadowrocket' (de pago, ~$3) o 'Potatso Lite' (gratis). Shadowrocket es más funcional y estable. Instale la aplicación.
2. Configuración del servidor
Para Shadowrocket: abra la aplicación, toque '+' en la esquina superior derecha. Seleccione Tipo: Shadowsocks. Complete:
3. Activar conexión
Active el interruptor junto al nombre del servidor a ON. iOS solicitará permiso para añadir configuración VPN — confirme la acción (puede requerir Face ID / Touch ID). El estado 'Conectado' significa conexión exitosa.
Cliente macOS
1. Instalar ShadowsocksX-NG
Descargue ShadowsocksX-NG desde GitHub (shadowsocks/ShadowsocksX-NG/releases). Abra el archivo DMG y arrastre la aplicación a la carpeta Aplicaciones. Inicie ShadowsocksX-NG.
2. Añadir servidor
Haga clic en el icono de avión en la barra de menú (parte superior derecha). Seleccione Servidores > Preferencias del servidor. Haga clic en '+' para añadir un nuevo servidor:
3. Habilitar proxy
Haga clic en el icono de la barra de menú > Activar Shadowsocks. Seleccione modo proxy: 'Modo proxy automático' (recomendado, usa PAC para enrutamiento inteligente) o 'Modo global' (todo el tráfico a través del proxy). ¡Listo!
Bonus: Configuración multi-usuario
Si desea compartir el servidor con amigos o familia, use configuración multi-puerto.
# Editar configuración
sudo nano /etc/shadowsocks/config.json
# Use formato con puertos para diferentes usuarios:
{
"servers": [
{
"server": "0.0.0.0",
"server_port": 8388,
"password": "contraseña_usuario1",
"method": "chacha20-ietf-poly1305"
},
{
"server": "0.0.0.0",
"server_port": 8389,
"password": "contraseña_usuario2",
"method": "chacha20-ietf-poly1305"
},
{
"server": "0.0.0.0",
"server_port": 8390,
"password": "contraseña_usuario3",
"method": "chacha20-ietf-poly1305"
}
],
"timeout": 300,
"mode": "tcp_and_udp"
}
# No olvide abrir nuevos puertos en firewall
sudo ufw allow 8389:8390/tcp
sudo ufw allow 8389:8390/udp
# Reiniciar servicio
sudo systemctl restart shadowsocksAvanzado: Usar plugins de ofuscación
Para protección adicional contra DPI, use plugins que enmascaran el tráfico de Shadowsocks.
v2ray-plugin (Recomendado)
# Instalar v2ray-plugin
wget https://github.com/shadowsocks/v2ray-plugin/releases/download/v1.3.2/v2ray-plugin-linux-amd64-v1.3.2.tar.gz
tar -xvf v2ray-plugin-*.tar.gz
sudo mv v2ray-plugin_linux_amd64 /usr/local/bin/v2ray-plugin
sudo chmod +x /usr/local/bin/v2ray-plugin
# Actualizar configuración de Shadowsocks
{
"server": "0.0.0.0",
"server_port": 443,
"password": "su_contraseña",
"method": "chacha20-ietf-poly1305",
"plugin": "/usr/local/bin/v2ray-plugin",
"plugin_opts": "server;tls;host=su-dominio.com;cert=/ruta/a/cert.pem;key=/ruta/a/key.pem"
}
# En cliente añada:
# Plugin: v2ray-plugin
# Opciones de plugin: tls;host=su-dominio.comSolución de problemas
Problemas comunes y soluciones
- No puede conectar: Verifique firewall y asegúrese de que el puerto esté abierto
- Conexión lenta: Pruebe método de cifrado diferente (aes-128-gcm es más rápido)
- Desconexiones periódicas: Habilite TCP Fast Open y BBR
- Servidor se bloquea: Use plugin de ofuscación y puerto 443
- Verificar registros: sudo journalctl -u shadowsocks -f
Consejos de seguridad
- Use contraseña fuerte (mínimo 20 caracteres, aleatoria)
- Actualice regularmente Shadowsocks a la última versión
- No comparta detalles del servidor públicamente — solo con personas de confianza
- Cambie puerto por defecto (8388) a uno no estándar
- Use métodos de cifrado modernos (chacha20-ietf-poly1305 o más nuevos)
- Considere usar plugin de ofuscación en regiones con censura activa
- Monitoree uso de tráfico: sudo apt install vnstat && vnstat -l
- Configure actualizaciones automáticas del sistema