Версия apache как узнать ubuntu

Обновлено: 05.07.2024

Мне нужно либо найти файл, в котором закодирована версия, либо способ опроса его через интернет, чтобы он показал свою версию. Сервер работает на хосте, который не предоставляет мне доступ к командной строке, хотя я могу просматривать местоположение установки через FTP.

Я пробовал HEAD и не получаю номер версии.

Если я попробую недостающую страницу, чтобы получить 404, она перехватывается, и возвращается страница запаса, на которой нет информации о сервере. Думаю, что указывает на закаленный сервер.

все еще не ближе.

подключитесь к порту 80 на хосте и отправьте его

за этим должен следовать carriage-return + line-feed дважды

вы получите что-то вроде этого

затем вы можете извлечь версию apache с сервера: header

вы можете использовать утилиту HEAD, которая поставляется с полной установкой Perl LWP библиотека, например,

или curl утилиты, например,

наконец-то. если вы находитесь в Windows, и больше ничего в вашем распоряжении, откройте командную строку (меню Пуск- > Выполнить, введите "cmd" и нажмите return), а затем введите это

затем введите (осторожно, ваши персонажи не будут повторяться)

нажмите return дважды, и вы увидите заголовки сервера.

как упоминалось cfeduke и Veynom, сервер может быть настроен на возврат ограниченной информации в заголовке Server:. Попробуйте загрузить PHP-скрипт на ваш хост с этим в нем

запросите страницу с веб-браузером, и вы должны см. версию Apache, сообщенную там.

вы также можете попробовать и использовать PHPShell, чтобы ткнуть вокруг, используйте команду

вывод должен быть примерно таким:

как было предложено, вы также можете сделать apachectl -v который даст вам тот же результат, но будет поддерживаться большим количеством вкусов Linux.

в файле и перейдите к нему и найдите

запись. Это восприимчиво к тому же отсутствию информации/вводящей в заблуждение, хотя я бы предположил, что он не часто изменяется, потому что этот метод сначала требует доступа к машине для создания PHP файл.

Внимание, некоторые серверы Apache не всегда отправляют свой номер версии при использовании HEAD, как в этом случае:

Если PHP установлен, то действительно, просто используйте команду php info:

уровень информации о версии, выдаваемой сервером Apache, может быть настроен параметром ServerTokens в его конфигурации.

Я считаю, что есть также параметр, который контролирует, появляется ли версия на страницах ошибок сервера, хотя я не могу вспомнить, что это такое с моей головы. Если у вас нет прямого доступа к серверу, и администратор сервера компетентен и не хочет, чтобы вы знали версию, которую они запускают. Я думаю, вы можете быть соль.

Telnet к хосту на порту 80.

Если у них включены страницы ошибок, вы можете перейти на несуществующую страницу и посмотреть в нижней части страницы 404.

при установке по умолчанию, называть страницу, которая не существует и вы получите ошибку с версией в конце:

объект не найден!

запрошенный url не найден на этом сервере. Если вы ввели url вручную, пожалуйста проверьте орфографию и повторите попытку.
Если вы считаете, что это ошибка сервера, обратитесь к веб-мастеру.
Ошибка 404
имя localhost
10/03/08 14:41:45
В Apache/2.2.8 (Win32) будут в DAV/2 расширением mod_ssl/2.2.8 OpenSSL и/0.9.8 г mod_autoindex_color на PHP/5.2.5

Убедитесь, что следующие команды должны выполняться от имени пользователя root или sudo и работать с любым дистрибутивом Linux , таким как CentOS, RHEL, Fedora, Debian и Ubuntu .

УСТАНОВКА APACHE SERVER

Чтобы установить веб-сервер Apache, используйте ваш стандартный менеджер пакетов, как показано ниже.

ПРОВЕРКА ВЕРСИИ APACHE

Чтобы проверить установленную версию вашего веб-сервера Apache в вашей системе Linux, выполните следующую команду.

Server version: Apache/2.4.6 (CentOS)
Server built: May 5 2019 01:47:09

Если вы хотите увидеть номер версии Apache и параметры компиляции, используйте флаг -V , как показано ниже.

ПРОВЕРКА НА ОШИБКИ СИНТАКСИСА КОНФИГУРАЦИИ APACHE

Чтобы проверить ваши файлы конфигурации Apache на наличие любых синтаксических ошибок, выполните следующую команду, которая проверит правильность файлов конфигурации, прежде чем перезапускать службу.

ЗАПУСК СЕРВИСА APACHE

Чтобы запустить службу Apache, выполните следующую команду.

------------ On Ubunt/Debian ------------
$ sudo systemctl start apache2 [On Systemd]
$ sudo service apache2 start [On SysVInit]

ВКЛЮЧЕНИЕ СЛУЖБЫ APACHE

Предыдущая команда пока только запускает службу Apache, чтобы включить автозапуск при загрузке системы, выполните следующую команду.

------------ On Ubunt/Debian ------------
$ sudo systemctl enable apache2 [On Systemd]
$ sudo chkconfig apache2 on [On SysVInit]

ПЕРЕЗАПУСК СЛУЖБЫ APACHE

Чтобы перезапустить Apache (остановить, а затем запустить службу), выполните следующую команду.

------------ On Ubunt/Debian ------------
$ sudo systemctl restart apache2 [On Systemd]
$ sudo service apache2 restart [On SysVInit]

ПРОСМОТР СОСТОЯНИЯ СЕРВИСА APACHE

Чтобы проверить информацию о состоянии времени выполнения службы Apache, выполните следующую команду.

------------ On Ubunt/Debian ------------
$ sudo systemctl status apache2 [On Systemd]
$ sudo service apache2 status [On SysVInit]

ПЕРЕЗАГРУЗКА СЕРВИСА APACHE

Если вы внесли какие-либо изменения в конфигурацию сервера Apache, вы можете указать службе перезагрузить свою конфигурацию, выполнив следующую команду.

------------ On Ubunt/Debian ------------
$ sudo systemctl reload apache2 [On Systemd]
$ sudo service apache2 reload [On SysVInit]

ОСТАНОВКА СЛУЖБЫ APACHE

Чтобы остановить службу Apache, используйте следующую команду.

------------ On Ubunt/Debian ------------
$ sudo systemctl stop apache2 [On Systemd]
$ sudo service apache2 stop [On SysVInit]

ПОКАЗАТЬ СПРАВКУ APACHE COMMAND

И последнее, но не менее важное: вы можете получить справку о служебных командах Apache в systemd, выполнив следующую команду.

Команды Apache, которые вы должны знать

Если вы разработчик или системный администратор, скорее всего, вы регулярно работаете с Apache.

Прежде чем вы начнете

Мы предполагаем, что вы вошли в систему как root или пользователь с привилегиями sudo. Команды в этом руководстве должны работать с любым современным дистрибутивом Linux, таким как Ubuntu 18.04, CentOS 7 и Debian 9 .

Запустите Apache

Запуск Apache довольно прост. Просто введите следующую команду.

В случае успеха команда не выдает никаких результатов.


Если вы используете более старый дистрибутив Linux без systemd для запуска Apache:


Вместо того, чтобы вручную запускать службу Apache, рекомендуется установить ее при загрузке системы:

Стоп Апач

Остановка Apache быстро отключает основной процесс Apache и все дочерние процессы, даже если есть открытые соединения.


Чтобы остановить Apache, выполните одну из следующих команд:

Перезапустите Apache

Параметр restart - это быстрый способ остановить и запустить сервер Apache.


Используйте одну из следующих команд для выполнения перезапуска:


Это команда, которую вы, вероятно, будете использовать чаще всего.

Перезагрузить Apache

Вам необходимо перезагрузить или перезапустить Apache всякий раз, когда вы вносите изменения в его конфигурацию.

При перезагрузке основной процесс apache завершает работу дочерних процессов, загружает новую конфигурацию и запускает новые дочерние процессы.


Чтобы перезагрузить Apache, используйте одну из следующих команд:

Тестирование конфигурации Apache

Всякий раз, когда вы вносите изменения в файл конфигурации сервера Apache, рекомендуется проверить конфигурацию перед перезапуском или перезагрузкой службы.


Используйте следующую команду для проверки конфигурации Apache на наличие любых синтаксических или системных ошибок:


Вывод будет выглядеть так:

Просмотр статуса Apache

Чтобы проверить состояние службы Apache, используйте следующую команду:


Вывод будет выглядеть примерно так:

Проверьте версию Apache

Иногда вам может понадобиться узнать версию вашего Apache, чтобы вы могли отладить проблему или определить, доступна ли определенная функция.


Вы можете проверить свою версию Apache, запустив:


Опция -V (в верхнем регистре) показывает версию Apache вместе с опцией конфигурации.

Вывод

В этом руководстве мы показали вам некоторые из наиболее важных команд Apache. Если вы хотите узнать больше о командной строке Apache, посетите документацию Apache

В Ubuntu конечный файл настройки (apache2.conf) расделён на несколько файлов, расположенных в разных поддиректориях. Подробней написано в комментариях файла apache2.conf.

Настройки модулей расположены в директории /etc/apache2/mods-available. Для подключения или отключения модулей (настроек модулей) следует использовать соответствующие команды a2enmod или a2dismod . Пример подключения модуля:

Свои настройки следует сохранять в файлы, расположенные в директории /etc/apache2/conf-available. Для подключения или отключения своих настроек следует использовать соответствующие команды a2enconf или a2disconf . Пример подключения файла со своими настройками:

Настройки виртуальных хостов следует сохранять в файлы, расположенные в директории /etc/apache2/sites-available. Для подключения виртуальных хостов следует использовать соответствующие команды a2ensite или a2dissite . Пример подключения виртуального хоста:

Кодировка по умолчанию

Для указания кодировки по умолчанию следует использовать директиву AddDefaultCharset в файле /etc/apache2/conf-available/charset.conf (или раскомментировать соответствующую строку):

Виртуальные хосты

Файлы настроек виртуальных хостов хранятся в /etc/apache2/sites-available/*.conf. По умолчанию в Apache уже настроен один виртуальный хост. Его настройки лежат в файле 000-default.conf. Вы можете использовать этот виртуальный хост в качестве примера.

Пример настройки виртуального хоста:

Назовите файл настройки именем вашего хоста host1.server1.conf и сохраните.

После создания файла настроек допишите в /etc/hosts имя вашего хоста:

Для включения созданного виртуального хоста используется утилита a2ensite :

Отключается хост аналогично утилитой a2dissite :

Модули

mod_userdir

Модуль mod_userdir позволяет использовать директории, находящиеся в домашних директориях пользователей для хранения веб страниц. По умолчанию Apache ищет запрашиваемые страницы в директории

Чтобы включить mod_userdir , выполните:

и добавьте необходимого пользователя в группу www-data:

после чего перезагрузите Apache:

username, где username — имя пользователя.

Если Вы хотите запускать на сервере cgi-скрипты, подключите модуль cgi командой

По умолчанию cgi-скрипты размещаются в директории /usr/lib/cgi-bin, но вы можете разместить их где угодно, указав это в настройках своего виртуального хоста, либо глобально для всех хостов в файле /etc/apache2/conf-enabled/serve-cgi-bin.conf.

Eсли ваш сервер работает во внешней сети, то в целях безопасности настоятельно рекомендуется размещать cgi-скрипты вне корневой директории виртуального хоста

Создание ключа и ssl-сертификата

Использование самоподписанных сертификатов хоть и защищает от пассивного прослушивания, тем не менее не гарантирует клиентам, что сервер является именно тем сервером, который им нужен. Преимуществом самоподписанных сертификатов является их бесплатность. Сертификат, подписанный компанией-сертификатором (Certificate authority), стоит денег.

Для создания ключа и сертификата вводим команду:

На вопрос «Enter PEM pass phrase:» отвечаем паролем, подтверждаем и запоминаем.

После ответа на все вопросы в директории должны появиться два новых файла — server.pem (ключ) и server.crt (сертификат).

Чтобы использовать сгенерированный ключ, нужно знать пароль, введённый нами, и Apache будет спрашивать его у нас при загрузке, а к чему нам лишние вопросы от демонов? :) Поэтому снимаем пароль с ключа:

Скопируем их в /etc/ssl и назначим файлу ключа права чтения только администратору:

Настройка Apache

Для начала необходимо активировать mod_ssl :

В этом файле рекомендуется после директивы

чтобы запретить использование устаревшего протокола SSLv2.

Дальше вам необходимо отредактировать параметры, ответственные за сертификаты.

Теперь просто перезагрузите Apache:

Читайте также: