youtube.com 및 pw.live 웹사이트만 열고 다른 모든 나가는 트래픽은 차단하도록 우분투 시스템을 설정하고 싶습니다.
지금까지 내가 한 일은 폴더 아래에 ip_table 스크립트를 만드는 것입니다.
/etc/iptables
#!/bin/bash
###### Flush existing rules
iptables -F
###### Allow DNS resolution
iptables -A OUTPUT -p udp --dport 53 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -p udp --sport 53 -m state --state ESTABLISHED -j ACCEPT
###### Allow loopback
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
###### Load website rules from file
while read -r website; do
iptables -A OUTPUT -p tcp -d "$website" -m state --state NEW,ESTABLISHED -j ACCEPT
done < /etc/iptables/websites.txt
###### Block everything else
iptables -A OUTPUT -j DROP
##### Save the rules
iptables-save > /etc/iptables/rules.v4
####################
내 website.txt에 추가했습니다.
youtube.com
pw.live
www.youtube.com
www.pw.live
제가 겪고 있는 문제는 YouTube.com을 열 수 있지만 미리보기 이미지에 있는 동영상을 재생할 수 없고 검은색 화면만 표시된다는 것입니다.
이 문제를 어떻게 해결할 수 있나요?
답변1
여기에는 두 가지 주요 문제가 있습니다. 첫째, iptables
도메인 이름이 아닌 IP 주소에 적용됩니다. YouTube와 같은 대규모 도메인에는 Akamai와 같은 CDN(콘텐츠 전송 네트워크)을 통한 지리 인식 배포를 위한 여러 IP 주소가 있습니다. 실제로 각 그룹에서 하나의 IP 주소를 추가하는 것뿐입니다. 즉, 유효한 엔드포인트가 많이 누락되었음을 의미합니다.
두 번째 세트는 귀하가 허용하지 않는 다른 도메인 이름에서 호스팅되는 실제 비디오입니다. 예, 이러한 추가 도메인의 이름과 IP에도 동일한 문제가 있습니다.
당신이 원하는 것은 도메인 이름을 사용할 수 있는 프록시 서버를 설정하는 것입니다.HA 프록시그런 다음 서버가 웹 서비스용 프록시에만 연결하도록 허용하세요. 프록시를 설정할 때 프록시가 수신 대기하는 포트를 결정하고 이에 따라 허용되는 포트가 결정됩니다 iptables
.