Palm Pre가 있고 거기에 웹 서버를 설치했는데 포트 8080에서 수신 대기합니다. Pre의 브라우저(localhost 또는 127.0.0.1을 사용하여 작동함)에서 192.168.1.104:8080(장치의 IP 주소, 실패함)을 열면 이미지가 표시되고 모든 것이 제대로 작동합니다.
하지만 외부에서 웹 서버에 액세스할 수 없습니다. 예를 들어 데스크탑에서는 시간 초과가 표시됩니다. Pre에 방화벽이 있나요, 아니면 뭔가 문제가 있나요? 필요한 경우 서버의 포트 번호를 변경할 수 있습니다. Pre를 구성하지 않고 SSH만 설치했습니다. 또한 Pre에 SSH로 연결하고 Pre에서 내 데스크톱에 액세스할 수 있습니다.
고쳐 쓰다:
구성된 경우설명하다:
eth0 Link encap:Ethernet HWaddr 00:1D:FE:B5:99:51
inet addr:192.168.1.104 Bcast:192.168.255.255 Mask:255.255.0.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:486 errors:0 dropped:0 overruns:0 frame:0
TX packets:284 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:69398 (67.7 KiB) TX bytes:40051 (39.1 KiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:1248 errors:0 dropped:0 overruns:0 frame:0
TX packets:1248 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:128070 (125.0 KiB) TX bytes:128070 (125.0 KiB)
iptables-nvL설명하다:
Chain INPUT (policy DROP 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
370 29404 ACCEPT tcp -- eth0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
1248 128K ALLOWED_PACKETS all -- lo * 0.0.0.0/0 0.0.0.0/0
0 0 INVALID_PACKETS all -- !lo * 127.0.0.0/8 0.0.0.0/0
0 0 REJECT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:113 flags:0x17/0x02 state NEW reject-with tcp-reset
0 0 DROP tcp -- bridge0 * 0.0.0.0/0 0.0.0.0/0 tcp dpts:4444:4445
47 28580 ALLOWED_PACKETS all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
0 0 ALLOWED_PACKETS all -- bridge0 * 0.0.0.0/0 0.0.0.0/0
0 0 ALLOWED_PACKETS all -- usb0 * 0.0.0.0/0 0.0.0.0/0
0 0 ALLOWED_PACKETS icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmp type 0 state NEW
0 0 ALLOWED_PACKETS icmp -- * * 0.0.0.0/0 0.0.0.0/0 limit: avg 1/sec burst 5 icmp type 0
0 0 ALLOWED_PACKETS icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmp type 3 state NEW
0 0 ALLOWED_PACKETS icmp -- * * 0.0.0.0/0 0.0.0.0/0 limit: avg 1/sec burst 5 icmp type 3
0 0 ALLOWED_PACKETS icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmp type 4 state NEW
0 0 ALLOWED_PACKETS icmp -- * * 0.0.0.0/0 0.0.0.0/0 limit: avg 1/sec burst 5 icmp type 4
0 0 ALLOWED_PACKETS icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmp type 5 state NEW
0 0 ALLOWED_PACKETS icmp -- * * 0.0.0.0/0 0.0.0.0/0 limit: avg 1/sec burst 5 icmp type 5
3 252 ICMPFLOOD icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmp type 8 state NEW
0 0 ALLOWED_PACKETS icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmp type 11 state NEW
0 0 ALLOWED_PACKETS icmp -- * * 0.0.0.0/0 0.0.0.0/0 limit: avg 1/sec burst 5 icmp type 11
0 0 ALLOWED_PACKETS tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:5353
0 0 ALLOWED_PACKETS udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:5353
0 0 ALLOWED_PACKETS tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:3689
0 0 ALLOWED_PACKETS udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:3689
0 0 ALLOWED_PACKETS tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x04/0x04
36 4604 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 limit: avg 3/sec burst 5 LOG flags 0 level 7 prefix `IPT_PACKET_DROPPED_NO_MATCH: '
36 4604 QUEUE all -- * * 0.0.0.0/0 0.0.0.0/0
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
0 0 INVALID_PACKETS all -- * * 0.0.0.0/0 0.0.0.0/0 state INVALID
Chain OUTPUT (policy ACCEPT 1541 packets, 166K bytes)
pkts bytes target prot opt in out source destination
Chain ALLOWED_PACKETS (20 references)
pkts bytes target prot opt in out source destination
1298 157K ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0
Chain ICMPFLOOD (1 references)
pkts bytes target prot opt in out source destination
3 252 all -- * * 0.0.0.0/0 0.0.0.0/0 recent: SET name: ICMP side: source
0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 recent: UPDATE seconds: 1 hit_count: 6 TTL-Match name: ICMP side: source limit: avg 1/sec burst 1 LOG flags 0 level 4 prefix `IPT_ICMPFLOOD: '
0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 recent: UPDATE seconds: 1 hit_count: 6 TTL-Match name: ICMP side: source
3 252 ALLOWED_PACKETS all -- * * 0.0.0.0/0 0.0.0.0/0
Chain INVALID_PACKETS (2 references)
pkts bytes target prot opt in out source destination
0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 limit: avg 1/sec burst 100 LOG flags 0 level 4 prefix `IPT_INVALID_PACKETS_DROPPED: '
0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0
나는 TCP 포트 8080이나 내가 원하는 것이 포트 22(SSH)처럼 허용되어야 한다고 생각합니다.
답변1
현재는 policy DROP
명시적으로 허용되지 않는 한 들어오는 트래픽이 차단됩니다(이것이 바로 의미입니다). "합법적인" 트래픽을 허용하는 몇 가지 규칙이 있습니다. 예를 들어 첫 번째 규칙은 들어오는 SSH 연결( tcp dpt:22
Ssh 포트인 포트 22에 대한 TCP 트래픽을 의미)을 허용합니다.
웹 서버를 활성화하는 수동 방법은 포트로 들어오는 트래픽을 허용하는 iptables 규칙을 추가하는 것입니다. 포트 80을 열고 싶다고 가정해 보겠습니다. 다음 명령을 사용하여 열 수 있습니다.
iptables -I INPUT 24 -p tcp --dport 80 -j ALLOWED_PACKETS
(저는 속도 제어와 같은 기능을 허용하는 포트 3689 및 5353 모델을 따르고 있습니다. Ssh는 특별히 처리되므로 잘못된 구성으로 인해 액세스가 불가능해질 위험을 줄이는 것 같습니다.)
시작 시 설정을 적용하는 정식 방법이 있을 수 있습니다. 구글 검색제안만족스러운 설정이 있으면 영구적으로 설정할 수 있습니다.
iptables-save >/etc/pmnetconfig/iptables-common.config
WebOS를 몰라서 이 파일의 위치를 확인할 수 없습니다.
실험 중에 문제가 발생하면 특정 규칙(예: 규칙 42)을 삭제할 수 있습니다 iptables -D INPUT 42
. 위의 위치가 정확하다고 가정하면 다음 명령을 사용하여 부팅 시간 설정을 복원할 수 있습니다.
iptables-restore </etc/pmnetconfig/iptables-common.config