Instalar y configurar el servidor proxy Shadowsocks-libev en Ubuntu 24.04
Este artículo le enseñará cómo instalar y configurar Shadowsocks-libev en Ubuntu 24.04 y revisará los consejos de seguridad y optimización necesarios.

Instalar y configurar el servidor proxy Shadowsocks-libev en Ubuntu 24.04

En este artículo, aprenderá a instalar y configurar Shadowsocks-libev en Ubuntu 24.04. Esta guía incluye consejos de seguridad y optimización para que pueda configurar un proxy seguro y eficiente.
0 acciones
0
0
0
0

¿Cómo configurar un proxy de baja latencia, seguro y ligero en Ubuntu 24.04?

Esta guía paso a paso está escrita para administradores de servidores, desarrolladores, administradores de red y usuarios que necesitan un proxy liviano, de baja latencia y seguro. Calcetines de sombra-libev Es una implementación ligera y rápida del protocolo Shadowsocks, diseñada para evitar el filtrado y crear un túnel proxy seguro.

A continuación, se explica la instalación en Ubuntu 24.04, la configuración correcta (incluyendo AEAD), la configuración del firewall, la optimización de la red (BBR, TCP Fast Open) y consejos prácticos y de seguridad para el trading, los juegos y los servicios web. También se mencionan servicios que incluyen más de 85 ubicaciones globales, VPS específicos para trading y servidores anti-DDoS para facilitar la elección de una ubicación y un plan.

Requisitos previos y selección de ubicación

Prerrequisitos:

  • Un servidor Ubuntu 24.04 con acceso raíz O un usuario con sudo.
  • Abra el puerto (por ejemplo, 8388) y acceda al firewall.
  • Elija la ubicación correcta: para obtener el ping más bajo en el juego o el intercambio, elija una ubicación cercana al servidor de destino (por ejemplo, Frankfurt, Londres, Singapur, Tokio, Nueva York).
  • Si le preocupan los ataques DDoS, utilice servidores anti-DDoS o servicios CDN/BGP.

Instalación de Shadowsocks-libev en Ubuntu 24.04

El método rápido y estable que usa el paquete oficial apt es adecuado para la mayoría de los usuarios. Si necesita las últimas funciones o nuevos plugins, puede usar paquetes de GitHub o PPAs, pero en la mayoría de los casos, apt será suficiente.

Método rápido (del paquete oficial apt)

sudo apt update && sudo apt install -y shadowsocks-libev

Para confirmar la instalación:

ss-server --version

Crear un archivo de configuración básico

Archivo de configuración predeterminado: /etc/shadowsocks-libev/config.json

{
  "server":"0.0.0.0",
  "server_port":8388,
  "password":"VeryStrongPasswordHere!",
  "method":"chacha20-ietf-poly1305",
  "mode":"tcp_and_udp",
  "timeout":300,
  "fast_open":true
}

Puntos clave:

  • método: A partir de métodos de la AEAD como chacha20-ietf-poly1305 O aes-256-gcm Utilice estos métodos; son más seguros y efectivos.
  • modo: Cantidad “tcp_y_udp” Habilítelo si necesita reenvío UDP (para juegos o VoIP).
  • apertura rápida: Habilite sysctl solo si el kernel lo admite y está configurado adecuadamente.
sudo chown root:root /etc/shadowsocks-libev/config.json
sudo chmod 600 /etc/shadowsocks-libev/config.json

Iniciar y administrar servicios de systemd

Puede ejecutar el servicio como predeterminado o con un nombre de instancia para tener múltiples configuraciones/puertos.

A) Usando el archivo predeterminado

sudo systemctl enable --now shadowsocks-libev
sudo systemctl status shadowsocks-libev

b) Uso de una instancia (para múltiples configuraciones/puertos)

Si guarda el archivo como /etc/shadowsocks-libev/config-server1.json Ahorrar:

sudo systemctl enable --now shadowsocks-libev@config-server1
sudo systemctl status shadowsocks-libev@config-server1

Ver registro:

sudo journalctl -u shadowsocks-libev -f
sudo journalctl -u shadowsocks-libev@config-server1 -f

Configuración de reglas de red y firewall

UFW (simple)

sudo ufw allow 22/tcp                # SSH
sudo ufw allow 8388/tcp
sudo ufw allow 8388/udp
sudo ufw enable
sudo ufw status

iptables (ejemplo de limitación de conexiones por seguridad)

sudo iptables -I INPUT -p tcp --dport 8388 -m conntrack --ctstate NEW -j ACCEPT
sudo iptables -I INPUT -p udp --dport 8388 -j ACCEPT

# rate limiting to mitigate brute-force
sudo iptables -A INPUT -p tcp --dport 8388 -m recent --name ss --set
sudo iptables -A INPUT -p tcp --dport 8388 -m recent --name ss --update --seconds 10 --hitcount 20 -j DROP

Para guardar reglas:

sudo apt install -y iptables-persistent
sudo netfilter-persistent save

Optimización de red y rendimiento (BBR, TCP Fast Open, sysctl)

Para reducir la latencia y aumentar el rendimiento, se recomienda habilitar BBR y algunas configuraciones de sysctl.

Habilitación de BBR y configuraciones recomendadas

sudo tee /etc/sysctl.d/99-sysctl.conf <<EOF
net.core.default_qdisc = fq
net.ipv4.tcp_congestion_control = bbr
net.ipv4.tcp_fastopen = 3
net.ipv4.tcp_syncookies = 1
net.core.somaxconn = 4096
net.core.netdev_max_backlog = 5000
net.ipv4.ip_forward = 1
EOF
sudo sysctl --system

Para confirmar:

sysctl net.ipv4.tcp_congestion_control
ss -tuna | grep bbr

Pruebas de clientes y conectividad

Prueba simple con curl (después de ejecutar ss-local en el puerto 1080)

Del lado del cliente:

ss-local -s SERVER_IP -p 8388 -l 1080 -k "VeryStrongPasswordHere!" -m chacha20-ietf-poly1305 &
curl --socks5-hostname 127.0.0.1:1080 https://api.ipify.org

Si la IP devuelta es la IP del servidor, la conexión es exitosa.

Clientes comunes

  • Ventanas: Shadowsocks-Ventanas O V2RayN
  • macOS: Calcetines de sombra X-NG
  • Androide: Calcetines de sombra (F-Droid o PlayStore)
  • Linux: ss-local/ss-redir Del paquete calcetines de sombra-libev O GUI como Outline

Reenvío UDP (Para juegos o VoIP) Requiere soporte UDP en ambos lados y configuración “modo”:”tcp_y_udp” Es.

Seguridad práctica y gestión de usuarios

  • Contraseña segura: Utilice contraseñas únicas y seguras y elija métodos AEAD.
  • Monitoreo de registros: De journalctl O utilice herramientas de monitorización.
  • Restricción de acceso IP: Permitir sólo IP específicas en el firewall (por ejemplo, la IP del bróker para el trading de VPS).

Usando fail2ban

cat > /etc/fail2ban/jail.d/shadowsocks.conf <<EOF
[shadowsocks]
enabled = true
filter = shadowsocks
port = 8388
logpath = /var/log/syslog
maxretry = 5
bantime = 3600
EOF

Escenarios avanzados: múltiples puertos, proxy transparente y complementos

Múltiples servicios y puertos

Utilice varios archivos de configuración e instancias de systemd para proporcionar múltiples cuentas/puertos:

/etc/shadowsocks-libev/config-user1.json
/etc/shadowsocks-libev/config-user2.json

sudo systemctl enable --now shadowsocks-libev@config-user1
sudo systemctl enable --now shadowsocks-libev@config-user2

proxy transparente con ss-redir

Ejemplo para redirigir el tráfico a servidores internos:

ss-redir -c /etc/shadowsocks-libev/redir-config.json &

sudo iptables -t nat -N SHADOWSOCKS
sudo iptables -t nat -A PREROUTING -p tcp -j SHADOWSOCKS
sudo iptables -t nat -A SHADOWSOCKS -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 12345

(El puerto 12345 es el puerto ss-redir)

Uso de complementos (v2ray-plugin u obfs)

Para omitir DPI y detectar paquetes de complementos como complemento v2ray Uso. Opciones de ejemplo en la configuración:

{
  "plugin":"v2ray-plugin",
  "plugin_opts":"server;tls;host=example.com;path=/ws"
}

Mantenimiento, monitorización y escalabilidad

Usando herramientas de monitoreo como Prometheus + Grafana o más simples datos de red Úselo para monitoreo.

Para comprobar el consumo: arriba, htop, iftop, descargar.

Si la carga aumenta, utilice un servidor en la nube con escalamiento automático o balanceador de carga, o elija servidores con reenvío de paquetes sólido y planes de red BGP.

Consejos finales relacionados con los servicios y la selección de ubicación

Tener más de 85 ubicaciones globales permite ubicar el servidor más cerca del destino comercial, el servidor de juego o los usuarios finales para lograr el ping y la inestabilidad más bajos.

Para operar con requisitos de ping bajos, ubicaciones como Fráncfort, Londres, Nueva York y Singapur son ideales. También disponemos de servicios que incluyen VPS dedicados para operar con ping optimizado y servidores anti-DDoS.

Para transferencias de datos de gran tamaño (por ejemplo, en procesamiento o renderizado de IA), necesitará un gran ancho de banda; los servicios de GPU se pueden combinar con una solución de proxy, pero tenga en cuenta el ancho de banda.

Preguntas frecuentes

También te puede gustar
La diferencia entre un proxy directo y un proxy inverso

La diferencia entre un proxy directo y un proxy inverso

En este artículo, exploraremos las diferencias clave entre los proxies directos e inversos. Comprender estos conceptos le ayudará a tomar mejores decisiones para su infraestructura de red. El artículo incluye definiciones, aplicaciones y ejemplos prácticos de configuración.
Habilitación y deshabilitación de Cloudflare Universal SSL: una guía práctica y segura para administradores de servidores y desarrolladores

Habilitación y deshabilitación de Cloudflare Universal SSL: una guía práctica y segura para administradores de servidores y desarrolladores

En este artículo, explicaremos detalladamente y con detalle cómo habilitar y deshabilitar Universal SSL en Cloudflare. Esta guía te ayudará a aprovechar al máximo este servicio para proteger tu sitio web. Aprende a habilitarlo y deshabilitarlo, y familiarízate con la configuración de seguridad.