Skip to content
Closed

Pr 4279 #4281

Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 11 additions & 1 deletion .devcontainer/init-firewall.sh
Original file line number Diff line number Diff line change
Expand Up @@ -130,10 +130,20 @@ iptables -A NOVISTEPS_INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A NOVISTEPS_INPUT -j DROP
iptables -A NOVISTEPS_OUTPUT -o lo -j ACCEPT

# Only Docker's embedded DNS; port 53 to any other IP would bypass the allowlist.
# Only Docker's DNS servers; port 53 to any other IP would bypass the allowlist.
iptables -A NOVISTEPS_OUTPUT -p udp -d 127.0.0.11/32 --dport 53 -j ACCEPT
iptables -A NOVISTEPS_OUTPUT -p tcp -d 127.0.0.11/32 --dport 53 -j ACCEPT

# Docker queries bare ExtServers addresses from the container's namespace and host(...) ones from the host's.
read -r -a upstream_dns_entries <<<"$(sed -n 's/^# ExtServers: \[\(.*\)\]$/\1/p' /etc/resolv.conf)"

for upstream_dns in "${upstream_dns_entries[@]}"; do
if [[ "${upstream_dns}" =~ ^[0-9.]+$ ]]; then
iptables -A NOVISTEPS_OUTPUT -p udp -d "${upstream_dns}" --dport 53 -j ACCEPT
iptables -A NOVISTEPS_OUTPUT -p tcp -d "${upstream_dns}" --dport 53 -j ACCEPT
fi
done

while IFS= read -r db_address; do
iptables -A NOVISTEPS_OUTPUT -p tcp -d "${db_address}" --dport 5432 -j ACCEPT
done <<<"${db_addresses}"
Expand Down
Loading