iptables 없음, selinux 없음, 가상 호스트의 포트 81이 여전히 작동하지 않습니다.

iptables 없음, selinux 없음, 가상 호스트의 포트 81이 여전히 작동하지 않습니다.

가상 호스트로 포트 81을 열어 보았습니다. Apache를 설정한 후 로컬 컴퓨터에서 localhost:81을 CURL하여 응답을 받을 수 있습니다(예, 포트 81에서 수신 대기 중입니다). 그러나 원격 브라우저에서 동일한 주소에 접근하면 브라우저에 항상 TIME OUT 오류가 표시됩니다.

방화벽이나 selinux 때문일지도 모른다고 생각해서 둘 다 비활성화하고 다시 시도했지만 여전히 실패했습니다. selinux와 방화벽을 비활성화하는 데 사용하는 명령은 다음과 같습니다.

selinux를 비활성화합니다:

/etc/selinux/config를 열고 SELINUX=disabled로 변경한 후 재부팅하세요. sestatus 명령을 사용하여 확인했는데 출력에 비활성화된 것으로 표시되었습니다.

iptables를 끄십시오:

service iptables stop
chkconfig iptables off

ip6tables를 끕니다.

service ip6tables stop
chkconfig ip6tables off

CentOS 6.3을 사용하고 있습니다. selinux 및 iptables 외에 내가 모르는 다른 보안 문제가 있습니까?

더 많은 정보를 추가하세요

저는 IP 주소를 직접 사용합니다(예: 123.123.123.123:81). 및 를 통해 로컬 서버 시스템에서 curl locahlost:81응답을 얻을 수 있기 때문에 이것이 Apache conf 때문이라고 생각하지 않습니다 curl 123.123.123.123:81.

네트워크 통계 결과

netstat 명령을 실행한 후 다음을 얻습니다.

tcp        0      0 :::80                       :::*                        LISTEN      1809/httpd          
tcp        0      0 :::81                       :::*                        LISTEN      1809/httpd  

80, 81 둘다 괜찮을 것 같습니다.

구성된 경우

ifconfig -a결과 는 다음과 같습니다 .

eth0  Link encap:Ethernet  HWaddr 00:50:56:9B:24:D6  
      inet addr:101.251.235.162  Bcast:101.251.235.163  Mask:255.255.255.252
      inet6 addr: fe80::250:56ff:fe9b:24d6/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:16046 errors:0 dropped:0 overruns:0 frame:0
      TX packets:15092 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:3370807 (3.2 MiB)  TX bytes:2352380 (2.2 MiB)

lo    Link encap:Local Loopback  
      inet addr:127.0.0.1  Mask:255.0.0.0
      inet6 addr: ::1/128 Scope:Host
      UP LOOPBACK RUNNING  MTU:65536  Metric:1
      RX packets:70 errors:0 dropped:0 overruns:0 frame:0
      TX packets:70 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:0 
      RX bytes:19119 (18.6 KiB)  TX bytes:19119 (18.6 KiB)

답변1

먼저 서버가 localhost가 아닌 원하는 포트에서 수신 대기하고 있는지 확인하십시오.

netstat -plnt

다음과 유사한 출력을 제공해야 합니다.

Proto Recv-Q Send-Q Local Address   Foreign Address  State       PID/Program name
tcp        0      0 127.0.1.1:53     0.0.0.0:*       LISTEN      -               
tcp        0      0 10.0.3.1:53      0.0.0.0:*       LISTEN      -               
tcp        0      0 127.0.0.1:631    0.0.0.0:*       LISTEN      -               
tcp        0      0 127.0.0.1:6680   0.0.0.0:*       LISTEN      -       

Local Address열을 확인하여 서버가 *:81or ip.ad.dr.ess:81가 아닌 or를 수신하고 있는지 확인하세요 localhost:81.127.0.0.1:81

이 경우 httpd.conf서버가 Listen *:81대신 에 설정되어 있는지 확인하고 확인하십시오.Listen localhost:81

괜찮다면 httpd.conf웹호스트 구성을 확인하여 모든 내용을 듣고 있는지 확인하세요.

<VirtualHost *:81>

관련 정보