Me gustaría utilizar un software para controlar qué programa puede conectarse a Internet. Sé que este comportamiento está asociado con la palabra "firewall", pero algunos usuarios de Linux están muy molestos si alguien exige un Firewall personal. No quiero molestarte exigiendo tal programa.
No quiero "asegurar puertos" u otras cosas que un Firewall personal promete en Windows. Lo investigué iptables
pero no cumple con mis requisitos.
Vi una excelente respuesta aquí ( "Cómo bloquear el acceso a Internet para las aplicaciones de vino" ) pero es muy incómodo configurarlo.
¿Existe un software que pregunte por cada programa si puede acceder a Internet?
Respuestas:
Hay un script de Perl en el foro alemán de Ubuntu ( traducido por Google al inglés ) que parece hacer eso. Nunca lo intenté y no le eché un vistazo más de cerca al guión, pero tal vez funcione para ti. La descripción está solo en alemán, por lo que es posible que necesite un servicio de traducción (como Google Translate; consulte más arriba).
fuente
En caso de que todavía esté buscando este tipo de aplicación, actualmente estoy desarrollando exactamente esa aplicación: http://douaneapp.com/ https://gitlab.com/douaneapp/Douane
Mi aplicación bloquea cualquier aplicación desconocida (se bloquean las nuevas versiones de una aplicación autorizada) y le pregunta si permite o deniega su tráfico.
Echa un vistazo a la página web ;-)
fuente
Me encontré una solución conveniente que resuelve el problema. Usted crea un grupo que nunca puede usar Internet e inicia el programa como miembro de este grupo.
Crea un grupo
no-internet
. No te unas a este grupoAgregue una regla a iptables que evite que todos los procesos que pertenecen al grupo
no-internet
usen la red (useip6tables
también para evitar el tráfico IPv6)sudo -g no-internet YOURCOMMAND
lugar deYOURCOMMAND
.Puede escribir fácilmente un script de envoltura que use sudo para usted. Puede deshacerse de la solicitud de contraseña agregando
o algo similar con
sudo visudo
Use
iptables-save
yiptables-restore
para mantener las reglas del firewall.fuente
sudo -g no-internet firefox
conecta más rápido que el predeterminado. No funcionaYa hay un firewall en Ubuntu
ufw
, pero está deshabilitado de manera predeterminada. Puede habilitarlo y usarlo mediante la línea de comando o su interfaz, gufw , que se puede instalar directamente desde el Centro de software de Ubuntu.Si necesita bloquear el acceso a Internet a una aplicación específica, puede probar LeopardFlower , que todavía está en versión beta y no está disponible en el Centro de software de Ubuntu:
fuente
La ejecución de un programa con otro usuario utilizará los archivos de configuración para ese usuario y no para el suyo.
Aquí hay una solución que no requiere modificar las reglas del firewall, y se ejecuta bajo el mismo usuario (vía
sudo
) con un entorno modificado, donde está su usuariomy_user
y la aplicación que desea ejecutar esmy_app
:Para más detalles ver
man unshare
y esta respuesta .Cortafuegos de Linux GUI
Si está buscando un cortafuegos GUI, he tenido buenos resultados con OpenSnitch : todavía no está en repositorios de ubuntu y no lo llamaría nivel de producción, pero seguir los pasos de compilación de la página de github funcionó para mí.
fuente
@psusi: Realmente deseo que la gente no venda información mala y no útil. IPTables le permite a uno hacer esto, por lo que difícilmente lo consideraría "insensato". Simplemente decir "NO" sin entender un caso de uso es algo de mente estrecha. http://www.debian-administration.org/article/120/Application_level_firewalling
EDITAR bodhi.zazen
NOTA: ESTA OPCIÓN SE RETIRÓ DE IPTABLES EN 2005, 8 AÑOS ANTES DE ESTA PUBLICACIÓN DE LA RESPUESTA
VER - http://www.spinics.net/lists/netfilter/msg49716.html
fuente
iptables
para implementar restricciones por aplicación. Recomiendo incluir la información importante en su respuesta (y aún proporcionar el enlace, como referencia).Otra opción es firejail . Ejecuta la aplicación dentro de sandbox donde controlas si la aplicación puede ver la red:
Este comando iniciará el navegador Firefox sin acceso a internet. Tenga en cuenta que la distribución de firejail en el repositorio de Ubuntu está desactualizada ; mejor descargue su última versión LTS de la página de inicio de firejail.
fuente
He encontrado que la solución publicada aquí es buena. Implica crear un grupo de usuarios para el que se permite el acceso a Internet y configurar reglas de firewall para permitir el acceso solo para este grupo. La única forma de que una aplicación acceda a Internet es si la ejecuta un miembro de este grupo. Puede ejecutar programas en este grupo abriendo un shell con
sudo -g internet -s
.Para recapitular lo que hay en la publicación que he vinculado anteriormente:
Cree el grupo "internet" escribiendo lo siguiente en un shell:
sudo groupadd internet
Asegúrese de que el usuario que ejecutará el script a continuación se agregue al
sudo
grupo/etc/group
. Si termina modificando este archivo, deberá cerrar sesión y volver a iniciarla antes de que el script que se encuentra a continuación funcione.Cree un script que contenga lo siguiente y ejecútelo:
Al ejecutar el script anterior, tendrá un shell en el que puede ejecutar aplicaciones con acceso a Internet.
Tenga en cuenta que este script no hace nada para guardar y restaurar sus reglas de firewall. Es posible que desee modificar el script para usar los comandos
iptables-save
yiptables-restore
shell.fuente
Para bien o para mal, Linux usa un enfoque diferente. No hay una interfaz gráfica simple para ofrecer esta funcionalidad. Hay muchas discusiones sobre este tema en Internet y puede encontrar discusiones interesantes si busca en Google. Si bien el debate es interesante, hasta la fecha no ha habido un grupo dedicado de programadores que quieran escribir y mantener esta funcionalidad.
Las herramientas que ofrecen esta funcionalidad en Linux son Apparmor, Selinux y Tomoyo.
Ninguna de estas herramientas es demasiado fácil de aprender y todas tienen ventajas y desventajas. Personalmente, prefiero SELinux, aunque SELinux tiene una curva de aprendizaje más pronunciada.
Ver:
http://www.linuxbsdos.com/2011/12/06/3-application-level-firewalls-for-linux-distributions/
Había (es) una aplicación a la que ya se ha hecho referencia, leopardflower. No estoy seguro del estado / mantenimiento.
fuente
Estaba en iptables hasta la versión del kernel 2.6.24 Si está ejecutando una máquina 2.x - 2.6.24 y su kernel lo ha cumplido, puede hacerlo. por alguna razón lo sacaron, así que no, no es Microsoft. http://cateee.net/lkddb/web-lkddb/IP_NF_MATCH_OWNER.html
fuente
Prueba la flor de leopardo . Tiene una GUI y restricciones por aplicación.
fuente
No, no es posible Tampoco forma parte de la definición tradicional de firewall. Es algo que a Microsoft se le ocurrió hace poco en un intento de corregir sus problemas de seguridad del sistema operativo fundamentalmente dañados. Se considera imprudente e inviable en la comunidad Linux porque un programa que no está permitido simplemente puede ejecutar otro programa que sí lo es y obtener acceso de esa manera.
Si no le gusta lo que hace un programa en la red cuando lo ejecuta, no ejecute ese programa.
fuente