방화벽을 구성해야 하는 Linux 시스템이 있습니다. 안타깝게도 방화벽을 설정한 후에는 네트워크에서 프린터를 검색할 수 없습니다(방화벽이 없으면 프린터가 표시됩니다).
사용된 프린터 - lpinfo -l -v
Device: uri = socket://xx.xx.xx.xx:9100
class = network
info = Deskjet 3520 e-All-in-One Printer series
make-and-model = HP Deskjet 3520 series
device-id = MFG:HP;MDL:Deskjet 3520 series;
location =
아래에서 내가 찾은 정보를 바탕으로 내가 사용하고 있는 규칙을 볼 수 있습니다.https://www.cups.org/doc/firewalls.html:
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -p udp --dport 53 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --dport 53 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -p tcp --dport 631 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --dport 631 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -p udp --dport 5353 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p udp --dport 5353 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --dport 161 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --dport 515 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --dport 9100 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -nvL
Chain INPUT (policy DROP 8 packets, 788 bytes)
pkts bytes target prot opt in out source destination
0 0 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:631 state NEW
0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:631 state NEW
23 4228 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:5353 state NEW
0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
Chain FORWARD (policy DROP 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy DROP 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
22 3619 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state NEW,RELATED,ESTABLISHED
0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW,ESTABLISHED udp dpt:137
0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW,ESTABLISHED udp dpt:138
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW,ESTABLISHED tcp dpt:139
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW,ESTABLISHED tcp dpt:445
내가 뭘 놓쳤는지 아세요? 감사해요
답변1
@notsoslimshady가 제안한 대로 iptables 로깅을 사용하여 이전에 놓쳤던 내용을 확인할 수 있었습니다. 이제 프린터가 네트워크 프린터인 것으로 확인되었습니다.
iptables -A INPUT -p tcp --dport 631 -j ACCEPT
iptables -A INPUT -p udp --dport 631 -j ACCEPT
iptables -A OUTPUT -p udp --dport 161 -j ACCEPT
**iptables -A INPUT -p udp --sport 161 -j ACCEPT** <-- Missing rule