apt-get hampir selalu mengunduh melalui HTTP tetapi juga dapat menggunakan FTP, jadi jawaban singkatnya mungkin untuk memungkinkan koneksi HTTP keluar ... dan juga DNS, tentu saja.
Konfigurasi yang sekarang Anda miliki melarang semua lalu lintas jaringan keluar ( ESTABLISHED
aturan yang Anda miliki pada OUTPUT
rantai tidak efektif karena tidak ada sesi yang akan dibuat). Apakah Anda hanya perlu mengizinkan pembaruan apt-get ONLY sementara masih melarang semua yang lain? iptables
mungkin alat yang salah untuk pekerjaan itu karena tidak benar-benar akan menafsirkan URL dan memungkinkan transfer HTTP secara selektif. Anda ingin menggunakan server proxy HTTP untuk pekerjaan ini.
Anda dapat menggunakan pengaturan yang lebih sederhana yang memungkinkan unduhan apt-get, tetapi perlu diketahui bahwa ini juga memungkinkan semua koneksi DNS dan HTTP keluar lainnya, yang mungkin bukan yang Anda inginkan.
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
Jika sumber APT Anda menyertakan sumber HTTPS atau FTP atau sumber HTTP pada port selain 80, Anda juga harus menambahkan port tersebut.
Selanjutnya, Anda harus mengizinkan lalu lintas kembali. Anda dapat melakukannya dengan aturan tunggal ini yang mengizinkan koneksi yang dibuat:
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
(Aman untuk mengizinkan semua koneksi masuk yang masuk saat menggunakan pelacakan koneksi, karena hanya koneksi yang telah Anda izinkan yang akan masuk ke status ESTABLISHED.)