내 IP만으로는 서버에 접속할 수 없나요?

내 IP만으로는 서버에 접속할 수 없나요?

저는 웹사이트 호스트로 CentOS 7과 Apache 2.4를 사용하고 있습니다. 다른 많은 컴퓨터를 사용해 보았지만 일부는 서버에 연결할 수 있었지만 일부는 내 컴퓨터에 연결할 수 없었습니다. 중지된 방화벽( ) systemctl stop firewalld.service을 비활성화 service iptables stop하고 selinux( )를 껐습니다 setenforce 0. 그러나 웹 사이트에 액세스할 수 없으며 http 요청 시간이 초과됩니다. 이게 무슨 문제야?

>> netstat -tunalp | grep :80
tcp6       0      0 :::80                   :::*                    LISTEN      9480/httpd          
udp        0      0 127.0.0.1:802           0.0.0.0:*                           1897/rpc.statd     

Apache Listen지시어는 다음과 같이 설정됩니다.Listen 80

공용 IP가 있는 내 PC에서는 서버에 ping을 보낼 수도 없습니다. CentOS의 어떤 부분이 내 연결을 차단할 수 있습니까?

답변1

>> netstat -tunalp | grep :80  
tcp6       0      0 :::80                   :::*                    LISTEN      9480/httpd          

IPv6 연결만 수신할 계획입니까? (tcp6으로 시작하는 줄이 보이나요?) ipv4 주소에만 바인딩하려면 Listen 0.0.0.0:80.

답변2

네트워크 문제가 있는 것 같습니다. 이 명령을 루트로 실행 netstat -tunalp | grep :80하고 어떤 IP 주소 http가 나열되어 있는지 확인할 수 있습니다. Apache 구성의 지시문도 확인하세요 Listen.

답변3

설명하신 대로 구성에 두 가지 문제가 있습니다.

  1. 방화벽을 비활성화한 다음 명령을 언급했다고 하셨습니다 systemctl start firewalld.service. 이 명령은 방화벽을 시작합니다. systemctl stop firewalld.service그것을 사용 하여 중지하십시오.
  2. PC에서 서버에 접속할 수 없고 PC에 공용 IP가 있다고 말씀하셨습니다. IPv4 또는 IPv6를 사용하고 있습니까? 후자인 경우 두 컴퓨터 모두 링크 로컬(fe80::) 주소가 아닌 "실제" 주소를 사용하는 한 여기에는 문제가 없습니다. 그러나 IPv4 네트워크를 사용하려는 경우 서버가 공용 주소를 사용하는지 또는 NAT가 올바르게 지정되는지 확인해야 합니다.

답변4

CentOS를 직접 설정하는 경우 firewalld특정 원격 IP가 차단되었는지 여부를 알아야 합니다 iptables. IOW 그게 문제인 것 같아요. 마찬가지로 SELinux는 특정 원격 IP를 구별하는 데 문제가 없어야 합니다. Apache에도 동일한 논리가 적용됩니다. 저는 CentOS가 문제라고 생각하지 않습니다.

어떤 네트워크 홉이 HTTP를 차단하지만 SSH를 허용하는지 확인할 수 있나요?

예를 들어 Google에서는 사이트를 볼 수 있도록 허용하지만 내부 네트워크 경계에서 SSH를 차단합니다. 적합한 Linux 설치에서 사용 가능한 TCP 추적 경로를 통해 이를 확인할 수 있습니다.

# traceroute -T google.com    # port 80 is the default
traceroute to google.com (216.58.210.78), 30 hops max, 60 byte packets
 1  gateway (172.16.9.1)  3.070 ms  3.048 ms  3.024 ms
 2  host-89-243-96-1.as13285.net (89.243.96.1)  17.659 ms  17.664 ms  21.510 ms
 3  xe-11-2-0-bragg001.bre.as13285.net (78.151.225.39)  21.524 ms  21.643 ms  25.172 ms
 4  host-78-151-225-88.static.as13285.net (78.151.225.88)  25.170 ms  27.548 ms host-78-151-229-28.as13285.net (78.151.229.28)  27.538 ms
 5  host-78-144-8-63.as13285.net (78.144.8.63)  34.949 ms host-78-144-12-227.as13285.net (78.144.12.227)  37.634 ms host-78-144-10-17.as13285.net (78.144.10.17)  37.581 ms
 6  72.14.214.222 (72.14.214.222)  37.591 ms  32.854 ms  32.763 ms
 7  216.239.54.159 (216.239.54.159)  35.622 ms 72.14.237.253 (72.14.237.253)  23.919 ms  23.775 ms
 8  72.14.238.185 (72.14.238.185)  26.728 ms  23.559 ms  23.496 ms
 9  lhr14s24-in-f14.1e100.net (216.58.210.78)  26.608 ms  22.107 ms  24.961 ms

# traceroute -T google.com -p 22    # port 22 for SSH
traceroute to google.com (216.58.198.206), 30 hops max, 60 byte packets
 1  gateway (172.16.9.1)  3.020 ms  2.977 ms  2.960 ms
 2  host-89-243-96-1.as13285.net (89.243.96.1)  16.724 ms  16.728 ms  16.713 ms
 3  xe-11-2-0-bragg001.bre.as13285.net (78.151.225.39)  22.195 ms  22.205 ms  24.498 ms
 4  host-78-151-225-18.static.as13285.net (78.151.225.18)  24.507 ms host-78-151-225-116.static.as13285.net (78.151.225.116)  24.552 ms  27.647 ms
 5  host-78-144-10-21.as13285.net (78.144.10.21)  34.491 ms host-78-144-12-117.as13285.net (78.144.12.117)  34.474 ms host-78-144-10-235.as13285.net (78.144.10.235)  34.463 ms
 6  * * *
 7  * * *
 8  * * *
 9  * * *
10  * * *

이는 ICMP "TTL 초과" 오류가 어딘가에서 차단되지 않는다고 가정합니다. 그래도 Traceroute 작업은 항상 재미있습니다 :).

관련 정보