Диагностика и логи | REG.RU
В этой статье мы расскажем:
- что такое порт,
- как проверить доступность порта через telnet,
- для чего нужны команды ping и traceroute,
- как диагностировать сеть с помощью MTR,
- как посмотреть журнал сайта.
Что такое порт
Когда решено обменяться данными по локальной сети, устройства связываются друг с другом. Для этого каждому устройству нужно иметь свой IP-адрес и открыть порты для взаимодействия.
Порт — это числовой идентификатор приложения или процесса в диапазоне от 0 до 65 535. На устройстве может находиться сразу несколько сетевых приложений, которые привязаны к разным портам, при этом за сеанс нужно подключиться только к одному приложению. Поэтому порт открывает соединение с конкретным приложением и обслуживает его, пока сеанс не завершится.
Проверить порт сервера на доступность можно следующими способами:
- с помощью сервиса Проверка доступных портов,
- с помощью консольных команд: telnet, ping, traceroute,
- с помощью программы MTR.
Как проверить, открыт ли порт, командой Telnet
Telnet — это утилита, с помощью которой можно соединиться с удалённым портом любого компьютера и установить канал связи. Это реализация клиентской части протокола с тем же названием (стандартный порт telnet — 23). Для использования telnet нужно знать, какой порт использует искомое приложение, а также имя или IP-адрес сервера. Если при работе с telnet не указать порт, утилита проверит доступность сервера аналогично команде ping.
Рассмотрим, как узнать, открыт ли порт на компьютере или сервере в Windows и Linux.
Windows
Linux
Важно: в Windows Vista и Windows 7/8/10 утилита telnet по умолчанию отключена. Вы можете установить утилиту по инструкции от Microsoft.
-
1.
Нажмите Пуск или сочетание клавиш Win + R.
-
3.
В командной строке введите команду:
telnet имя_сервера номер_порта
или:
telnet IP_сервера номер_порта
Если командная строка или терминал возвращает ошибку, то порт закрыт:
Как с помощью telnet в Windows 10 проверить порт
Если окно становится полностью пустым или на экране появляется приглашение сервера, порт открыт:
Как выглядят в Windows и Linux (Ubuntu, Centos) открытые порты
В поле поиска введите «cmd» и нажмите кнопку ОК.
-
1.
Запустите терминал. Для этого в поисковой строке введите слово «Терминал» или нажмите комбинацию клавиш Ctrl+Alt+T.
-
2.
Установите утилиту telnet:
sudo apt install telnet
-
3.
В терминале введите команду:
telnet имя_сервера номер_порта
или:
telnet IP_сервера номер_порта
Если командная строка возвращает ошибку, то порт закрыт:
Если порт открыт, появится следующее сообщение:
Telnet: подключение к порту
Как пользоваться ping и traceroute
Ping — это утилита, с помощью которой возможна проверка доступности сервера по IP с компьютера. Опрашиваемому узлу отправляются эхо-запросы (ICMP-пакеты Echo Request). Если до узла дошёл запрос, в ответ он должен отправить ICMP-пакет с принятыми данными и эхо-ответ (Echo Reply). Подробнее в статье Команда Ping.
Traceroute — это утилита, с помощью которой можно отследить путь запроса к серверу, а также проблемы, связанные с доступностью удалённого сервера. Утилита отправляет запрос узлу и последовательно опрашивает все маршрутизаторы на пути. Подробнее о работе утилиты и её установке читайте в статье Утилиты Traceroute и Tracert.
Если у вас кириллический домен
Кириллические домены необходимо вводить в формате Punycode. Для перевода домена в Punycode воспользуйтесь сервисом. Введите имя вашего домена и нажмите Конвертировать.
Чтобы проверить доступность сайта или IP адреса, выберите инструкцию для вашей ОС.
Windows
Linux
MacOS
-
1.
Нажмите Пуск или сочетание клавиш Win + R.
-
2.
В поле поиска введите «cmd» и нажмите кнопку ОК.
-
3.
В окне терминала введите нужную команду:
Запустите терминал. Для этого в поисковой строке введите слово «Терминал» или нажмите комбинацию клавиш Ctrl+Alt+T.
-
2.
В открывшемся окне терминала введите нужную команду:
-
1.
Найдите в Spotlight утилиту Network Utility (Сетевая утилита) и запустите её.
-
2.
В открывшейся программе выберите нужную вкладку:
Готово, мы рассмотрели, как пользоваться командой ping и как запустить tracert.
Результатом работы каждой из этих команд будет несколько строк в окне терминала. Результат команды ping покажет количество переданных и потерянных пакетов при обмене с узлом, а также время приёма и передачи. Результатом traceroute будет трассировка маршрута к узлу.
Вы можете скопировать полученный результат или прислать скриншот с результатом исполнения в службу поддержки.
Диагностика сети при помощи MTR
MTR — программа, которая сочетает функционал команд traceroute и ping в одном инструменте. MTR проверяет соединение между локальной системой и указанным узлом (IP или доменом). Программа отправляет запрос к узлу, как команда ping, и показывает маршрут пакета, как traceroute.
Windows
Linux
MacOS
Диагностика сети WinMTR:
-
2.
Распакуйте архив и запустите программу от имени администратора:
Centos: открытые порты
-
3.
Нажмите Options, в настройках отключите галочку Resolve names. Нажмите OK:
-
4.
В поле «Host» введите ваше доменное имя или IP-адрес. Нажмите Start:
-
5.
Когда число отправленных пакетов (колонка «Sent») будет более 200, нажмите Stop:
Диагностика сети Winmtr
org/HowToStep”>
6.
- Hostname — IP-адрес или домен узла. Значение «No response from host» говорит о блокировке ICMP-пакетов в узле;
- Loss % — процент потерянных ответов от данного узла. Например, при «No response from host» процент потерь равен 100 — значит, маршрутизатор не ответил на ICMP-запрос;
- Sent — количество отправленных запросов узлу;
- Recv — количество полученных ответов от узла;
- Best — наименьшее время задержки, мс;
- Avrg — среднее время задержки, мс;
- Worst — наибольшее время задержки, мс;
- Last — время задержки последнего полученного пакета, мс.
Скачайте дистрибутив WinMTR.
Нажмите Export TEXT и сохраните результат работы программы:
Centos: проверить открытые порты
Результат работы содержит:
На Linux утилита MTR установлена по умолчанию.
- org/HowToStep”>
1.
-
2.
Если утилита MTR не установлена, введите команды:
- для Ubuntu/Debian:
sudo apt install mtr
- для CentOS:
sudo yum install mtr
- для Fedora:
sudo dnf install mtr
- для Ubuntu/Debian:
-
3.
Введите команду:
mtr -n -c 300 -r 123.123.123.123
Где 123.123.123.123 — IP-адрес вашего сайта.
-
4.
Дождитесь окончания выполнения запроса. В окне терминала вы увидите результат работы утилиты MTR:
Результат работы содержит:
- HOST — IP-адрес или домен узла.
Значение «???» говорит о блокировке ICMP-пакетов в узле;
- Loss% — процент потерянных ответов от данного узла. Например, при «???» процент потерь равен 100 — значит, маршрутизатор не ответил на ICMP-запрос;
- Snt — количество отправленных запросов узлу;
- Last — время задержки последнего полученного пакета, мс;
- Avg — среднее время задержки, мс;
- Best — наименьшее время задержки, мс;
- Wrst — наибольшее время задержки, мс;
- StDev — среднеквадратичное отклонение времени задержки, мс.
- HOST — IP-адрес или домен узла.
Запустите терминал. Для этого в поисковой строке введите слово «Терминал» или нажмите комбинацию клавиш Ctrl+Alt+T.
В MacOS MTR не установлена по умолчанию. Чтобы установить MTR вручную:
-
1.
Запустите терминал. Для этого нажмите Cmd + Пробел, в поисковой строке введите слово «Терминал» и нажмите Enter.
org/HowToStep”>
2.
-
3.
Затем установите MTR командой:
brew install mtr
-
4.
После установки запустите MTR:
sudo /usr/local/sbin/mtr yourdomain.com
Где yourdomain.com — ваш домен. Для выполнения команды также потребуется ввести пароль пользователя.
-
5.
Подождите примерно 10 минут, пока MTR отправит около 300 пакетов и соберёт информацию о задержках и потерях. В окне терминала вы увидите результат работы утилиты MTR:
Результат должен содержать:
- Host — IP-адрес или домен узла. Значение «???» говорит о блокировке ICMP-пакетов в узле;
- Loss % — процент потерянных ответов от данного узла. Например, при «???» процент потерь равен 100 — значит, маршрутизатор не ответил на ICMP-запрос;
- Snt — количество отправленных запросов узлу;
- Last — время задержки последнего полученного пакета, мс;
- Avg — среднее время задержки, мс;
- Best — наименьшее время задержки, мс;
- Wrst — наибольшее время задержки, мс;
- StDev — среднеквадратичное отклонение времени задержки, мс.
Если у вас не установлен пакетный менеджер Brew, установите его командой:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" /dev/null
Для выполнения команды укажите пароль пользователя. При успешном результате появится уведомление с текстом «Installation successful!»
Если вы обнаружили потери на промежуточных узлах, проблемы нет. Промежуточные маршрутизаторы могут не отвечать на ICMP-запросы, а просто пропускать дальше трафик. Если же потери обнаружены на конечном узле, отправьте результат работы программы в службу поддержки. В сообщении укажите ваш внешний IP-адрес. Узнать IP-адрес можно на сайте REG.RU.
Как просмотреть журналы сайтов
Журналы сайтов расположены в корневой директории хостинга в папке logs. Логи хостинга можно просмотреть как через хостинг-панели управления, так и по FTP и SSH. Подробнее о том, что такое логи, зачем они нужны и как их читать мы описали в статье Логи сервера.
В панели управления хостингом
ISPmanager
cPanel
Plesk
-
1.
Войдите в панель управления хостингом.
-
2.
Перейдите в Менеджер файлов, а затем в директорию logs:
org/HowToStep”>
3.
Для просмотра журнала скачайте необходимый файл на локальный ПК. Для этого выделите строку с названием журнала и нажмите кнопку Скачать:
Обратите внимание: если вид вашей панели управления отличается от представленного в статье, в разделе «Основная информация» переключите тему с paper_lantern на jupiter.
-
1.
Войдите в панель управления хостингом.
-
2.
В разделе «Файлы» нажмите Менеджер файлов:
-
3.
Кликните на папку logs:
org/HowToStep”>
4.
Выделите строку с названием нужного типа файла и нажмите Скачать:
-
1.
Войдите в панель управления хостингом.
-
2.
Перейдите во вкладку «Файлы», а затем в директорию logs:
-
3.
Для просмотра журнала скачайте необходимый файл на локальный ПК. Для этого выделите строку с названием журнала и нажмите кнопку Скачать:
По FTP или SSH
FTP
SSH
-
1.
Подключитесь к хостингу по протоколу FTP.
-
2.
Перейдите в директорию logs:
-
3.
Откройте необходимый файл журнала:
-
1.
Подключитесь к хостингу по протоколу SSH.
-
2.
Введите команды
cd logs
иls -all
, чтобы посмотреть содержимое папки logs: -
3.
Откройте необходимый файл журнала.
Теперь вы знаете, как проверить, открыт ли порт на сервере, как использовать ping и traceroute, и как посмотреть логи сайта.
Помогла ли вам статья?
Да
раз уже помогла
Test-NetConnection: проверка открытых/закрытых TCP портов из PowerShell
В PowerShell 4.0 (Windows 2012 R2, Windows 8.1 и выше) появился встроенный командлет для проверки сетевых соединений — Test-NetConnection. С помощью данного командлета вы можете проверить доступность удаленного сервера или сетевой службы на нем, блокировку TCP портов файерволами, проверить доступность по ICMP и маршрутизацию. По сути, командлет Test-NetConnection
позволяет заменить сразу несколько привычных сетевых утилит: ping, traceroute, сканер TCP портов и т.д.
Содержание:
- TCP Port Ping: Использование Test-NetConnection для проверки открытых портов и доступности серверов
- Test-NetConnection в скриптах мониторинга
- Сканер сети на PowerShell
Любому администратору периодически приходится проверять доступность службы на удаленном сервере путем проверки ответа от удаленного TCP порта (например, доступность почтового или веб сервера). Причем, все привыкли, что такую проверку быстрее всего выполнить с помощью команды telnet. Например, для проверки доступности SMTP службы на почтовом сервере (по умолчанию он отвечает на 25 TCP порту) достаточно выполнить команду
telnet msk-msg01.winitpro.ru 25
. Но начиная с Windows 7 клиент telnet выделен в отдельный компонент, который нужно устанавливать отдельно. Посмотрим, как выполнить аналогичное действие в PowerShell.
Основное преимущество командлета Test-NetConnection – он уже входит в состав всех современных версий Windows и вам не нужно устанавливать его отдельно. Командлет входит в состав модуля NetTCPIP (начиная с PoSh v4.0).
TCP Port Ping: Использование Test-NetConnection для проверки открытых портов и доступности серверов
Проверим, открыт ли порт TCP 25 (SMTP протокол) на почтовом сервере с помощью Test-NetConnection:
Test-NetConnection -ComputerName msk-msg01 -Port 25
Примечание. С помощью командлета Test-NetConnection можно проверить только TCP соединение, для проверки доступности UDP портов он не применим.
В сокращенном виде аналогичная команда выглядит так:
TNC msk-mail1 -Port 25
Разберем результат команды:
ComputerName : msk-msg01 RemoteAddress : 10.10.1.7 RemotePort : 25 InterfaceAlias : CORP SourceAddress : 10.10.1.70 PingSucceeded : True PingReplyDetails (RTT) : 0 ms TcpTestSucceeded : True
Как вы видите, командлет выполняет разрешение имени сервера в IP адрес, выполняется проверка ответа ICMP (аналог ping) и доступность TCP порта. Указанный сервер доступен по ICMP ( PingSucceeded = True
) и 25 TCP порт также отвечает ( RemotePort=25, TcpTestSucceeded= True
).
Примечание. В некоторых случаях может оказаться, что PingSucceeded=False, а TcpTestSucceeded= True. Скорее всего означает, что на удаленном сервере запрещен ICMP Ping.
У командлета есть специальный параметр –CommonTCPPort, позволяющий указать наименование известного сетевого протокола (HTTP, RDP, SMB, WINRM).
Например, чтобы проверить доступность веб-сервера, можно использовать команду:
Test-NetConnection -ComputerName winitpro.ru -CommonTCPPort HTTP
Или доступность RDP порта (3389):
Test-NetConnection msk-rds1 –CommonTCPPort RDP
Можно вывести все параметры, которые возвращает командлет Test-NetConnection:
Test-NetConnection msk-man01 -port 445|Format-List *
Если нужна только информация по доступности TCP порта, в более лаконичном виде проверка может быть выполнена так:
TNC msk-mail1 -Port 25 -InformationLevel Quiet
Командлет вернул True, значит удаленный порт доступен.
В Windows 10/ Windows Server 2016 вы можете использовать командлет Test-NetConnection для трассировки маршрута до удаленного сервера при помощи параметра –TraceRoute (аналог tracert). С помощью параметра –Hops можно ограничить максимальное количество хопов при проверке.
Test-NetConnection msk-man01 –TraceRoute
Командлет вернул сетевую задержку при доступе к серверу в милисекундах ( PingReplyDetails (RTT) : 41 ms
) и все IP адреса маршрутизаторов на пути до целевого сервера.
Test-NetConnection в скриптах мониторинга
Следующая команда позволить проверить доступность определенного порта на множестве серверов, список которых хранится в текстовом файле servers.txt. Нас интересуют сервера, где искомая служба не отвечает:
Get-Content c:\Distr\servers.txt | where { -NOT (Test-Netconnection $_ -Port 25 -InformationLevel Quiet)}| Format-Table –AutoSize
Аналогичным образом вы можете создать простейшую систему мониторинга, которая проверяет доступность серверов и выводит уведомление, если один из серверов недоступен.
Например, вы можете проверить доступность основных служб на всех контроллеров домена (список DC можно получить командлетом Get-ADDomainController). Проверим следующие службы на DC (в утилите PortQry есть аналогичное правило Domain and trusts):
- RPC – TCP/135
- LDAP – TCP/389
- LDAP – TCP/3268
- DNS – TCP/53
- Kerberos – TCP/88
- SMB – TCP/445
$Ports = "135","389","636","3268","53","88","445","3269", "80", "443"
$AllDCs = Get-ADDomainController -Filter * | Select-Object Hostname,Ipv4address,isGlobalCatalog,Site,Forest,OperatingSystem
ForEach($DC in $AllDCs)
{
Foreach ($P in $Ports){
$check=Test-NetConnection $DC -Port $P -WarningAction SilentlyContinue
If ($check.tcpTestSucceeded -eq $true)
{Write-Host $DC.name $P -ForegroundColor Green -Separator " => "}
else
{Write-Host $DC.name $P -Separator " => " -ForegroundColor Red}
}
Скрипт проверит указанные TCP порты на контроллерах домена, и, если один из портов недоступен, выделит его красным цветом (с небольшими доработками можно запустить данный PowerShell скрипт как службу Windows).
Сканер сети на PowerShell
Также вы можете реализовать простой сканер портов и IP подсетей для сканирования удаленных серверов или подсетей на открытые/закрытые TCP порты.
Просканируем диапазон IP адресов на открытый порт 3389:
foreach ($ip in 5..30) {Test-NetConnection -Port 3389 -InformationLevel "Detailed" 10.10.10.$ip}
Просканируем диапазон TCP портов от 1 до 1024 на указанном сервере:
foreach ($port in 1..1024) {If (($a=Test-NetConnection srvfs01 -Port $port -WarningAction SilentlyContinue).tcpTestSucceeded -eq $true){ "TCP port $port is open!"}}
10 способов проверки портов в Linux для устранения неполадок в системах и масло за бизнес-операциями включает в себя общение. А именно, обеспечение связи систем и устройств друг с другом по сетям для доступа или обмена данными, обеспечения безопасности и мониторинга операций.
При использовании TCP/IP процесс проверки портов на предмет их настройки, прослушивания и приема трафика является стандартной процедурой для системных и сетевых администраторов. Порты связаны с процессами, работающими в целевых системах, таких как веб-серверы, серверы электронной почты, контроллеры домена Active Directory и другие централизованные ресурсы. Сбор информации о них необходим для правильной коммуникативной функциональности.
SEE: Linux исполняется 30 лет: Празднование операционной системы с открытым исходным кодом (бесплатный PDF) (TechRepublic)
Вот 10 способов работы с портами с помощью Linux для устранения неполадок и поддержания операций.
Как проверить, какие протоколы и порты связаны с данной службой
Эта команда может показать вам справочное руководство, в котором будут указаны протоколы и порты, используемые (теоретически) любой службой, если вам нужна дополнительная информация. Он не показывает вам, что активно прослушивается, а скорее используется, чтобы помочь сузить круг того, что можно или нужно использовать для любой заданной функции, такой как FTP или SSH.
Прогон:
кошка /etc/services | меньше
В выводе будет показан обширный список десятков служб и связанных с ними портов, которые помогут вам послужить ориентиром.
Как проверить, какие порты активно подключены к локальной системе или из нее
Запустите команду ss
, и вы увидите список портов, к которым подключена конкретная система, локально или удаленно: Детали будут зависеть от используемой системы и функций.
Как использовать nmap для сканирования удаленной системы на наличие открытых портов
Утилита nmap, также известная как ncat, представляет собой удобный швейцарский армейский нож, работающий в Linux и Windows, который можно использовать для просмотра открытых портов в удаленной системе. Имейте в виду, что сканирование портов может привлечь внимание службы безопасности, поэтому делайте это только в разрешенных деловых целях.
Допустим, вы хотите посмотреть, какие порты открыты на веб-сайте удаленной системы для Microsoft.
Открытый исходный код: обязательный к прочтению обзор
- Репозиторий с открытым исходным кодом SourceHut для удаления всех проектов, связанных с криптовалютой
- Этот путь обучения Linux поможет вам начать использовать ОС на профессиональном уровне.
- Btop — это значительно улучшенная версия команды top в Linux.
- Контрольный список Oracle Linux: что делать после установки
В Linux введите:
nmap microsoft.com
Результаты покажут открытые порты на этом узле, как показано ниже:
Запуск Nmap 7.92 ( https://nmap.org ) 05.05.2022 15:32 по восточному летнему времени
Отчет сканирования Nmap для microsoft.com (20.81.111.85)
Хост работает (задержка 0,018 с).
Другие адреса для microsoft.com (не отсканированы): 20.84.181.62 20.103.85.33 20.53.203.50 20.112.52.29
Не показано: 998 отфильтрованных TCP-портов (нет ответа)
ПОРТ ГОСУДАРСТВЕННАЯ СЛУЖБА
80/tcp открыть http
443/tcp открыть https
Nmap выполнен: 1 IP-адрес (1 хост включен) просканирован за 47,51 секунды
Чтобы проверить наличие определенного порта, например 443, запустите nmap -p 443 microsoft.
. com
Вы можете проверить несколько портов, таких как 80 и 443, с помощью nmap -p 80,443 microsoft.com
.
Как проверить локальную систему, чтобы узнать, какое приложение связано с портом
Допустим, вы хотите узнать, какое локальное приложение прослушивает порт 8443.
Прогон:
netstat -tulpn | грэп 8443
Это вернет идентификатор процесса (PID), например 8971 (может быть несколько PID), а также имя приложения (в данном случае это Java).
Как убить приложение или службу, связанную с определенным портом
Это может пригодиться для приложений или служб, которые вы не узнаете и подозреваете, что они могут быть вредоносными. Следуйте приведенной выше команде, чтобы получить PID, затем запустите:
убить -9 (PID)
При необходимости повторите для каждого PID, чтобы завершить процесс.
Как проверить удаленную систему с помощью telnet, чтобы узнать, прослушивается ли порт и можно ли подключиться к
Допустим, вы хотите узнать, прослушивает ли удаленная система host. company.com порт 443 и может ли к ней подключиться.
Прогон:
telnet host.company com 443
Если вы видите ответ Connected, хост прослушивает этот порт и к нему можно подключиться.
Если вы получаете сообщение об ошибке «Отказано в подключении» или время ожидания соединения истекло, хост либо не прослушивается, либо доступ с этого хоста заблокирован, либо вы не можете получить доступ к хосту (проверьте доступ к брандмауэру).
Как проверить удаленную систему без telnet, чтобы узнать, прослушивается ли порт и может ли он быть подключен к
Не на каждой системе установлен telnet, и хотя обычно вы можете установить его из репозитория yum с помощью yum install telnet, иногда репозитории не содержат этот пакет или система заблокирована, что препятствует установке любого программного обеспечения. Вы также можете слишком торопиться с установкой yum. Допустим, вы хотите узнать, прослушивает ли хост с IP-адресом 10.37.39.141 порт 636:
.
эхо > /dev/tcp/10.37.39.141/636
По иронии судьбы, если вы не получили ответа, это на самом деле хорошо и означает, что доступ сработал.
Если вы получаете сообщение об ошибке «Отказано в подключении» или время ожидания соединения истекло, хост либо не прослушивается, либо доступ с этого хоста заблокирован, либо вы не можете получить доступ к хосту (проверьте доступ к брандмауэру).
Как проверить удаленную систему с помощью curl, чтобы узнать, прослушивается ли TCP-порт
Это дает тот же результат, что и предыдущий шаг, но это удобный способ сориентироваться в приложении curl.
Допустим, вы хотите узнать, прослушивает ли хост с IP-адресом 10.37.34.21 порт 16667:
Прогон:
завиток -v телнет://10.37.34.21:16667
Если вы видите ответ Connected, хост прослушивает этот порт и к нему можно подключиться.
Если вы получаете сообщение об ошибке «Отказано в подключении» или время ожидания соединения истекло, хост либо не прослушивается, либо доступ с этого хоста заблокирован, либо вы не можете получить доступ к хосту (проверьте доступ к брандмауэру).
Обратите внимание, что это работает только для портов TCP.
Как проверить, какой сертификат SSL прослушивается на порту
Это один из моих фаворитов, и он спас меня во время замены SSL-сертификата, чтобы убедиться, что все сделано правильно.
Допустим, у вас есть сервер с именем splunk.company.com с SSL-сертификатом, подключенным к порту 8000, который вы только что заменили и хотите подтвердить его наличие.
Прогон:
openssl s_client -connect splunk.company.litle.com:8000 2>/dev/null | openssl x509-ноут
Это вернет полную информацию о сертификате SSL, такую как CN и эмитент.
Как проверить дату истечения срока действия SSL-сертификата, прослушивающего порт
Чтобы быстро установить, что соответствующий сервер имеет правильный сертификат, подключенный к этому порту, запустите:
openssl s_client -connect splunk.company.litle.com:8000 2>/dev/null | openssl x509 -noout -даты
Это вернет вывод, аналогичный следующему:
notBefore=31 мая 21:46:06 2021 GMT
notAfter=31 мая 21:56:06 2022 GMT
Имея в виду приведенную выше информацию, вы можете быть спокойны, зная, что правильный сертификат установлен.
Как определить, открыт ли порт на сервере Windows?
спросил
Изменено 6 месяцев назад
Просмотрено 2,1 млн раз
Закрыто. Этот вопрос не соответствует правилам переполнения стека. В настоящее время ответы не принимаются.
Закрыт 3 года назад.
- Этот вопрос не относится к конкретной проблеме программирования, программному алгоритму или программным инструментам, которые в основном используются программистами. Если вы считаете, что вопрос будет актуален на другом сайте Stack Exchange, вы можете оставить комментарий, чтобы объяснить, где на этот вопрос можно ответить.
- Этот вопрос не относится к конкретной проблеме программирования, программному алгоритму или программным инструментам, которые в основном используются программистами.
Если вы считаете, что вопрос будет актуален на другом сайте Stack Exchange, вы можете оставить комментарий, чтобы объяснить, где на этот вопрос можно ответить.
Улучшить этот вопрос
Я пытаюсь установить сайт под альтернативным портом на сервере, но порт может быть закрыт брандмауэром. Есть ли способ пропинговать или войти на определенный порт, чтобы увидеть, открыт ли он?
- windows-server-2003
- порт
- пинг
1
Предполагая, что вы пытаетесь использовать порт TCP (а не UDP):
На самом сервере используйте
netstat -an
, чтобы проверить, какие порты прослушиваются.Извне просто используйте
telnet host port
(илиtelnet host:port
в системах Unix), чтобы увидеть, было ли отклонено соединение, принято или истекло время ожидания.
В этом последнем тесте, а затем в целом:
- соединение отклонено означает, что на этом порту ничего не работает
- принято означает, что что-то работает на этом порту
- тайм-аут означает, что брандмауэр блокирует доступ
В Windows 7 или Windows Vista опция telnet по умолчанию не распознается как внутренняя или внешняя команда, исполняемая программа или пакетный файл. Чтобы решить эту проблему, просто включите его: Нажмите *Пуск** → Панель управления → Программы → Включение или отключение компонентов Windows . В списке прокрутите вниз и выберите Telnet Client и нажмите OK .
10
В Windows вы можете использовать
netstat -na | findstr "ваш_порт"
, чтобы сузить результаты. Вы также можете отфильтровать LISTENING
, ESTABLISHED
, TCP
и тому подобное. Имейте в виду, что это чувствительно к регистру.
8
Если вы проверяете извне, а не с самого сервера, и не хотите заморачиваться установкой телнета (поскольку его нет в последних версиях Windows) или любого другого софта, то у вас есть родной PowerShell:
Test-NetConnection -Port 800 -ComputerName 192.168.0.1 -InformationLevel Подробно
(К сожалению, это работает только с PowerShell 4.0 или новее. Чтобы проверить версию PowerShell, введите $PSVersionTable
.)
PS: Обратите внимание, что в последнее время в твиттер-сфере есть некоторые заявления, намекающие на то, что этот ответ можно улучшить, если упоминание «Test-Connection» из PowerShell Core или ярлык «tnc». См. https://twitter.com/david_obrien/status/1214082339203993600 и помогите мне отредактировать этот ответ, чтобы улучшить его, пожалуйста!
(Если у вас PSVersion < 4.0, вам не повезло. Проверьте эту таблицу:
Несмотря на то, что вы можете обновить свою версию PowerShell, установив Windows Management Framework 4. 0, это не помогло трюк для меня, командлет Test-NetConnection по-прежнему недоступен).
6
Я сделал так:
netstat -an | найти "8080"
через телнет
телнет 192.168.100.132 8080
И просто убедитесь, что на этой машине отключен брандмауэр.
3
На компьютере с Windows вы можете использовать PortQry от Microsoft, чтобы проверить, прослушивает ли приложение определенный порт, используя следующую команду:
portqry -n 11.22.33.44 -p tcp -e 80
2
Если telnet
недоступен, загрузите PuTTY. Это гораздо более совершенный клиент Telnet, SSH и т. д., и он будет полезен во многих ситуациях, не только в этой, особенно если вы управляете сервером.
1
Используйте это, если вы хотите увидеть все используемые и прослушиваемые порты на сервере Windows:
netstat -an |find /i "прослушивание"
Посмотреть все открытые, прослушиваемые, установленные порты:
netstat -a
0
Вам нужен инструмент для этого? Существует веб-сайт http://www. canyouseeme.org/. В противном случае вам понадобится какой-то другой сервер, чтобы перезвонить вам, чтобы узнать, открыт ли порт…
В Windows Server вы можете использовать
netstat -an | где{$_.Содержит("Вашпорт")}
3
Другой вариант — tcping.
Например:
порт хоста tcping
PsPing от Sysinternals тоже очень хорош.
1
Вот что у меня сработало:
- Открыть командную строку
- Тип
телнет
- Microsoft Telnet>открыть <имя хоста или IP-адрес><пробел><порт>
Это подтвердит, открыт ли порт.
0
Еще одна утилита, которую я нашел, и она также хороша и мала, — PortQry Command Line Port Scanner версии 2.0.
Вы можете пропинговать сервер и порт, и он сообщит вам о состоянии порта.