apt-get casi siempre descarga a través de HTTP, pero también puede usar FTP, por lo que la respuesta breve es probablemente permitir conexiones HTTP salientes ... y también DNS, por supuesto.
La configuración que tiene ahora no permite todo el tráfico de red saliente (la ESTABLISHED
regla que tiene en la OUTPUT
cadena no es efectiva ya que nunca se establecerán sesiones). ¿Necesita permitir SOLAMENTE actualizaciones de apt-get mientras sigue sin permitir todo lo demás? iptables
es probablemente la herramienta incorrecta para ese trabajo, ya que realmente no va a interpretar las URL y permitir transferencias HTTP selectivamente. Desea utilizar un servidor proxy HTTP para este trabajo.
Puede usar una configuración más simple que permita descargas de apt-get, pero tenga en cuenta que esto también permite todas las demás conexiones DNS y HTTP salientes, que pueden no ser lo que desea.
iptables -F OUTPUT # remove your existing OUTPUT rule which becomes redundant
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT
iptables -A OUTPUT -p tcp --dport 53 -m state --state NEW -j ACCEPT
iptables -A OUTPUT -p udp --dport 53 -m state --state NEW -j ACCEPT
Si sus fuentes APT incluyen fuentes HTTPS o FTP o fuentes HTTP en puertos que no sean 80, también deberá agregar esos puertos.
A continuación, deberá permitir el tráfico de retorno. Puede hacerlo con esta regla única que permite cualquier conexión establecida:
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
(Es seguro permitir todas las conexiones entrantes establecidas cuando se usa el seguimiento de conexiones, porque solo las conexiones que de otro modo haya permitido llegarán al estado ESTABLECIDO).