И моя рабочая станция и сервер находятся на том же сегменте LAN и могут проверить с помощью ping-запросов друг друга (и я могу ssh в сервер от моей рабочей станции без проблем).
Сделал установку по умолчанию апача на песнях 7.
Запущенный сервис, но я не могу просмотреть к своему веб-серверу от моей рабочей станции.
порт отчета о nmap 80 фильтрован.
Я отключил SELinux на сервере, но порт все еще фильтрован.
Вот то, что netstat-l дает мне:
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:ssh 0.0.0.0:* LISTEN
tcp 0 0 localhost:smtp 0.0.0.0:* LISTEN
tcp6 0 0 [::]:http [::]:* LISTEN
tcp6 0 0 [::]:ssh [::]:* LISTEN
tcp6 0 0 localhost:smtp [::]:* LISTEN
raw6 0 0 [::]:ipv6-icmp [::]:* 7
Удачливый netstat - na показывает порт 80 как слушание, но для ipv6 (хотя я считал где-нибудь это, не обязательно означает не слушание на ipv4 любой),
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp 0 64 10.1.1.1:22 10.2.2.2:44939 ESTABLISHED
tcp6 0 0 :::80 :::* LISTEN
tcp6 0 0 :::22 :::* LISTEN
tcp6 0 0 ::1:25 :::* LISTEN
raw6 0 0 :::58 :::* 7
Вот соответствующая часть моего/etc/httpd/conf/httpd.conf (который я не изменил),
<Directory />
AllowOverride none
Require all denied
</Directory>
<Directory "/var/www">
AllowOverride None
# Allow open access:
Require all granted
</Directory>
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
<Files ".ht*">
Require all denied
</Files>
Услуга, кажется, работает хорошо:
httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled)
Active: active (running) since Fri 2015-10-02 08:36:40 EDT; 1h 27min ago
Process: 23294 ExecStop=/bin/kill -WINCH ${MAINPID} (code=exited, status=0/SUCCESS)
Main PID: 23302 (httpd)
Status: "Total requests: 0; Current requests/sec: 0; Current traffic: 0 B/sec"
CGroup: /system.slice/httpd.service
├─23302 /usr/sbin/httpd -DFOREGROUND
├─23303 /usr/sbin/httpd -DFOREGROUND
├─23304 /usr/sbin/httpd -DFOREGROUND
├─23305 /usr/sbin/httpd -DFOREGROUND
├─23306 /usr/sbin/httpd -DFOREGROUND
└─23307 /usr/sbin/httpd -DFOREGROUND
Почему это не слушающий на порте 80?
Поскольку Майкл Хэмптон прокомментировал ваше сообщение, я готов поспорить, что ваш брандмауэр (iptables) блокирует ваш трафик.
Либо отключите его ( systemctl disable firewalld
) или разрешить ему трафик на порт 80 ( firewall-cmd --zone = public --add-port = 80 / tcp --permanent
).
Проверьте правила iptables ( iptables-save
) и посмотрите, разрешен ли порт 80.
В целях тестирования вы можете выполнить сервис iptables stop
или iptables -F
.
Тот факт, что порт 80 фильтруется или нет, не имеет отношения к выводам netstat. Даже если iptables настроен на блокировку (DROP или REJECT) подключения к этому порту, вы должны увидеть, что Apache прослушивает порт 80.
Дело в том, что httpd настроен для прослушивания ОБЕИХ IPv4 и IPv6 ЛЮБЫХ адресов (0.0. 0.0 и: :) и в этом случае netstat показывает только IPv6. Объяснение здесь:
https://bugs.launchpad.net/ubuntu/+source/net-tools/+bug/657270
Вкратце: в этом случае соединение IPv6 может обслуживать ОБЕИ протоколы и поэтому открывается только одна розетка. И поскольку открыт только один сокет, в выводе netstat отображается только один сокет.