次のように、Debianシステムにufwをインストールしました。
# aptitude install ufw
# ufw limit 22
# ufw allow 80
# ufw allow 443
# ufw enable
# ufw status verbose
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing)
New profiles: skip
To Action From
-- ------ ----
20 LIMIT Anywhere
80 ALLOW Anywhere
443 ALLOW Anywhere
単純なping google.com
は失敗し、aptitude install
も失敗します。 serverfaultで回答を検索しました。 1つの解決策は、DNSのポート53を許可することでした-役に立ちませんでした。または、ufw allow out 1024:65535/udp
とポート53-は役に立ちませんでした。
うまくいったのは、ufw allow from [DNS IP]
のようなDNSサーバーを許可することでした。しかし、あなたが私に尋ねれば、それは解決策ではありません。
apt-getとaptitudeはすべてufwによってブロックされます。新しいもののインストールを許可する方法については何も見つかりませんでした。 ufwログエントリの例:
Aug 12 17:31:08 Host kernel: [535454.665168] [UFW BLOCK] IN=eth0 OUT= MAC=00:00:00:00:00:00:00:00:00:00:00:00:00:00 SRC=0.0.0.0 DST=0.0.0.0 LEN=60 TOS=0x00 PREC=0x00 TTL=52 ID=0 DF PROTO=TCP SPT=80 DPT=41343 WINDOW=14480 RES=0x00 ACK SYN URGP=0
何か案は?
iptables
はそれとインターフェースするだけなので、以下をufw
に追加する必要があります。
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
これらのルールは、SSHのレート制限を正常に取得し、httpとhttpsの入出力を許可し、gitを有効にし、aptとaptitudeが問題なく機能するのに役立ちました。
ufw default deny incoming
ufw default deny outgoing
ufw limit ssh
ufw allow svn
ufw allow git
ufw allow out http
ufw allow in http
ufw allow out https
ufw allow in https
ufw allow out 53
ufw logging on
ufw enable
注:これらのルールは、最初から開始するためにufw reset
FIRSTで開始しました。
ここでUbuntu(この記事の執筆時点では14.04と14.10)を使用して私のために働いたのは、次の記事から来ています: http://rene.bz/securing-your-web-server-blocking-outbound-接続/
iptables -A ufw-before-output -m owner --uid-owner root -p tcp --dport 53 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A ufw-before-output -m owner --uid-owner root -p udp --dport 53 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
それは理想的な解決策ではないかもしれません。しかし、それは私がユーザーごとにaptコマンドを承認することを可能にします。
Pptpd + ufwに問題がありました-53ポートを許可してもDNSへのリクエストがブロックされました。 /etc/default/ufw
を開いて、オプション「DEFAULT_FORWARD_POLICY」を「DROP」から「ACCEPT」に変更しようとしましたか?それは私のためにトリックをしました。