Configuracion en Linux
Instale y configure YeePilot en Linux con aislamiento completo de sandbox por namespaces
Vision general
Linux es la plataforma principal de YeePilot y soporta el conjunto completo de funcionalidades, incluyendo el sandboxing por namespaces del kernel para aislamiento de comandos. Esta guia cubre la instalacion, almacenamiento de credenciales, configuracion del sandbox y notas especificas por distribucion.
Distribuciones compatibles
YeePilot funciona en la mayoria de las distribuciones Linux modernas:
| Distribucion | Version minima |
|---|---|
| Ubuntu | 20.04 LTS (Focal) |
| Debian | 11 (Bullseye) |
| CentOS / RHEL | 8 |
| Fedora | 36 |
| Arch Linux | Rolling release |
| Alpine Linux | 3.16+ |
Tanto las arquitecturas amd64 (x86_64) como arm64 (aarch64) son compatibles con binarios nativos.
Instalacion
Instalacion rapida (recomendada)
El script de instalacion detecta su arquitectura e instala la ultima version:
curl -fsSL https://yee.to/install.sh | bashEsto hara lo siguiente:
- Detectar su SO y arquitectura (amd64 o arm64).
- Descargar el ultimo binario de YeePilot.
- Verificar el checksum de la descarga.
- Instalar el binario en
/usr/local/bin/yeepilot. - Establecer los permisos correctos del archivo.
Despues de la instalacion, verifique que funciona:
yeepilot versionInstalacion manual
Si prefiere instalar manualmente:
-
Descargue el archivo correcto desde la pagina de versiones (opens in new tab):
yeepilot-linux-amd64.tar.gzpara sistemas x86_64yeepilot-linux-arm64.tar.gzpara sistemas ARM64
-
Extraiga e instale:
tar xzf yeepilot-linux-amd64.tar.gz
sudo mv yeepilot /usr/local/bin/
sudo chmod +x /usr/local/bin/yeepilot- Verifique la instalacion:
yeepilot versionConfiguracion inicial
Ejecute la configuracion interactiva para configurar su proveedor de IA y preferencias:
yeepilot setupEsto crea su archivo de configuracion en ~/.yeepilot/config.yaml y le solicita configurar su proveedor de IA y clave API.
Almacenamiento de credenciales
YeePilot almacena claves API y tokens de autenticacion en el servicio de secretos de su sistema para mayor seguridad.
GNOME Keyring (recomendado)
La mayoria de las distribuciones Linux de escritorio incluyen GNOME Keyring. YeePilot usa el comando secret-tool para interactuar con el.
Instale secret-tool si falta:
# Ubuntu / Debian
sudo apt install libsecret-tools
# Fedora / CentOS
sudo dnf install libsecret
# Arch Linux
sudo pacman -S libsecretVerifique que esta funcionando:
secret-tool --versionServidores sin interfaz grafica
En servidores sin interfaz grafica sin entorno de escritorio o demonio de llavero, YeePilot recurre automaticamente a un archivo JSON cifrado en ~/.yeepilot/credentials.json. Este archivo se crea con permisos restringidos (0600).
Si desea usar GNOME Keyring en un servidor sin interfaz grafica, puede iniciar el demonio del llavero manualmente:
eval $(dbus-launch --sh-syntax)
eval $(gnome-keyring-daemon --start --components=secrets)Funcionalidades del sandbox
Linux proporciona el entorno de sandbox mas completo a traves de namespaces del kernel. Cuando los namespaces del sandbox estan habilitados, cada comando que YeePilot ejecuta se ejecuta en un entorno aislado.
Aislamiento por namespaces
YeePilot usa cuatro tipos de namespaces de Linux:
| Namespace | Proposito |
|---|---|
| User | Ejecuta comandos como un usuario sin privilegios dentro del sandbox |
| PID | Aisla la visibilidad de procesos -- los comandos no pueden ver otros procesos |
| Mount | Restringe el acceso al sistema de archivos solo a rutas permitidas |
| Network | Opcionalmente aisla el acceso a red por completo |
Habilitar namespaces
Los namespaces estan habilitados por defecto en Linux. Verifique su configuracion:
# ~/.yeepilot/config.yaml
sandbox:
enabled: true
use_namespaces: trueRequisitos del kernel
Los user namespaces deben estar habilitados en su kernel. La mayoria de las distribuciones modernas los habilitan por defecto. Verifique con:
cat /proc/sys/kernel/unprivileged_userns_cloneSi la salida es 0, habilitelo:
# Temporal (hasta reiniciar)
sudo sysctl kernel.unprivileged_userns_clone=1
# Permanente
echo 'kernel.unprivileged_userns_clone=1' | sudo tee /etc/sysctl.d/99-yeepilot.conf
sudo sysctl --systemNota: Algunos kernels reforzados (por ejemplo, ciertas configuraciones de CentOS/RHEL) deshabilitan los user namespaces por defecto. Si no puede habilitarlos, establezca sandbox.use_namespaces: false para recurrir a limites de recursos a nivel de proceso.
Registro de auditoria
El registro de auditoria de YeePilot proporciona un registro resistente a manipulaciones de todos los comandos ejecutados. Cada entrada del registro esta firmada con HMAC-SHA256 y enlazada en una cadena de hash, lo que permite detectar cualquier modificacion al historial del registro.
El registro de auditoria se almacena en ~/.yeepilot/audit.log por defecto. Para cambiar la ubicacion:
security:
audit_log_path: "/var/log/yeepilot/audit.log"Asegurese de que el directorio exista y el usuario tenga permisos de escritura:
sudo mkdir -p /var/log/yeepilot
sudo chown $(whoami) /var/log/yeepilotNotas especificas por distribucion
Ubuntu / Debian
# Instalar dependencias
sudo apt update
sudo apt install libsecret-tools curl
# Instalar YeePilot
curl -fsSL https://yee.to/install.sh | bashFedora / CentOS / RHEL
# Instalar dependencias
sudo dnf install libsecret curl
# Instalar YeePilot
curl -fsSL https://yee.to/install.sh | bashEn CentOS 8 o RHEL 8, puede necesitar habilitar user namespaces:
sudo sysctl kernel.unprivileged_userns_clone=1Arch Linux
# Instalar dependencias
sudo pacman -S libsecret curl
# Instalar YeePilot
curl -fsSL https://yee.to/install.sh | bashAlpine Linux
Alpine usa musl libc. YeePilot proporciona binarios enlazados estaticamente que funcionan en Alpine sin dependencias adicionales.
# Instalar curl si es necesario
apk add curl
# Instalar YeePilot
curl -fsSL https://yee.to/install.sh | bashNota: GNOME Keyring tipicamente no esta disponible en Alpine. YeePilot usara el archivo JSON como alternativa para el almacenamiento de credenciales.
Actualizacion
Actualice a la ultima version:
yeepilot updateO reinstale a traves del script de instalacion:
curl -fsSL https://yee.to/install.sh | bashDesinstalacion
Elimine YeePilot y todos sus datos:
yeepilot uninstall --allO elimine solo el binario manteniendo su configuracion:
yeepilot uninstall --binary-onlyPara una eliminacion manual:
sudo rm /usr/local/bin/yeepilot
rm -rf ~/.yeepilot