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