Проверить доступность сайта с помощью CURL

Ответить
ya
^-^
Сообщения: 2336
Зарегистрирован: 16 дек 2021, 19:56

Проверить доступность сайта с помощью CURL

Сообщение ya »

Проверить доступность сайта с помощью CURL
Выполните следующую команду, чтобы проверить, работает ли веб-сайт и какое сообщение о состоянии показывает веб-сервер:

$ curl -Is https://itsecforu.ru | head -1
HTTP/1.1 200 OK
Код состояния «200 OK» означает, что запрос успешно выполнен и веб-сайт доступен.

Вот еще один пример, который показывает вам, как curl отображает различные коды состояния.

$ curl -Is https://itsecforu.ru | head -n 1
HTTP/1.1 301 Moved Permanently
301 это редирект с https на http

Вы также можете проверить наличие определенной страницы на сайте:
$ curl -Is https://www.itsecforu.ru/index.php | head -n 1
HTTP/1.1 200 OK
ya
^-^
Сообщения: 2336
Зарегистрирован: 16 дек 2021, 19:56

Проверить доступность сайта с помощью telnet

Сообщение ya »

Проверить доступность сайта с помощью TELNET
Вы также можете проверить доступность веб-сайта и получить код ответа с помощью команды telnet:

$ telnet www.itsecforu.ru 80
Trying 91.206.200.119...
Connected to itsecforu.ru.
Escape character is '^]'.
HEAD / HTTP/1.0
HOST: www.shellhacks.com
<PRESS ENTER>
<PRESS ENTER>
Вы получите вывод следующим образом:

HTTP/1.1 200 OK
Server: nginx/1.1.10
Date: Sun, 26 May 2013 19:29:46 GMT
***
ya
^-^
Сообщения: 2336
Зарегистрирован: 16 дек 2021, 19:56

Проверка срока действия SSL-сертификата

Сообщение ya »

Ручной мониторинг доступности сайта (обзор простых инструментов)
https://habr.com/ru/companies/selectel/articles/331648/

Проверка срока действия SSL-сертификата

Выполните следующую команду из командной строки в Linux, чтобы узнать срок действия SSL сертификата, с помощью openssl:
$ echo | openssl s_client -servername ИМЯ -connect ХОСТ:ПОРТ 2>/dev/null | openssl x509 -noout -dates

Помимо срока действия, SSL сертификат содержит много интересной информации. Каждый SSL сертификат содержит информацию о том, кем он был выдан, кому он выдан, его срок действия и прочее.

Все эти данные могут быть извлечены из SSL сертификата сайта с помощью программы openssl из командной строки в Linux.

Проверить кто выдал SSL сертификат:
$ echo | openssl s_client -servername site.com -connect site.com:443 2>/dev/null | openssl x509 -noout -issuer
issuer= /C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X3

Проверить кому выдан SSL сертификат:
$ echo | openssl s_client -servername site.com -connect site.com:443 2>/dev/null | openssl x509 -noout -subject
subject= /CN=www.site.com

Показать всю перечисленную выше информацию об SSL сертификате одной командой:
$ echo | openssl s_client -servername site.com -connect site.com:443 2>/dev/null | openssl x509 -noout -issuer -subject -dates
issuer= /C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X3
subject= /CN=www.site.com
notBefore=Mar 18 10:55:00 2017 GMT
notAfter=Jun 16 10:55:00 2017 GMT


Здесь мы запускаем цикл (for) в котором записываем адреса, которые будем проверять, в переменную serv и вызываем каждый из адресов с помощью cUrl.

Подключение к oracle выполняется через команду sqlplus rt/pass@rtportal, где rt – название схемы в oracle, pass – пароль к схеме, rtportal – SID прописанный в tnsnames.ora на том сервере, где вы выполняете скрипт.

Дальше выполняется sql скрипт, записывающий в таблицу адрес (serv), текущую дату и статус (http_status) вызова.

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

Код: Выделить всё

#!/bin/bash

#services for monitoring

for serv in "http://rtportal.ru" " http://RTDMws.rtportal.ru:8080/SASBIWS/services/scoring_service?wsdl "

do

http_status=$(curl -s -o /dev/null -w "HTTP_code %{http_code}, total_time %{time_total}" $serv)

echo $http_status

sqlplus rt/pass@rtportal <<EOF

INSERT INTO RT_service_status (SERVICE_ADDRESS, DT_CHECK, STATUS) values ('$serv', sysdate, '$http_status');

commit;

exit;

EOF

done
Ответить