101 lines
2.1 KiB
Markdown
101 lines
2.1 KiB
Markdown
Sí, **puedes usar una Raspberry Pi como cliente WireGuard y compartir Internet a través de ella**, como si fuera un router. Esto es útil, por ejemplo, si quieres que dispositivos conectados a la Raspberry (por cable o Wi-Fi) usen la conexión VPN.
|
|
|
|
### ✅ Requisitos
|
|
|
|
- Raspberry Pi (con Raspberry Pi OS o similar).
|
|
|
|
- Conexión a Internet.
|
|
|
|
- Configuración de cliente WireGuard funcional (`wg0.conf`).
|
|
|
|
- IP forwarding habilitado.
|
|
|
|
- `iptables` o `nftables` para NAT.
|
|
|
|
|
|
---
|
|
|
|
### 🔧 Pasos
|
|
|
|
#### 1. **Instala WireGuard**
|
|
|
|
```bash
|
|
sudo apt update
|
|
sudo apt install wireguard
|
|
```
|
|
|
|
#### 2. **Configura el cliente WireGuard**
|
|
|
|
Crea el archivo `/etc/wireguard/wg0.conf` con los datos del servidor:
|
|
|
|
```ini
|
|
[Interface]
|
|
PrivateKey = TU_CLAVE_PRIVADA
|
|
Address = 10.10.10.2/32
|
|
DNS = 1.1.1.1
|
|
|
|
[Peer]
|
|
PublicKey = CLAVE_PUBLICA_DEL_SERVIDOR
|
|
Endpoint = IP_DEL_SERVIDOR:51820
|
|
AllowedIPs = 0.0.0.0/0
|
|
PersistentKeepalive = 25
|
|
```
|
|
|
|
Activa el túnel:
|
|
|
|
```bash
|
|
sudo wg-quick up wg0
|
|
```
|
|
|
|
#### 3. **Habilita IP forwarding**
|
|
|
|
Edita `/etc/sysctl.conf` y descomenta o añade:
|
|
|
|
```bash
|
|
net.ipv4.ip_forward=1
|
|
```
|
|
|
|
Aplica el cambio:
|
|
|
|
```bash
|
|
sudo sysctl -p
|
|
```
|
|
|
|
#### 4. **Configura NAT para compartir Internet**
|
|
|
|
Asumiendo que los clientes están en `eth0` o `wlan0` y que la VPN va por `wg0`:
|
|
|
|
```bash
|
|
# Reglas NAT
|
|
sudo iptables -t nat -A POSTROUTING -o wg0 -j MASQUERADE
|
|
|
|
# Permitir reenvío entre interfaces
|
|
sudo iptables -A FORWARD -i wg0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
|
|
sudo iptables -A FORWARD -i wlan0 -o wg0 -j ACCEPT
|
|
```
|
|
|
|
Haz persistente con `iptables-persistent`:
|
|
|
|
```bash
|
|
sudo apt install iptables-persistent
|
|
sudo netfilter-persistent save
|
|
```
|
|
|
|
#### 5. **Crea un hotspot o red para compartir**
|
|
|
|
Puedes usar `hostapd` para crear un punto de acceso Wi-Fi, o compartir por Ethernet usando una IP estática y DHCP (`dnsmasq` o similar).
|
|
|
|
---
|
|
|
|
### 📶 Ejemplo de uso
|
|
|
|
- Raspberry conectada a Internet por Wi-Fi.
|
|
|
|
- Cliente se conecta por Ethernet a la Raspberry.
|
|
|
|
- Todo el tráfico del cliente pasa por la VPN (WireGuard).
|
|
|
|
|
|
---
|
|
|
|
Si me das detalles sobre cómo quieres compartir (Wi-Fi o Ethernet), te puedo ayudar a configurar eso también. |