[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"page-ru-/guides/linux/check-system-logs":3,"mdc--z92zty-key":1419,"mdc--hc1mw4-key":1456,"mdc--at0pnv-key":1487,"mdc--appyd4-key":1512,"mdc-2rko6o-key":1537,"mdc-m0yu37-key":1545,"mdc-8m4low-key":1581,"mdc-9mmm5g-key":1610,"mdc-rgcmvu-key":1640,"mdc--ae56ru-key":1664,"related-/guides/linux/systemd-service-management,/guides/linux/ssh-connection-issues,/errors/linux/ssh-connection-refused":1686},{"id":4,"title":5,"appliesTo":6,"author":9,"body":10,"canonical":1349,"code":1349,"createdAt":1350,"description":1351,"difficulty":1352,"draft":1353,"estimatedTime":1354,"extension":1355,"faq":1356,"howToSteps":1369,"howToTotalTime":1388,"image":1349,"keywords":1389,"locale":1399,"meta":1400,"navigation":1013,"path":1401,"platform":1402,"related":1403,"section":1407,"seo":1408,"severity":1349,"stem":1409,"summary":1410,"tags":1411,"twitterCreator":1349,"twitterSite":1349,"type":1417,"updatedAt":1350,"__hash__":1418},"content_ru/guides/linux/check-system-logs.md","Проверка системных логов в Linux: полное руководство по journalctl и syslog",[7,8],"Linux с systemd (Ubuntu 20.04+, Debian 11+, CentOS 8+, Fedora)","Любой дистрибутив с syslog (rsyslog, syslog-ng)","FixPedia Team",{"type":11,"value":12,"toc":1298},"minimark",[13,18,22,28,52,56,59,104,108,113,118,139,156,160,196,200,249,253,284,288,315,349,353,384,388,433,437,442,446,482,486,533,537,550,568,572,579,583,609,613,672,676,693,697,714,718,724,728,824,828,872,876,879,883,902,906,929,933,949,953,960,982,986,990,1031,1039,1047,1053,1057,1064,1070,1074,1077,1099,1109,1113,1119,1135,1139,1165,1172,1190,1194,1208,1212,1231,1234,1238,1291,1294],[14,15,17],"h2",{"id":16},"введение-зачем-это-нужно","Введение / Зачем это нужно",[19,20,21],"p",{},"Системные логи в Linux — это главный источник информации о работе операционной системы, служб и приложений. При возникновении ошибок (сбой службы, проблемы с сетью, аппаратные сбои) первым делом нужно обратиться к логам. Это руководство поможет вам освоить основные инструменты для просмотра, фильтрации и анализа логов, что значительно ускорит диагностику проблем.",[19,23,24],{},[25,26,27],"strong",{},"Что вы получите:",[29,30,31,40,46,49],"ul",{},[32,33,34,35,39],"li",{},"Умение быстро находить логи systemd с помощью ",[36,37,38],"code",{},"journalctl",".",[32,41,42,43,39],{},"Навык работы с текстовыми логами в ",[36,44,45],{},"/var/log/",[32,47,48],{},"Понимание различий между журналом systemd и классическим syslog.",[32,50,51],{},"Способность фильтровать логи по времени, сервису, уровню важности.",[14,53,55],{"id":54},"требования-подготовка","Требования / Подготовка",[19,57,58],{},"Перед началом убедитесь, что:",[60,61,62,65,78,91],"ol",{},[32,63,64],{},"У вас есть доступ к терминалу Linux (локально или через SSH).",[32,66,67,68,71,72,74,75,77],{},"Для чтения системных логов обычно требуются права ",[25,69,70],{},"sudo"," (особенно для ",[36,73,38],{}," и файлов в ",[36,76,45],{},").",[32,79,80,81,84,85,88,89,39],{},"Ваша система использует ",[25,82,83],{},"systemd"," (проверьте командой ",[36,86,87],{},"systemctl","). Если systemd нет, работайте только с текстовыми логами в ",[36,90,45],{},[32,92,93,94,97,98,97,101,39],{},"Базовые навыки работы с командной строкой: навигация, использование ",[36,95,96],{},"grep",", ",[36,99,100],{},"less",[36,102,103],{},"tail",[14,105,107],{"id":106},"шаг-1-основы-работы-с-journalctl-systemd-журнал","Шаг 1: Основы работы с journalctl (systemd-журнал)",[19,109,110,111,39],{},"Большинство современных дистрибутивов (Ubuntu, Fedora, CentOS 8+) используют systemd-journald для сбора логов. Этот журнал хранится в бинарном формате и доступен через утилиту ",[36,112,38],{},[114,115,117],"h3",{"id":116},"просмотр-всех-логов","Просмотр всех логов",[119,120,125],"pre",{"className":121,"code":122,"language":123,"meta":124,"style":124},"language-bash shiki shiki-themes github-light github-dark","sudo journalctl\n","bash","",[36,126,127],{"__ignoreMap":124},[128,129,132,135],"span",{"class":130,"line":131},"line",1,[128,133,70],{"class":134},"sScJk",[128,136,138],{"class":137},"sZZnC"," journalctl\n",[19,140,141,142,145,146,149,150,97,152,155],{},"Эта команда выведет ",[25,143,144],{},"все"," записи журнала с начала загрузки. Используйте стрелки для прокрутки, ",[36,147,148],{},"/"," для поиска внутри ",[36,151,100],{},[36,153,154],{},"q"," для выхода.",[114,157,159],{"id":158},"просмотр-последних-записей","Просмотр последних записей",[119,161,163],{"className":121,"code":162,"language":123,"meta":124,"style":124},"sudo journalctl -n 50  # последние 50 строк\nsudo journalctl -f     # следить за логом в реальном времени (как tail -f)\n",[36,164,165,183],{"__ignoreMap":124},[128,166,167,169,172,176,179],{"class":130,"line":131},[128,168,70],{"class":134},[128,170,171],{"class":137}," journalctl",[128,173,175],{"class":174},"sj4cs"," -n",[128,177,178],{"class":174}," 50",[128,180,182],{"class":181},"sJ8bj","  # последние 50 строк\n",[128,184,186,188,190,193],{"class":130,"line":185},2,[128,187,70],{"class":134},[128,189,171],{"class":137},[128,191,192],{"class":174}," -f",[128,194,195],{"class":181},"     # следить за логом в реальном времени (как tail -f)\n",[114,197,199],{"id":198},"фильтрация-по-времени","Фильтрация по времени",[119,201,203],{"className":121,"code":202,"language":123,"meta":124,"style":124},"sudo journalctl --since \"2026-02-16 09:00:00\" --until \"2026-02-16 10:00:00\"\nsudo journalctl --since 1h   # за последний час\nsudo journalctl --since today\n",[36,204,205,223,237],{"__ignoreMap":124},[128,206,207,209,211,214,217,220],{"class":130,"line":131},[128,208,70],{"class":134},[128,210,171],{"class":137},[128,212,213],{"class":174}," --since",[128,215,216],{"class":137}," \"2026-02-16 09:00:00\"",[128,218,219],{"class":174}," --until",[128,221,222],{"class":137}," \"2026-02-16 10:00:00\"\n",[128,224,225,227,229,231,234],{"class":130,"line":185},[128,226,70],{"class":134},[128,228,171],{"class":137},[128,230,213],{"class":174},[128,232,233],{"class":137}," 1h",[128,235,236],{"class":181},"   # за последний час\n",[128,238,240,242,244,246],{"class":130,"line":239},3,[128,241,70],{"class":134},[128,243,171],{"class":137},[128,245,213],{"class":174},[128,247,248],{"class":137}," today\n",[114,250,252],{"id":251},"фильтрация-по-сервису","Фильтрация по сервису",[119,254,256],{"className":121,"code":255,"language":123,"meta":124,"style":124},"sudo journalctl -u sshd.service   # логи службы SSH\nsudo journalctl -u nginx.service\n",[36,257,258,273],{"__ignoreMap":124},[128,259,260,262,264,267,270],{"class":130,"line":131},[128,261,70],{"class":134},[128,263,171],{"class":137},[128,265,266],{"class":174}," -u",[128,268,269],{"class":137}," sshd.service",[128,271,272],{"class":181},"   # логи службы SSH\n",[128,274,275,277,279,281],{"class":130,"line":185},[128,276,70],{"class":134},[128,278,171],{"class":137},[128,280,266],{"class":174},[128,282,283],{"class":137}," nginx.service\n",[114,285,287],{"id":286},"фильтрация-по-уровню-важности-приоритету","Фильтрация по уровню важности (приоритету)",[19,289,290,291,97,294,97,297,97,300,97,303,97,306,97,309,97,312,39],{},"Уровни: ",[36,292,293],{},"emerg",[36,295,296],{},"alert",[36,298,299],{},"crit",[36,301,302],{},"err",[36,304,305],{},"warning",[36,307,308],{},"notice",[36,310,311],{},"info",[36,313,314],{},"debug",[119,316,318],{"className":121,"code":317,"language":123,"meta":124,"style":124},"sudo journalctl -p err   # только ошибки\nsudo journalctl -p warning..err  # от warning до err включительно\n",[36,319,320,335],{"__ignoreMap":124},[128,321,322,324,326,329,332],{"class":130,"line":131},[128,323,70],{"class":134},[128,325,171],{"class":137},[128,327,328],{"class":174}," -p",[128,330,331],{"class":137}," err",[128,333,334],{"class":181},"   # только ошибки\n",[128,336,337,339,341,343,346],{"class":130,"line":185},[128,338,70],{"class":134},[128,340,171],{"class":137},[128,342,328],{"class":174},[128,344,345],{"class":137}," warning..err",[128,347,348],{"class":181},"  # от warning до err включительно\n",[114,350,352],{"id":351},"просмотр-логов-за-текущую-загрузку","Просмотр логов за текущую загрузку",[119,354,356],{"className":121,"code":355,"language":123,"meta":124,"style":124},"sudo journalctl -b       # текущая загрузка\nsudo journalctl -b -1    # предыдущая загрузка\n",[36,357,358,370],{"__ignoreMap":124},[128,359,360,362,364,367],{"class":130,"line":131},[128,361,70],{"class":134},[128,363,171],{"class":137},[128,365,366],{"class":174}," -b",[128,368,369],{"class":181},"       # текущая загрузка\n",[128,371,372,374,376,378,381],{"class":130,"line":185},[128,373,70],{"class":134},[128,375,171],{"class":137},[128,377,366],{"class":174},[128,379,380],{"class":174}," -1",[128,382,383],{"class":181},"    # предыдущая загрузка\n",[114,385,387],{"id":386},"поиск-по-тексту","Поиск по тексту",[119,389,391],{"className":121,"code":390,"language":123,"meta":124,"style":124},"sudo journalctl | grep -i \"failed\"  # поиск слова \"failed\" (без учета регистра)\nsudo journalctl | grep -i \"error\\|fail\"  # несколько паттернов\n",[36,392,393,415],{"__ignoreMap":124},[128,394,395,397,399,403,406,409,412],{"class":130,"line":131},[128,396,70],{"class":134},[128,398,171],{"class":137},[128,400,402],{"class":401},"szBVR"," |",[128,404,405],{"class":134}," grep",[128,407,408],{"class":174}," -i",[128,410,411],{"class":137}," \"failed\"",[128,413,414],{"class":181},"  # поиск слова \"failed\" (без учета регистра)\n",[128,416,417,419,421,423,425,427,430],{"class":130,"line":185},[128,418,70],{"class":134},[128,420,171],{"class":137},[128,422,402],{"class":401},[128,424,405],{"class":134},[128,426,408],{"class":174},[128,428,429],{"class":137}," \"error\\|fail\"",[128,431,432],{"class":181},"  # несколько паттернов\n",[14,434,436],{"id":435},"шаг-2-работа-с-классическими-текстовыми-логами-varlog","Шаг 2: Работа с классическими текстовыми логами (/var/log)",[19,438,439,440,39],{},"Если ваша система не использует systemd или вам нужны логи конкретных приложений, смотрите файлы в ",[36,441,45],{},[114,443,445],{"id":444},"основные-файлы-логов","Основные файлы логов",[29,447,448,454,460,466,476],{},[32,449,450,453],{},[36,451,452],{},"/var/log/syslog"," (Debian/Ubuntu) — общий системный лог.",[32,455,456,459],{},[36,457,458],{},"/var/log/messages"," (RHEL/CentOS/Fedora) — аналогично syslog.",[32,461,462,465],{},[36,463,464],{},"/var/log/kern.log"," — логи ядра.",[32,467,468,471,472,475],{},[36,469,470],{},"/var/log/auth.log"," (Debian) / ",[36,473,474],{},"/var/log/secure"," (RHEL) — аутентификация, SSH, sudo.",[32,477,478,481],{},[36,479,480],{},"/var/log/dmesg"," — вывод dmesg при последней загрузке.",[114,483,485],{"id":484},"просмотр-и-мониторинг","Просмотр и мониторинг",[119,487,489],{"className":121,"code":488,"language":123,"meta":124,"style":124},"sudo tail -f /var/log/syslog   # следить за обновлениями\nsudo less /var/log/auth.log    # просмотреть с навигацией\nsudo grep \"sshd\" /var/log/auth.log  # найти упоминания sshd\n",[36,490,491,506,519],{"__ignoreMap":124},[128,492,493,495,498,500,503],{"class":130,"line":131},[128,494,70],{"class":134},[128,496,497],{"class":137}," tail",[128,499,192],{"class":174},[128,501,502],{"class":137}," /var/log/syslog",[128,504,505],{"class":181},"   # следить за обновлениями\n",[128,507,508,510,513,516],{"class":130,"line":185},[128,509,70],{"class":134},[128,511,512],{"class":137}," less",[128,514,515],{"class":137}," /var/log/auth.log",[128,517,518],{"class":181},"    # просмотреть с навигацией\n",[128,520,521,523,525,528,530],{"class":130,"line":239},[128,522,70],{"class":134},[128,524,405],{"class":137},[128,526,527],{"class":137}," \"sshd\"",[128,529,515],{"class":137},[128,531,532],{"class":181},"  # найти упоминания sshd\n",[114,534,536],{"id":535},"ротация-логов","Ротация логов",[19,538,539,540,542,543,97,546,549],{},"Файлы в ",[36,541,45],{}," часто сжимаются и ротируются (например, ",[36,544,545],{},"syslog.1",[36,547,548],{},"syslog.2.gz","). Для просмотра сжатых файлов:",[119,551,553],{"className":121,"code":552,"language":123,"meta":124,"style":124},"zcat /var/log/syslog.2.gz | less\n",[36,554,555],{"__ignoreMap":124},[128,556,557,560,563,565],{"class":130,"line":131},[128,558,559],{"class":134},"zcat",[128,561,562],{"class":137}," /var/log/syslog.2.gz",[128,564,402],{"class":401},[128,566,567],{"class":134}," less\n",[14,569,571],{"id":570},"шаг-3-использование-dmesg-для-логов-ядра","Шаг 3: Использование dmesg для логов ядра",[19,573,574,575,578],{},"Команда ",[36,576,577],{},"dmesg"," показывает кольцевой буфер ядра Linux. Полезна для диагностики аппаратных проблем, ошибок драйверов, загрузки.",[114,580,582],{"id":581},"просмотр-буфера-ядра","Просмотр буфера ядра",[119,584,586],{"className":121,"code":585,"language":123,"meta":124,"style":124},"sudo dmesg\nsudo dmesg | less  # с пагинацией\n",[36,587,588,595],{"__ignoreMap":124},[128,589,590,592],{"class":130,"line":131},[128,591,70],{"class":134},[128,593,594],{"class":137}," dmesg\n",[128,596,597,599,602,604,606],{"class":130,"line":185},[128,598,70],{"class":134},[128,600,601],{"class":137}," dmesg",[128,603,402],{"class":401},[128,605,512],{"class":134},[128,607,608],{"class":181},"  # с пагинацией\n",[114,610,612],{"id":611},"фильтрация-по-подсистеме","Фильтрация по подсистеме",[119,614,616],{"className":121,"code":615,"language":123,"meta":124,"style":124},"sudo dmesg | grep -i usb      # USB-устройства\nsudo dmesg | grep -i eth      # сетевые интерфейсы\nsudo dmesg | grep -i error    # ошибки ядра\n",[36,617,618,636,654],{"__ignoreMap":124},[128,619,620,622,624,626,628,630,633],{"class":130,"line":131},[128,621,70],{"class":134},[128,623,601],{"class":137},[128,625,402],{"class":401},[128,627,405],{"class":134},[128,629,408],{"class":174},[128,631,632],{"class":137}," usb",[128,634,635],{"class":181},"      # USB-устройства\n",[128,637,638,640,642,644,646,648,651],{"class":130,"line":185},[128,639,70],{"class":134},[128,641,601],{"class":137},[128,643,402],{"class":401},[128,645,405],{"class":134},[128,647,408],{"class":174},[128,649,650],{"class":137}," eth",[128,652,653],{"class":181},"      # сетевые интерфейсы\n",[128,655,656,658,660,662,664,666,669],{"class":130,"line":239},[128,657,70],{"class":134},[128,659,601],{"class":137},[128,661,402],{"class":401},[128,663,405],{"class":134},[128,665,408],{"class":174},[128,667,668],{"class":137}," error",[128,670,671],{"class":181},"    # ошибки ядра\n",[114,673,675],{"id":674},"мониторинг-в-реальном-времени","Мониторинг в реальном времени",[119,677,679],{"className":121,"code":678,"language":123,"meta":124,"style":124},"sudo dmesg -w  # следить за новыми сообщениями ядра\n",[36,680,681],{"__ignoreMap":124},[128,682,683,685,687,690],{"class":130,"line":131},[128,684,70],{"class":134},[128,686,601],{"class":137},[128,688,689],{"class":174}," -w",[128,691,692],{"class":181},"  # следить за новыми сообщениями ядра\n",[114,694,696],{"id":695},"сохранить-вывод-в-файл","Сохранить вывод в файл",[119,698,700],{"className":121,"code":699,"language":123,"meta":124,"style":124},"sudo dmesg > dmesg_output.txt\n",[36,701,702],{"__ignoreMap":124},[128,703,704,706,708,711],{"class":130,"line":131},[128,705,70],{"class":134},[128,707,601],{"class":137},[128,709,710],{"class":401}," >",[128,712,713],{"class":137}," dmesg_output.txt\n",[14,715,717],{"id":716},"шаг-4-логи-конкретных-приложений-и-служб","Шаг 4: Логи конкретных приложений и служб",[19,719,720,721,723],{},"Многие сервисы пишут логи в собственные файлы в ",[36,722,45],{},". Обычно это каталог с именем сервиса.",[114,725,727],{"id":726},"примеры","Примеры:",[29,729,730,758,790],{},[32,731,732,735,736,97,739,742],{},[25,733,734],{},"Nginx/Apache",": ",[36,737,738],{},"/var/log/nginx/access.log",[36,740,741],{},"/var/log/nginx/error.log",[119,743,745],{"className":121,"code":744,"language":123,"meta":124,"style":124},"sudo tail -f /var/log/nginx/error.log\n",[36,746,747],{"__ignoreMap":124},[128,748,749,751,753,755],{"class":130,"line":131},[128,750,70],{"class":134},[128,752,497],{"class":137},[128,754,192],{"class":174},[128,756,757],{"class":137}," /var/log/nginx/error.log\n",[32,759,760,735,763,766],{},[25,761,762],{},"MySQL/MariaDB",[36,764,765],{},"/var/log/mysql/error.log",[119,767,769],{"className":121,"code":768,"language":123,"meta":124,"style":124},"sudo cat /var/log/mysql/error.log | grep -i \"error\"\n",[36,770,771],{"__ignoreMap":124},[128,772,773,775,778,781,783,785,787],{"class":130,"line":131},[128,774,70],{"class":134},[128,776,777],{"class":137}," cat",[128,779,780],{"class":137}," /var/log/mysql/error.log",[128,782,402],{"class":401},[128,784,405],{"class":134},[128,786,408],{"class":174},[128,788,789],{"class":137}," \"error\"\n",[32,791,792,735,795,798,799,802],{},[25,793,794],{},"Docker",[36,796,797],{},"/var/log/docker.log"," или ",[36,800,801],{},"docker logs \u003Ccontainer_id>",[119,803,805],{"className":121,"code":804,"language":123,"meta":124,"style":124},"docker logs --tail 100 контейнер_имена\n",[36,806,807],{"__ignoreMap":124},[128,808,809,812,815,818,821],{"class":130,"line":131},[128,810,811],{"class":134},"docker",[128,813,814],{"class":137}," logs",[128,816,817],{"class":174}," --tail",[128,819,820],{"class":174}," 100",[128,822,823],{"class":137}," контейнер_имена\n",[114,825,827],{"id":826},"поиск-логов-неизвестного-сервиса","Поиск логов неизвестного сервиса",[119,829,831],{"className":121,"code":830,"language":123,"meta":124,"style":124},"ls -la /var/log/  # посмотреть структуру\nsudo find /var/log -name \"*\u003Cимя_сервиса>*\" -type f  # найти файлы по шаблону\n",[36,832,833,847],{"__ignoreMap":124},[128,834,835,838,841,844],{"class":130,"line":131},[128,836,837],{"class":134},"ls",[128,839,840],{"class":174}," -la",[128,842,843],{"class":137}," /var/log/",[128,845,846],{"class":181},"  # посмотреть структуру\n",[128,848,849,851,854,857,860,863,866,869],{"class":130,"line":185},[128,850,70],{"class":134},[128,852,853],{"class":137}," find",[128,855,856],{"class":137}," /var/log",[128,858,859],{"class":174}," -name",[128,861,862],{"class":137}," \"*\u003Cимя_сервиса>*\"",[128,864,865],{"class":174}," -type",[128,867,868],{"class":137}," f",[128,870,871],{"class":181},"  # найти файлы по шаблону\n",[14,873,875],{"id":874},"шаг-5-расширенные-техники-фильтрации-и-поиска","Шаг 5: Расширенные техники фильтрации и поиска",[19,877,878],{},"Комбинируйте инструменты для точного поиска.",[114,880,882],{"id":881},"поиск-по-дате-в-текстовых-логах","Поиск по дате в текстовых логах",[119,884,886],{"className":121,"code":885,"language":123,"meta":124,"style":124},"sudo grep \"Feb 16\" /var/log/syslog  # искать по дате (формат зависит от локали)\n",[36,887,888],{"__ignoreMap":124},[128,889,890,892,894,897,899],{"class":130,"line":131},[128,891,70],{"class":134},[128,893,405],{"class":137},[128,895,896],{"class":137}," \"Feb 16\"",[128,898,502],{"class":137},[128,900,901],{"class":181},"  # искать по дате (формат зависит от локали)\n",[114,903,905],{"id":904},"использование-journalctl-с-grep","Использование journalctl с grep",[119,907,909],{"className":121,"code":908,"language":123,"meta":124,"style":124},"sudo journalctl | grep -i \"failed to start\"  # найти конкретную фразу\n",[36,910,911],{"__ignoreMap":124},[128,912,913,915,917,919,921,923,926],{"class":130,"line":131},[128,914,70],{"class":134},[128,916,171],{"class":137},[128,918,402],{"class":401},[128,920,405],{"class":134},[128,922,408],{"class":174},[128,924,925],{"class":137}," \"failed to start\"",[128,927,928],{"class":181},"  # найти конкретную фразу\n",[114,930,932],{"id":931},"экспорт-журнала-systemd-в-текстовый-файл","Экспорт журнала systemd в текстовый файл",[119,934,936],{"className":121,"code":935,"language":123,"meta":124,"style":124},"sudo journalctl > full_journal.txt\n",[36,937,938],{"__ignoreMap":124},[128,939,940,942,944,946],{"class":130,"line":131},[128,941,70],{"class":134},[128,943,171],{"class":137},[128,945,710],{"class":401},[128,947,948],{"class":137}," full_journal.txt\n",[114,950,952],{"id":951},"просмотр-логов-с-цветовым-выделением","Просмотр логов с цветовым выделением",[19,954,955,956,959],{},"Установите ",[36,957,958],{},"ccze"," или используйте:",[119,961,963],{"className":121,"code":962,"language":123,"meta":124,"style":124},"sudo journalctl --no-pager | ccze -A\n",[36,964,965],{"__ignoreMap":124},[128,966,967,969,971,974,976,979],{"class":130,"line":131},[128,968,70],{"class":134},[128,970,171],{"class":137},[128,972,973],{"class":174}," --no-pager",[128,975,402],{"class":401},[128,977,978],{"class":134}," ccze",[128,980,981],{"class":174}," -A\n",[14,983,985],{"id":984},"шаг-6-настройка-ротации-и-очистки-логов","Шаг 6: Настройка ротации и очистки логов",[114,987,989],{"id":988},"очистка-старого-журнала-systemd","Очистка старого журнала systemd",[119,991,993],{"className":121,"code":992,"language":123,"meta":124,"style":124},"# Оставить записи только за последние 2 дня\nsudo journalctl --vacuum-time=2d\n\n# Ограничить размер журнала 500 МБ\nsudo journalctl --vacuum-size=500M\n",[36,994,995,1000,1009,1015,1021],{"__ignoreMap":124},[128,996,997],{"class":130,"line":131},[128,998,999],{"class":181},"# Оставить записи только за последние 2 дня\n",[128,1001,1002,1004,1006],{"class":130,"line":185},[128,1003,70],{"class":134},[128,1005,171],{"class":137},[128,1007,1008],{"class":174}," --vacuum-time=2d\n",[128,1010,1011],{"class":130,"line":239},[128,1012,1014],{"emptyLinePlaceholder":1013},true,"\n",[128,1016,1018],{"class":130,"line":1017},4,[128,1019,1020],{"class":181},"# Ограничить размер журнала 500 МБ\n",[128,1022,1024,1026,1028],{"class":130,"line":1023},5,[128,1025,70],{"class":134},[128,1027,171],{"class":137},[128,1029,1030],{"class":174}," --vacuum-size=500M\n",[114,1032,1034,1035,1038],{"id":1033},"настройка-journald-конфиг-etcsystemdjournaldconf","Настройка journald (конфиг ",[36,1036,1037],{},"/etc/systemd/journald.conf",")",[119,1040,1045],{"className":1041,"code":1043,"language":1044},[1042],"language-text","[Journal]\nSystemMaxUse=500M    # максимальный размер журнала\nMaxRetentionSec=1week  # хранить не дольше недели\n","text",[36,1046,1043],{"__ignoreMap":124},[19,1048,1049,1050,39],{},"После изменений перезапустите: ",[36,1051,1052],{},"sudo systemctl restart systemd-journald",[114,1054,1056],{"id":1055},"настройка-logrotate-для-текстовых-логов","Настройка logrotate для текстовых логов",[19,1058,1059,1060,1063],{},"Конфиги в ",[36,1061,1062],{},"/etc/logrotate.d/",". Пример для nginx:",[119,1065,1068],{"className":1066,"code":1067,"language":1044},[1042],"/var/log/nginx/*.log {\n    daily\n    rotate 7\n    compress\n    delaycompress\n    missingok\n    notifempty\n    create 640 www-data adm\n    sharedscripts\n    postrotate\n        [ ! -f /var/run/nginx.pid ] || kill -USR1 `cat /var/run/nginx.pid`\n    endscript\n}\n",[36,1069,1067],{"__ignoreMap":124},[14,1071,1073],{"id":1072},"проверка-результата","Проверка результата",[19,1075,1076],{},"После выполнения шагов вы должны:",[60,1078,1079,1085,1093,1096],{},[32,1080,1081,1082,39],{},"Увидеть последние записи журнала systemd через ",[36,1083,1084],{},"journalctl -xe",[32,1086,1087,1088,798,1091,77],{},"Найти логи конкретного сервиса (например, ",[36,1089,1090],{},"journalctl -u sshd",[36,1092,470],{},[32,1094,1095],{},"Отфильтровать логи по времени или уровню ошибки.",[32,1097,1098],{},"При необходимости очистить старые записи, чтобы освободить место.",[19,1100,1101,1104,1105,1108],{},[25,1102,1103],{},"Пример проверки:"," Выполните ",[36,1106,1107],{},"sudo journalctl -p err --since \"1 hour ago\"",". Если команда возвращает записи (или пустой вывод, если ошибок нет) — инструмент работает.",[14,1110,1112],{"id":1111},"возможные-проблемы","Возможные проблемы",[114,1114,1116,1117],{"id":1115},"failed-to-connect-to-bus-no-such-file-or-directory-при-journalctl","❌ \"Failed to connect to bus: No such file or directory\" при ",[36,1118,38],{},[19,1120,1121,1124,1125,1128,1129,1132,1133,39],{},[25,1122,1123],{},"Причина:"," systemd-journald не запущен или вы не в системе с systemd (например, в контейнере).\n",[25,1126,1127],{},"Решение:"," Проверьте ",[36,1130,1131],{},"systemctl status systemd-journald",". В контейнерах используйте текстовые логи в ",[36,1134,45],{},[114,1136,1138],{"id":1137},"permission-denied-при-чтении-логов","❌ \"Permission denied\" при чтении логов",[19,1140,1141,1143,1144,1146,1147,1149,1150,1153,1154,1157,1158,1161,1164],{},[25,1142,1123],{}," Недостаточно прав.\n",[25,1145,1127],{}," Добавьте ",[36,1148,70],{}," или добавьте пользователя в группу ",[36,1151,1152],{},"adm"," (Debian/Ubuntu) или ",[36,1155,1156],{},"systemd-journal"," (RHEL):",[1159,1160],"br",{},[36,1162,1163],{},"sudo usermod -aG adm $USER"," (требуется перелогин).",[114,1166,1168,1169,1171],{"id":1167},"логи-varlogsyslog-пустые-или-отсутствуют","❌ Логи ",[36,1170,452],{}," пустые или отсутствуют",[19,1173,1174,1176,1177,1179,1180,1183,1184,1186,1187,39],{},[25,1175,1123],{}," Возможно, используется systemd-journald без прямого вывода в файл, или syslog-демон не настроен.\n",[25,1178,1127],{}," Проверьте, работает ли ",[36,1181,1182],{},"systemd-journald",". Для сохранения логов в файл настройте ",[36,1185,1182],{}," или установите ",[36,1188,1189],{},"rsyslog",[114,1191,1193],{"id":1192},"журнал-systemd-слишком-большой","❌ Журнал systemd слишком большой",[19,1195,1196,1198,1199,1201,1202,1204,1205,39],{},[25,1197,1123],{}," По умолчанию journald может занимать много места.\n",[25,1200,1127],{}," Настройте ограничения в ",[36,1203,1037],{}," (см. Шаг 6) и выполните ",[36,1206,1207],{},"sudo journalctl --vacuum-size=200M",[114,1209,1211],{"id":1210},"не-могу-найти-логи-конкретного-приложения","❌ Не могу найти логи конкретного приложения",[19,1213,1214,1216,1217,1220,1221,1223,1224,1227,1228,39],{},[25,1215,1123],{}," Приложение может писать логи в свой каталог (например, ",[36,1218,1219],{},"/opt/app/logs/",") или в journald.\n",[25,1222,1127],{}," Проверьте документацию приложения. Используйте ",[36,1225,1226],{},"sudo journalctl | grep -i \"имя_приложения\""," или найдите файлы: ",[36,1229,1230],{},"sudo find / -name \"*app*log*\" 2>/dev/null",[1232,1233],"in-article-ad",{},[14,1235,1237],{"id":1236},"заключительные-рекомендации","Заключительные рекомендации",[29,1239,1240,1249,1267,1279,1285],{},[32,1241,1242,1245,1246,1248],{},[25,1243,1244],{},"Приоритет:"," Начинайте с ",[36,1247,1084],{}," — это самый быстрый способ увидеть последние ошибки systemd.",[32,1250,1251,1254,1255,1258,1259,1262,1263,1266],{},[25,1252,1253],{},"Фильтрация:"," Всегда сужайте вывод по времени (",[36,1256,1257],{},"--since","), сервису (",[36,1260,1261],{},"-u",") или уровню (",[36,1264,1265],{},"-p","). Это сэкономит время.",[32,1268,1269,1272,1273,798,1276,39],{},[25,1270,1271],{},"Мониторинг:"," Для отслеживания событий в реальном времени используйте ",[36,1274,1275],{},"journalctl -f",[36,1277,1278],{},"tail -f /var/log/syslog",[32,1280,1281,1284],{},[25,1282,1283],{},"Документация:"," Конкретные приложения (PostgreSQL, Docker, Kubernetes) часто имеют свои каталоги логов — изучайте официальную документацию.",[32,1286,1287,1290],{},[25,1288,1289],{},"Безопасность:"," Не оставляйте старые логи на диске бесконечно. Настройте ротацию, особенно на production-серверах.",[19,1292,1293],{},"Эти навыки помогут вам перестать \"гадать\" при ошибках и быстро находить корень проблемы. Удачи в диагностике",[1295,1296,1297],"style",{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}",{"title":124,"searchDepth":185,"depth":185,"links":1299},[1300,1301,1302,1311,1316,1322,1326,1332,1338,1339,1348],{"id":16,"depth":185,"text":17},{"id":54,"depth":185,"text":55},{"id":106,"depth":185,"text":107,"children":1303},[1304,1305,1306,1307,1308,1309,1310],{"id":116,"depth":239,"text":117},{"id":158,"depth":239,"text":159},{"id":198,"depth":239,"text":199},{"id":251,"depth":239,"text":252},{"id":286,"depth":239,"text":287},{"id":351,"depth":239,"text":352},{"id":386,"depth":239,"text":387},{"id":435,"depth":185,"text":436,"children":1312},[1313,1314,1315],{"id":444,"depth":239,"text":445},{"id":484,"depth":239,"text":485},{"id":535,"depth":239,"text":536},{"id":570,"depth":185,"text":571,"children":1317},[1318,1319,1320,1321],{"id":581,"depth":239,"text":582},{"id":611,"depth":239,"text":612},{"id":674,"depth":239,"text":675},{"id":695,"depth":239,"text":696},{"id":716,"depth":185,"text":717,"children":1323},[1324,1325],{"id":726,"depth":239,"text":727},{"id":826,"depth":239,"text":827},{"id":874,"depth":185,"text":875,"children":1327},[1328,1329,1330,1331],{"id":881,"depth":239,"text":882},{"id":904,"depth":239,"text":905},{"id":931,"depth":239,"text":932},{"id":951,"depth":239,"text":952},{"id":984,"depth":185,"text":985,"children":1333},[1334,1335,1337],{"id":988,"depth":239,"text":989},{"id":1033,"depth":239,"text":1336},"Настройка journald (конфиг /etc/systemd/journald.conf)",{"id":1055,"depth":239,"text":1056},{"id":1072,"depth":185,"text":1073},{"id":1111,"depth":185,"text":1112,"children":1340},[1341,1343,1344,1346,1347],{"id":1115,"depth":239,"text":1342},"❌ \"Failed to connect to bus: No such file or directory\" при journalctl",{"id":1137,"depth":239,"text":1138},{"id":1167,"depth":239,"text":1345},"❌ Логи /var/log/syslog пустые или отсутствуют",{"id":1192,"depth":239,"text":1193},{"id":1210,"depth":239,"text":1211},{"id":1236,"depth":185,"text":1237},null,"2026-02-16 13:59:36","Узнайте, как эффективно анализировать системные логи в Linux с помощью journalctl и syslog. Пошаговая инструкция по поиску ошибок, фильтрации и мониторингу за 10 минут.","medium",false,"10-15 мин","md",[1357,1360,1363,1366],{"answer":1358,"question":1359},"Логи системных событий (systemd) хранятся в бинарном журнале, доступном через `journalctl`. Традиционные текстовые логи находятся в `/var/log/` (например, `/var/log/syslog`, `/var/log/kern.log`).","Где находятся логи в Linux?",{"answer":1361,"question":1362},"Используйте команду `journalctl --since \"1 hour ago\"`. Для текстовых логов в `/var/log/` можно использовать `tail -f /var/log/syslog` в реальном времени.","Как посмотреть логи за последний час?",{"answer":1364,"question":1365},"Очистить старые записи можно командой `journalctl --vacuum-time=3d` (оставить за 3 дня) или `journalctl --vacuum-size=100M` (ограничить размер 100 МБ).","Что делать, если журнал systemd переполнен?",{"answer":1367,"question":1368},"Используйте фильтр `journalctl -u имя_сервиса.service`. Например, `journalctl -u nginx.service` покажет логи веб-сервера nginx.","Как найти логи конкретного сервиса?",[1370,1373,1376,1379,1382,1385],{"name":1371,"text":1372},"Определите источник проблемы","Сначала решите, ищете ли вы логи systemd, ядра (kernel), конкретного сервиса или приложения. Это определит используемую команду.",{"name":1374,"text":1375},"Используйте journalctl для systemd-журнала","Выполните `journalctl -xe` для просмотра последних записей с расширенным выводом ошибок. Фильтруйте по времени (`--since`), сервису (`-u`) или приоритету (`-p err`).",{"name":1377,"text":1378},"Просматривайте традиционные логи в /var/log","Для системного лога используйте `tail -f /var/log/syslog` (Debian/Ubuntu) или `tail -f /var/log/messages` (RHEL/CentOS). Ядерные логи — в `/var/log/kern.log`.",{"name":1380,"text":1381},"Используйте dmesg для логов ядра","Команда `dmesg` показывает буфер ядра. Для мониторинга в реальном времени: `dmesg -w`. Фильтруйте по подсистеме: `dmesg | grep -i usb`.",{"name":1383,"text":1384},"Анализируйте логи приложений","Логи многих сервисов (nginx, Apache, MySQL) пишутся в собственные файлы в `/var/log/`. Найдите их через `ls /var/log/` или документацию ПО.",{"name":1386,"text":1387},"Настройте ротацию логов при необходимости","Если логи слишком велики, настройте logrotate (конфиги в `/etc/logrotate.d/`) или параметры хранения journalctl (`/etc/systemd/journald.conf`).","PT15M",[1390,1391,1392,1393,1394,1395,1396,1397,1398],"проверка логов linux","как посмотреть системные логи linux","journalctl команды","syslog linux где находится","анализ логов ошибок linux","dmesg вывод","логи systemd journal","где хранятся логи в ubuntu","поиск ошибок в linux логи","ru_RU",{},"/guides/linux/check-system-logs","linux",[1404,1405,1406],"/guides/linux/systemd-service-management","/guides/linux/ssh-connection-issues","/errors/linux/ssh-connection-refused","Гайды Linux",{"title":5,"description":1351},"guides/linux/check-system-logs","Это руководство научит вас находить, читать и анализировать системные логи в Linux. Вы освоите ключевые команды journalctl и утилиты для работы с /var/log, что поможет быстро диагностировать проблемы с системой, службами и приложениями.",[1402,1412,38,1413,1414,83,1415,1416],"sysadmin","logs","отладка","мониторинг","ubuntu","guide","3QfyGSLUXWSS2gL0r25W_E0vNCOhrBR_JGa1oOL43sU",{"data":1420,"body":1421},{},{"type":1422,"children":1423},"root",[1424],{"type":1425,"tag":19,"props":1426,"children":1427},"element",{},[1428,1430,1435,1437,1442,1444,1449,1450,1455],{"type":1044,"value":1429},"Логи системных событий (systemd) хранятся в бинарном журнале, доступном через ",{"type":1425,"tag":36,"props":1431,"children":1433},{"className":1432},[],[1434],{"type":1044,"value":38},{"type":1044,"value":1436},". Традиционные текстовые логи находятся в ",{"type":1425,"tag":36,"props":1438,"children":1440},{"className":1439},[],[1441],{"type":1044,"value":45},{"type":1044,"value":1443}," (например, ",{"type":1425,"tag":36,"props":1445,"children":1447},{"className":1446},[],[1448],{"type":1044,"value":452},{"type":1044,"value":97},{"type":1425,"tag":36,"props":1451,"children":1453},{"className":1452},[],[1454],{"type":1044,"value":464},{"type":1044,"value":77},{"data":1457,"body":1458},{},{"type":1422,"children":1459},[1460],{"type":1425,"tag":19,"props":1461,"children":1462},{},[1463,1465,1471,1473,1478,1480,1485],{"type":1044,"value":1464},"Используйте команду ",{"type":1425,"tag":36,"props":1466,"children":1468},{"className":1467},[],[1469],{"type":1044,"value":1470},"journalctl --since \"1 hour ago\"",{"type":1044,"value":1472},". Для текстовых логов в ",{"type":1425,"tag":36,"props":1474,"children":1476},{"className":1475},[],[1477],{"type":1044,"value":45},{"type":1044,"value":1479}," можно использовать ",{"type":1425,"tag":36,"props":1481,"children":1483},{"className":1482},[],[1484],{"type":1044,"value":1278},{"type":1044,"value":1486}," в реальном времени.",{"data":1488,"body":1489},{},{"type":1422,"children":1490},[1491],{"type":1425,"tag":19,"props":1492,"children":1493},{},[1494,1496,1502,1504,1510],{"type":1044,"value":1495},"Очистить старые записи можно командой ",{"type":1425,"tag":36,"props":1497,"children":1499},{"className":1498},[],[1500],{"type":1044,"value":1501},"journalctl --vacuum-time=3d",{"type":1044,"value":1503}," (оставить за 3 дня) или ",{"type":1425,"tag":36,"props":1505,"children":1507},{"className":1506},[],[1508],{"type":1044,"value":1509},"journalctl --vacuum-size=100M",{"type":1044,"value":1511}," (ограничить размер 100 МБ).",{"data":1513,"body":1514},{},{"type":1422,"children":1515},[1516],{"type":1425,"tag":19,"props":1517,"children":1518},{},[1519,1521,1527,1529,1535],{"type":1044,"value":1520},"Используйте фильтр ",{"type":1425,"tag":36,"props":1522,"children":1524},{"className":1523},[],[1525],{"type":1044,"value":1526},"journalctl -u имя_сервиса.service",{"type":1044,"value":1528},". Например, ",{"type":1425,"tag":36,"props":1530,"children":1532},{"className":1531},[],[1533],{"type":1044,"value":1534},"journalctl -u nginx.service",{"type":1044,"value":1536}," покажет логи веб-сервера nginx.",{"data":1538,"body":1539},{},{"type":1422,"children":1540},[1541],{"type":1425,"tag":19,"props":1542,"children":1543},{},[1544],{"type":1044,"value":1372},{"data":1546,"body":1547},{},{"type":1422,"children":1548},[1549],{"type":1425,"tag":19,"props":1550,"children":1551},{},[1552,1554,1559,1561,1566,1567,1572,1574,1580],{"type":1044,"value":1553},"Выполните ",{"type":1425,"tag":36,"props":1555,"children":1557},{"className":1556},[],[1558],{"type":1044,"value":1084},{"type":1044,"value":1560}," для просмотра последних записей с расширенным выводом ошибок. Фильтруйте по времени (",{"type":1425,"tag":36,"props":1562,"children":1564},{"className":1563},[],[1565],{"type":1044,"value":1257},{"type":1044,"value":1258},{"type":1425,"tag":36,"props":1568,"children":1570},{"className":1569},[],[1571],{"type":1044,"value":1261},{"type":1044,"value":1573},") или приоритету (",{"type":1425,"tag":36,"props":1575,"children":1577},{"className":1576},[],[1578],{"type":1044,"value":1579},"-p err",{"type":1044,"value":77},{"data":1582,"body":1583},{},{"type":1422,"children":1584},[1585],{"type":1425,"tag":19,"props":1586,"children":1587},{},[1588,1590,1595,1596,1602,1604,1609],{"type":1044,"value":1589},"Для системного лога используйте ",{"type":1425,"tag":36,"props":1591,"children":1593},{"className":1592},[],[1594],{"type":1044,"value":1278},{"type":1044,"value":1153},{"type":1425,"tag":36,"props":1597,"children":1599},{"className":1598},[],[1600],{"type":1044,"value":1601},"tail -f /var/log/messages",{"type":1044,"value":1603}," (RHEL/CentOS). Ядерные логи — в ",{"type":1425,"tag":36,"props":1605,"children":1607},{"className":1606},[],[1608],{"type":1044,"value":464},{"type":1044,"value":39},{"data":1611,"body":1612},{},{"type":1422,"children":1613},[1614],{"type":1425,"tag":19,"props":1615,"children":1616},{},[1617,1618,1623,1625,1631,1633,1639],{"type":1044,"value":574},{"type":1425,"tag":36,"props":1619,"children":1621},{"className":1620},[],[1622],{"type":1044,"value":577},{"type":1044,"value":1624}," показывает буфер ядра. Для мониторинга в реальном времени: ",{"type":1425,"tag":36,"props":1626,"children":1628},{"className":1627},[],[1629],{"type":1044,"value":1630},"dmesg -w",{"type":1044,"value":1632},". Фильтруйте по подсистеме: ",{"type":1425,"tag":36,"props":1634,"children":1636},{"className":1635},[],[1637],{"type":1044,"value":1638},"dmesg | grep -i usb",{"type":1044,"value":39},{"data":1641,"body":1642},{},{"type":1422,"children":1643},[1644],{"type":1425,"tag":19,"props":1645,"children":1646},{},[1647,1649,1654,1656,1662],{"type":1044,"value":1648},"Логи многих сервисов (nginx, Apache, MySQL) пишутся в собственные файлы в ",{"type":1425,"tag":36,"props":1650,"children":1652},{"className":1651},[],[1653],{"type":1044,"value":45},{"type":1044,"value":1655},". Найдите их через ",{"type":1425,"tag":36,"props":1657,"children":1659},{"className":1658},[],[1660],{"type":1044,"value":1661},"ls /var/log/",{"type":1044,"value":1663}," или документацию ПО.",{"data":1665,"body":1666},{},{"type":1422,"children":1667},[1668],{"type":1425,"tag":19,"props":1669,"children":1670},{},[1671,1673,1678,1680,1685],{"type":1044,"value":1672},"Если логи слишком велики, настройте logrotate (конфиги в ",{"type":1425,"tag":36,"props":1674,"children":1676},{"className":1675},[],[1677],{"type":1044,"value":1062},{"type":1044,"value":1679},") или параметры хранения journalctl (",{"type":1425,"tag":36,"props":1681,"children":1683},{"className":1682},[],[1684],{"type":1044,"value":1037},{"type":1044,"value":77},[1687,2513,4109],{"id":1688,"title":1689,"appliesTo":1690,"author":9,"body":1695,"canonical":1349,"code":1349,"createdAt":2458,"description":2459,"difficulty":1352,"draft":1353,"estimatedTime":2460,"extension":1355,"faq":2461,"howToSteps":2474,"howToTotalTime":2493,"image":1349,"keywords":2494,"locale":1399,"meta":2503,"navigation":1013,"path":1404,"platform":1402,"related":2504,"section":1407,"seo":2508,"severity":1349,"stem":2509,"summary":2510,"tags":2511,"twitterCreator":1349,"twitterSite":1349,"type":1417,"updatedAt":2458,"__hash__":2512},"content_ru/guides/linux/systemd-service-management.md","Управление systemd-сервисами: полное руководство по запуску, остановке и настройке",[1691,1692,1693,1694],"Ubuntu 20.04+","CentOS/RHEL 8+","Debian 10+","Fedora",{"type":11,"value":1696,"toc":2447},[1697,1699,1702,1710,1712,1729,1733,1736,1849,1853,1859,1943,1945,1949,2051,2055,2060,2181,2185,2261,2263,2309,2311,2444],[14,1698,17],{"id":16},[19,1700,1701],{},"Systemd стал стандартом для управления службами и процессами в большинстве современных дистрибутивов Linux (Ubuntu, Fedora, CentOS/RHEL 8+, Debian 10+). Понимание его основ — обязательный навык для системного администратора и разработчика, работающего с серверами.",[19,1703,1704,1705,1707,1708,39],{},"Это руководство даст вам практические навыки для повседневного управления сервисами: запуск, остановка, настройка автозапуска и диагностика сбоев. Вы сможете уверенно работать с такими командами, как ",[36,1706,87],{}," и ",[36,1709,38],{},[14,1711,55],{"id":54},[29,1713,1714,1720,1726],{},[32,1715,1716,1717,77],{},"Дистрибутив Linux с системой инициализации systemd (проверьте: ",[36,1718,1719],{},"pidof systemd",[32,1721,1722,1723,1725],{},"Доступ к терминалу с правами ",[25,1724,70],{}," (для управления системными службами).",[32,1727,1728],{},"Базовое понимание командной строки.",[14,1730,1732],{"id":1731},"шаг-1-основные-команды-управления-состоянием-службы","Шаг 1: Основные команды управления состоянием службы",[19,1734,1735],{},"Systemctl — основной инструмент взаимодействия с systemd. Вот ключевые команды для управления состоянием:",[29,1737,1738,1768,1789,1810],{},[32,1739,1740,1743,1761],{},[25,1741,1742],{},"Запуск службы:",[119,1744,1746],{"className":121,"code":1745,"language":123,"meta":124,"style":124},"sudo systemctl start имя_службы.service\n",[36,1747,1748],{"__ignoreMap":124},[128,1749,1750,1752,1755,1758],{"class":130,"line":131},[128,1751,70],{"class":134},[128,1753,1754],{"class":137}," systemctl",[128,1756,1757],{"class":137}," start",[128,1759,1760],{"class":137}," имя_службы.service\n",[1762,1763,1764,1765],"em",{},"Пример: ",[36,1766,1767],{},"sudo systemctl start nginx",[32,1769,1770,1773],{},[25,1771,1772],{},"Остановка службы:",[119,1774,1776],{"className":121,"code":1775,"language":123,"meta":124,"style":124},"sudo systemctl stop имя_службы.service\n",[36,1777,1778],{"__ignoreMap":124},[128,1779,1780,1782,1784,1787],{"class":130,"line":131},[128,1781,70],{"class":134},[128,1783,1754],{"class":137},[128,1785,1786],{"class":137}," stop",[128,1788,1760],{"class":137},[32,1790,1791,1794],{},[25,1792,1793],{},"Перезапуск службы (мягкий):",[119,1795,1797],{"className":121,"code":1796,"language":123,"meta":124,"style":124},"sudo systemctl restart имя_службы.service\n",[36,1798,1799],{"__ignoreMap":124},[128,1800,1801,1803,1805,1808],{"class":130,"line":131},[128,1802,70],{"class":134},[128,1804,1754],{"class":137},[128,1806,1807],{"class":137}," restart",[128,1809,1760],{"class":137},[32,1811,1812,1815,1831],{},[25,1813,1814],{},"Принудительная перезагрузка (kill и запуск):",[119,1816,1818],{"className":121,"code":1817,"language":123,"meta":124,"style":124},"sudo systemctl try-restart имя_службы.service\n",[36,1819,1820],{"__ignoreMap":124},[128,1821,1822,1824,1826,1829],{"class":130,"line":131},[128,1823,70],{"class":134},[128,1825,1754],{"class":137},[128,1827,1828],{"class":137}," try-restart",[128,1830,1760],{"class":137},[1832,1833,1834],"blockquote",{},[19,1835,1836,1837,1840,1841,1844,1845,1848],{},"💡 ",[25,1838,1839],{},"Совет:"," Для веб-серверов (nginx, apache) после изменения конфигурации используйте ",[36,1842,1843],{},"reload"," (",[36,1846,1847],{},"sudo systemctl reload nginx","), чтобы перечитать конфиг без разрыва соединений.",[14,1850,1852],{"id":1851},"шаг-2-управление-автозагрузкой-включениеотключение","Шаг 2: Управление автозагрузкой (включение/отключение)",[19,1854,1855,1856,39],{},"Чтобы служба автоматически запускалась при загрузке системы, её нужно ",[1762,1857,1858],{},"включить",[29,1860,1861,1886,1907],{},[32,1862,1863,1866,1882,1883,39],{},[25,1864,1865],{},"Включить автозапуск:",[119,1867,1869],{"className":121,"code":1868,"language":123,"meta":124,"style":124},"sudo systemctl enable имя_службы.service\n",[36,1870,1871],{"__ignoreMap":124},[128,1872,1873,1875,1877,1880],{"class":130,"line":131},[128,1874,70],{"class":134},[128,1876,1754],{"class":137},[128,1878,1879],{"class":137}," enable",[128,1881,1760],{"class":137},"\nЭта команда создаёт символьную ссылку на unit-файл в каталоге ",[36,1884,1885],{},"/etc/systemd/system/",[32,1887,1888,1891],{},[25,1889,1890],{},"Отключить автозапуск:",[119,1892,1894],{"className":121,"code":1893,"language":123,"meta":124,"style":124},"sudo systemctl disable имя_службы.service\n",[36,1895,1896],{"__ignoreMap":124},[128,1897,1898,1900,1902,1905],{"class":130,"line":131},[128,1899,70],{"class":134},[128,1901,1754],{"class":137},[128,1903,1904],{"class":137}," disable",[128,1906,1760],{"class":137},[32,1908,1909,1912,1926,1927,1930,1931,1934,1935,1938,1939,1942],{},[25,1910,1911],{},"Проверить, включена ли служба в автозагрузку:",[119,1913,1915],{"className":121,"code":1914,"language":123,"meta":124,"style":124},"systemctl is-enabled имя_службы.service\n",[36,1916,1917],{"__ignoreMap":124},[128,1918,1919,1921,1924],{"class":130,"line":131},[128,1920,87],{"class":134},[128,1922,1923],{"class":137}," is-enabled",[128,1925,1760],{"class":137},"\nВывод: ",[36,1928,1929],{},"enabled"," (включена), ",[36,1932,1933],{},"disabled"," (отключена), ",[36,1936,1937],{},"static"," (не может быть включена напрямую, но может быть зависимостью), ",[36,1940,1941],{},"masked"," (полностью заблокирована).",[1232,1944],{},[14,1946,1948],{"id":1947},"шаг-3-просмотр-статуса-и-всех-служб","Шаг 3: Просмотр статуса и всех служб",[29,1950,1951,1979,1999,2021],{},[32,1952,1953,1956,1970,1971,1974,1975,1978],{},[25,1954,1955],{},"Детальный статус конкретной службы:",[119,1957,1959],{"className":121,"code":1958,"language":123,"meta":124,"style":124},"systemctl status имя_службы.service\n",[36,1960,1961],{"__ignoreMap":124},[128,1962,1963,1965,1968],{"class":130,"line":131},[128,1964,87],{"class":134},[128,1966,1967],{"class":137}," status",[128,1969,1760],{"class":137},"\nВывод показывает: ",[36,1972,1973],{},"Active:"," (состояние), ",[36,1976,1977],{},"Main PID:"," (идентификатор процесса), и последние строки журнала этой службы.",[32,1980,1981,1984],{},[25,1982,1983],{},"Список всех загруженных (активных) юнитов:",[119,1985,1987],{"className":121,"code":1986,"language":123,"meta":124,"style":124},"systemctl list-units --type=service\n",[36,1988,1989],{"__ignoreMap":124},[128,1990,1991,1993,1996],{"class":130,"line":131},[128,1992,87],{"class":134},[128,1994,1995],{"class":137}," list-units",[128,1997,1998],{"class":174}," --type=service\n",[32,2000,2001,2004],{},[25,2002,2003],{},"Список ВСЕХ доступных служб (включая неактивные):",[119,2005,2007],{"className":121,"code":2006,"language":123,"meta":124,"style":124},"systemctl list-units --type=service --all\n",[36,2008,2009],{"__ignoreMap":124},[128,2010,2011,2013,2015,2018],{"class":130,"line":131},[128,2012,87],{"class":134},[128,2014,1995],{"class":137},[128,2016,2017],{"class":174}," --type=service",[128,2019,2020],{"class":174}," --all\n",[32,2022,2023,2026],{},[25,2024,2025],{},"Поиск службы по имени:",[119,2027,2029],{"className":121,"code":2028,"language":123,"meta":124,"style":124},"systemctl list-units --type=service --all | grep -i ssh\n",[36,2030,2031],{"__ignoreMap":124},[128,2032,2033,2035,2037,2039,2042,2044,2046,2048],{"class":130,"line":131},[128,2034,87],{"class":134},[128,2036,1995],{"class":137},[128,2038,2017],{"class":174},[128,2040,2041],{"class":174}," --all",[128,2043,402],{"class":401},[128,2045,405],{"class":134},[128,2047,408],{"class":174},[128,2049,2050],{"class":137}," ssh\n",[14,2052,2054],{"id":2053},"шаг-4-анализ-логов-с-помощью-journalctl","Шаг 4: Анализ логов с помощью journalctl",[19,2056,2057,2058,39],{},"Логи systemd хранятся в бинарном журнале, доступном через ",[36,2059,38],{},[29,2061,2062,2082,2110,2129,2155],{},[32,2063,2064,2067],{},[25,2065,2066],{},"Просмотр логов конкретной службы:",[119,2068,2070],{"className":121,"code":2069,"language":123,"meta":124,"style":124},"sudo journalctl -u имя_службы.service\n",[36,2071,2072],{"__ignoreMap":124},[128,2073,2074,2076,2078,2080],{"class":130,"line":131},[128,2075,70],{"class":134},[128,2077,171],{"class":137},[128,2079,266],{"class":174},[128,2081,1760],{"class":137},[32,2083,2084,2091],{},[25,2085,2086,2087,2090],{},"Отслеживание логов в реальном времени (аналог ",[36,2088,2089],{},"tail -f","):",[119,2092,2094],{"className":121,"code":2093,"language":123,"meta":124,"style":124},"sudo journalctl -u имя_службы.service -f\n",[36,2095,2096],{"__ignoreMap":124},[128,2097,2098,2100,2102,2104,2107],{"class":130,"line":131},[128,2099,70],{"class":134},[128,2101,171],{"class":137},[128,2103,266],{"class":174},[128,2105,2106],{"class":137}," имя_службы.service",[128,2108,2109],{"class":174}," -f\n",[32,2111,2112,2115],{},[25,2113,2114],{},"Логи за последнюю загрузку системы:",[119,2116,2118],{"className":121,"code":2117,"language":123,"meta":124,"style":124},"sudo journalctl -b\n",[36,2119,2120],{"__ignoreMap":124},[128,2121,2122,2124,2126],{"class":130,"line":131},[128,2123,70],{"class":134},[128,2125,171],{"class":137},[128,2127,2128],{"class":174}," -b\n",[32,2130,2131,2134],{},[25,2132,2133],{},"Логи с фильтрацией по времени:",[119,2135,2137],{"className":121,"code":2136,"language":123,"meta":124,"style":124},"sudo journalctl --since \"2026-02-15 10:00:00\" --until \"2026-02-15 12:00:00\"\n",[36,2138,2139],{"__ignoreMap":124},[128,2140,2141,2143,2145,2147,2150,2152],{"class":130,"line":131},[128,2142,70],{"class":134},[128,2144,171],{"class":137},[128,2146,213],{"class":174},[128,2148,2149],{"class":137}," \"2026-02-15 10:00:00\"",[128,2151,219],{"class":174},[128,2153,2154],{"class":137}," \"2026-02-15 12:00:00\"\n",[32,2156,2157,2160],{},[25,2158,2159],{},"Показать логи с максимальной детализацией для службы:",[119,2161,2163],{"className":121,"code":2162,"language":123,"meta":124,"style":124},"sudo journalctl -u имя_службы.service -o verbose\n",[36,2164,2165],{"__ignoreMap":124},[128,2166,2167,2169,2171,2173,2175,2178],{"class":130,"line":131},[128,2168,70],{"class":134},[128,2170,171],{"class":137},[128,2172,266],{"class":174},[128,2174,2106],{"class":137},[128,2176,2177],{"class":174}," -o",[128,2179,2180],{"class":137}," verbose\n",[14,2182,2184],{"id":2183},"шаг-5-дополнительные-операции-перезагрузка-конфигурации-маскировка","Шаг 5: Дополнительные операции (перезагрузка конфигурации, маскировка)",[29,2186,2187,2206,2235],{},[32,2188,2189,2192],{},[25,2190,2191],{},"Перезагрузка конфигурации systemd (обязательно после создания/изменения unit-файлов):",[119,2193,2195],{"className":121,"code":2194,"language":123,"meta":124,"style":124},"sudo systemctl daemon-reload\n",[36,2196,2197],{"__ignoreMap":124},[128,2198,2199,2201,2203],{"class":130,"line":131},[128,2200,70],{"class":134},[128,2202,1754],{"class":137},[128,2204,2205],{"class":137}," daemon-reload\n",[32,2207,2208,2211,2227,2228,2231,2232,39],{},[25,2209,2210],{},"Полная блокировка службы (mask) — предотвращает любой ручной или автоматический запуск:",[119,2212,2214],{"className":121,"code":2213,"language":123,"meta":124,"style":124},"sudo systemctl mask имя_службы.service\n",[36,2215,2216],{"__ignoreMap":124},[128,2217,2218,2220,2222,2225],{"class":130,"line":131},[128,2219,70],{"class":134},[128,2221,1754],{"class":137},[128,2223,2224],{"class":137}," mask",[128,2226,1760],{"class":137},"\nСоздаёт символическую ссылку на ",[36,2229,2230],{},"/dev/null",". Разблокировка: ",[36,2233,2234],{},"sudo systemctl unmask имя_службы.service",[32,2236,2237,2240,2256,2257,2260],{},[25,2238,2239],{},"Принудительная остановка и сброс состояния службы:",[119,2241,2243],{"className":121,"code":2242,"language":123,"meta":124,"style":124},"sudo systemctl reset-failed имя_службы.service\n",[36,2244,2245],{"__ignoreMap":124},[128,2246,2247,2249,2251,2254],{"class":130,"line":131},[128,2248,70],{"class":134},[128,2250,1754],{"class":137},[128,2252,2253],{"class":137}," reset-failed",[128,2255,1760],{"class":137},"\nПолезно, если служба в состоянии ",[36,2258,2259],{},"failed"," и не запускается после исправления ошибки.",[14,2262,1073],{"id":1072},[60,2264,2265,2281,2291],{},[32,2266,2267,2270,2271,2274,2275,2277,2278,39],{},[25,2268,2269],{},"Для проверки работы:"," выполните ",[36,2272,2273],{},"systemctl status имя_службы",". Убедитесь, что строка ",[36,2276,1973],{}," содержит ",[36,2279,2280],{},"active (running)",[32,2282,2283,2286,2287,2290],{},[25,2284,2285],{},"Для проверки автозагрузки:"," перезагрузите систему (",[36,2288,2289],{},"sudo reboot",") и после входа проверьте статус службы.",[32,2292,2293,2296,2297,2300,2301,97,2303,97,2306,77],{},[25,2294,2295],{},"Для проверки логов:"," убедитесь, что ",[36,2298,2299],{},"journalctl -u имя_службы"," не содержит ошибок (",[36,2302,2259],{},[36,2304,2305],{},"error",[36,2307,2308],{},"permission denied",[14,2310,1112],{"id":1111},[29,2312,2313,2338,2360,2381,2418],{},[32,2314,2315,2324],{},[25,2316,2317,2318,798,2321],{},"Ошибка ",[36,2319,2320],{},"Failed to start ...",[36,2322,2323],{},"Unit not found.",[29,2325,2326],{},[32,2327,2328,2330,2331,2334,2335,39],{},[25,2329,1123],{}," Unit-файл отсутствует или имеет неверное имя. Убедитесь, что служба существует: ",[36,2332,2333],{},"systemctl list-unit-files | grep имя_службы",". Проверьте синтаксис unit-файла: ",[36,2336,2337],{},"sudo systemd-analyze verify /etc/systemd/system/имя_службы.service",[32,2339,2340,2343],{},[25,2341,2342],{},"Служба запускается, но сразу же останавливается.",[29,2344,2345],{},[32,2346,2347,2349,2350,1443,2353,2356,2357,39],{},[25,2348,1123],{}," Ошибка в самом приложении или неверные параметры в секции ",[36,2351,2352],{},"[Service]",[36,2354,2355],{},"ExecStart"," указывает на несуществующий бинарник). Смотрите детальные логи: ",[36,2358,2359],{},"sudo journalctl -u имя_службы.service -n 50 --no-pager",[32,2361,2362,2368],{},[25,2363,2364,2367],{},[36,2365,2366],{},"Permission denied"," при попытке управления системной службой.",[29,2369,2370],{},[32,2371,2372,2374,2375,2377,2378,2380],{},[25,2373,1123],{}," Выполняете команду без ",[36,2376,70],{},". Для управления системными службами (из ",[36,2379,1885],{},") требуются права root.",[32,2382,2383,2390],{},[25,2384,2385,2386,2389],{},"Служба не включается в автозагрузку (",[36,2387,2388],{},"enable"," не срабатывает).",[29,2391,2392],{},[32,2393,2394,2396,2397,2400,2401,798,2404,2407,2408,2411,2412,1707,2415,2417],{},[25,2395,1123],{}," Unit-файл имеет ",[36,2398,2399],{},"[Install]"," секцию, но не содержит ",[36,2402,2403],{},"WantedBy=",[36,2405,2406],{},"RequiredBy="," (чаще всего ",[36,2409,2410],{},"WantedBy=multi-user.target","). Добавьте эту строку в unit-файл и выполните ",[36,2413,2414],{},"daemon-reload",[36,2416,2388],{}," заново.",[32,2419,2420,2423],{},[25,2421,2422],{},"Циклические перезапуски (restart loop).",[29,2424,2425],{},[32,2426,2427,2429,2430,2277,2432,2435,2436,2439,2440,2443],{},[25,2428,1123],{}," В unit-файле секция ",[36,2431,2352],{},[36,2433,2434],{},"Restart=always"," (или ",[36,2437,2438],{},"on-failure","), а процесс немедленно завершается с ошибкой. Исправьте ошибку приложения или временно закомментируйте ",[36,2441,2442],{},"Restart"," для диагностики.",[1295,2445,2446],{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}",{"title":124,"searchDepth":185,"depth":185,"links":2448},[2449,2450,2451,2452,2453,2454,2455,2456,2457],{"id":16,"depth":185,"text":17},{"id":54,"depth":185,"text":55},{"id":1731,"depth":185,"text":1732},{"id":1851,"depth":185,"text":1852},{"id":1947,"depth":185,"text":1948},{"id":2053,"depth":185,"text":2054},{"id":2183,"depth":185,"text":2184},{"id":1072,"depth":185,"text":1073},{"id":1111,"depth":185,"text":1112},"2026-02-16 12:40:35","Пошаговая инструкция по работе с systemd. Узнайте, как управлять службами Linux через systemctl: запуск, остановка, автозагрузка, просмотр логов. Решения для Ubuntu, CentOS, Debian.","15-30 мин",[2462,2465,2468,2471],{"answer":2463,"question":2464},"Используйте команду `systemctl status \u003Cимя_службы>`. В выводе ищите строку `Active: active (running)` для работающих сервисов.","Как проверить, работает ли служба systemd?",{"answer":2466,"question":2467},"Systemd обеспечивает параллельный запуск служб, имеет единую точку управления (systemctl), встроенный журнал (journalctl) и более сложные зависимости между сервисами.","Чем systemd отличается от старых init-скриптов (SysVinit)?",{"answer":2469,"question":2470},"Создайте файл `/etc/systemd/system/ваш-сервис.service` с корректными секциями `[Unit]`, `[Service]` и `[Install]`, затем выполните `systemctl daemon-reload`.","Как создать свой собственный unit-файл для сервиса?",{"answer":2472,"question":2473},"Возможные причины: ошибка в unit-файле, конфликт зависимостей, отсутствие требуемого устройства или файла. Проверьте логи: `journalctl -u \u003Cимя_службы> -b`.","Почему служба не запускается при загрузке, хотя включена через systemctl enable?",[2475,2478,2481,2484,2487,2490],{"name":2476,"text":2477},"Проверка статуса службы","Используйте `systemctl status \u003Cservice>` для получения подробной информации о состоянии, PID и последних записях журнала.",{"name":2479,"text":2480},"Базовое управление (start, stop, restart)","Запустите службу командой `systemctl start \u003Cservice>`, остановите `stop`, перезапустите `restart`.",{"name":2482,"text":2483},"Управление автозагрузкой","Включите автозапуск при загрузке системы: `systemctl enable \u003Cservice>`. Отключите: `systemctl disable \u003Cservice>`.",{"name":2485,"text":2486},"Просмотр всех служб и фильтрация","`systemctl list-units --type=service --all` показывает все unit-файлы. Используйте `grep` для поиска, например: `systemctl list-units | grep nginx`.",{"name":2488,"text":2489},"Работа с журналом (journalctl)","Просмотрите логи конкретной службы: `journalctl -u \u003Cservice> -f` (слежение в реальном времени).",{"name":2491,"text":2492},"Перезагрузка демона systemd","После ручного изменения unit-файлов выполните `systemctl daemon-reload`, чтобы systemd перечитал конфигурацию.","PT20M",[2495,2496,2497,2498,2499,2500,2501,2502],"systemd управление сервисами","systemctl команды","как запустить службу в linux","systemd journal логи","включить автозагрузку службы","остановить systemd сервис","проверить статус службы","systemd service management",{},[2505,2506,2507],"/guides/linux/systemd-journal-logs","/errors/linux/systemd-failed-to-start","/guides/linux/crontab-vs-systemd-timers",{"title":1689,"description":2459},"guides/linux/systemd-service-management","В этом гайде вы освоите основные команды systemctl для управления службами в современных дистрибутивах Linux. Вы научитесь запускать, останавливать, включать в автозагрузку сервисы и диагностировать проблемы.",[83,1402,1412,1417,87],"9uE8OqlOsTa0iBKReZb5paRxhaZypg32oh1Z0Lq3y94",{"id":2514,"title":2515,"appliesTo":2516,"author":9,"body":2522,"canonical":1349,"code":124,"createdAt":4046,"description":4047,"difficulty":1352,"draft":1353,"estimatedTime":4048,"extension":1355,"faq":4049,"howToSteps":4062,"howToTotalTime":2493,"image":1349,"keywords":4081,"locale":1399,"meta":4092,"navigation":1013,"path":1405,"platform":1402,"related":4093,"section":1407,"seo":4097,"severity":4098,"stem":4099,"summary":4100,"tags":4101,"twitterCreator":1349,"twitterSite":1349,"type":1417,"updatedAt":4046,"__hash__":4108},"content_ru/guides/linux/ssh-connection-issues.md","Решаем проблемы с SSH-подключением в Linux: полное руководство",[2517,2518,2519,2520,2521],"Ubuntu 22.04 LTS","Debian 11/12","CentOS 8/9 Stream","Arch Linux","OpenSSH 8.0+",{"type":11,"value":2523,"toc":4032},[2524,2526,2529,2531,2561,2565,2568,2645,2680,2692,2696,2702,2768,2773,2824,2828,2838,2876,2881,3004,3010,3025,3029,3035,3042,3099,3104,3144,3149,3191,3214,3218,3221,3284,3289,3331,3336,3375,3379,3382,3403,3408,3478,3483,3544,3546,3553,3559,3562,3568,3570,3745,3747,3751,3754,3936,3999,4003,4029],[14,2525,17],{"id":16},[19,2527,2528],{},"SSH (Secure Shell) — это основной инструмент для удалённого управления Linux-серверами. Проблемы с подключением могут парализовать работу: вы не сможете развернуть приложение, обновить систему или даже восстановить доступ после сбоя. Этот гайд систематизирует диагностику, начиная от простой проверки сети и заканчивая анализом логов. Вы получите чёткий алгоритм действий, который сработает на большинстве дистрибутивов (Ubuntu, Debian, CentOS, Arch).",[14,2530,55],{"id":54},[60,2532,2533,2543,2551,2558],{},[32,2534,2535,2538,2539,2542],{},[25,2536,2537],{},"Доступ к консоли"," на целевом сервере (через KVM, iLO, консоль в панели хостинга) ",[25,2540,2541],{},"или"," доступ с другого рабочего узла в сети.",[32,2544,2545,2546,798,2548,2550],{},"Права ",[25,2547,70],{},[25,2549,1422],{}," на сервере для перезапуска служб и просмотра логов.",[32,2552,2553,2554,2557],{},"Установленный клиент ",[36,2555,2556],{},"openssh-client"," на вашей локальной машине.",[32,2559,2560],{},"Базовое понимание командной строки Linux.",[14,2562,2564],{"id":2563},"шаг-1-проверка-базовой-сетевой-доступности","Шаг 1: Проверка базовой сетевой доступности",[19,2566,2567],{},"Прежде чем копаться в конфигурации SSH, убедитесь, что сервер вообще доступен по сети, а порт SSH открыт.",[119,2569,2571],{"className":121,"code":2570,"language":123,"meta":124,"style":124},"# 1. Проверяем, отвечает ли хост (замените server_ip на IP или домен)\nping -c 4 server_ip\n\n# 2. Проверяем, открыт ли порт SSH (по умолчанию 22) с помощью netcat (nc)\n# Установите nc, если его нет: sudo apt install netcat (Debian/Ubuntu) или sudo yum install nc (RHEL/CentOS)\nnc -zv server_ip 22\n\n# Альтернатива с nmap (если установлен)\nnmap -p 22 server_ip\n",[36,2572,2573,2578,2592,2596,2601,2606,2621,2626,2632],{"__ignoreMap":124},[128,2574,2575],{"class":130,"line":131},[128,2576,2577],{"class":181},"# 1. Проверяем, отвечает ли хост (замените server_ip на IP или домен)\n",[128,2579,2580,2583,2586,2589],{"class":130,"line":185},[128,2581,2582],{"class":134},"ping",[128,2584,2585],{"class":174}," -c",[128,2587,2588],{"class":174}," 4",[128,2590,2591],{"class":137}," server_ip\n",[128,2593,2594],{"class":130,"line":239},[128,2595,1014],{"emptyLinePlaceholder":1013},[128,2597,2598],{"class":130,"line":1017},[128,2599,2600],{"class":181},"# 2. Проверяем, открыт ли порт SSH (по умолчанию 22) с помощью netcat (nc)\n",[128,2602,2603],{"class":130,"line":1023},[128,2604,2605],{"class":181},"# Установите nc, если его нет: sudo apt install netcat (Debian/Ubuntu) или sudo yum install nc (RHEL/CentOS)\n",[128,2607,2609,2612,2615,2618],{"class":130,"line":2608},6,[128,2610,2611],{"class":134},"nc",[128,2613,2614],{"class":174}," -zv",[128,2616,2617],{"class":137}," server_ip",[128,2619,2620],{"class":174}," 22\n",[128,2622,2624],{"class":130,"line":2623},7,[128,2625,1014],{"emptyLinePlaceholder":1013},[128,2627,2629],{"class":130,"line":2628},8,[128,2630,2631],{"class":181},"# Альтернатива с nmap (если установлен)\n",[128,2633,2635,2638,2640,2643],{"class":130,"line":2634},9,[128,2636,2637],{"class":134},"nmap",[128,2639,328],{"class":174},[128,2641,2642],{"class":174}," 22",[128,2644,2591],{"class":137},[29,2646,2647,2660,2670],{},[32,2648,2649,2655,2656,2659],{},[25,2650,2651,2652,2654],{},"Результат ",[36,2653,2611],{},":"," ",[36,2657,2658],{},"Connection to server_ip 22 port [tcp/ssh] succeeded!"," — порт открыт.",[32,2661,2662,2655,2666,2669],{},[25,2663,2651,2664,2654],{},[36,2665,2611],{},[36,2667,2668],{},"Connection refused"," — порт закрыт или служба не слушает.",[32,2671,2672,2655,2676,2679],{},[25,2673,2651,2674,2654],{},[36,2675,2611],{},[36,2677,2678],{},"No route to host"," или таймаут — проблемы на сетевом уровне (фаервол, маршрутизация, хост выключен).",[1832,2681,2682],{},[19,2683,2684,2685,2688,2689,2691],{},"⚠️ ",[25,2686,2687],{},"Важно:"," Если ",[36,2690,2582],{}," не работает, проблема не в SSH, а в сети. Проверьте настройки IP, шлюз, фаервол локальной машины и промежуточных устройств.",[14,2693,2695],{"id":2694},"шаг-2-диагностика-службы-ssh-на-сервере","Шаг 2: Диагностика службы SSH на сервере",[19,2697,2698,2699,39],{},"Если порт открыт, но подключение не устанавливается, проверьте, работает ли демон ",[36,2700,2701],{},"sshd",[119,2703,2705],{"className":121,"code":2704,"language":123,"meta":124,"style":124},"# 1. Проверьте статус службы (для systemd)\nsudo systemctl status sshd\n\n# 2. Узнайте, на каком порту(ах) служит служба\nsudo ss -tlnp | grep sshd\n# Или\nsudo netstat -tlnp | grep sshd\n",[36,2706,2707,2712,2723,2727,2732,2748,2753],{"__ignoreMap":124},[128,2708,2709],{"class":130,"line":131},[128,2710,2711],{"class":181},"# 1. Проверьте статус службы (для systemd)\n",[128,2713,2714,2716,2718,2720],{"class":130,"line":185},[128,2715,70],{"class":134},[128,2717,1754],{"class":137},[128,2719,1967],{"class":137},[128,2721,2722],{"class":137}," sshd\n",[128,2724,2725],{"class":130,"line":239},[128,2726,1014],{"emptyLinePlaceholder":1013},[128,2728,2729],{"class":130,"line":1017},[128,2730,2731],{"class":181},"# 2. Узнайте, на каком порту(ах) служит служба\n",[128,2733,2734,2736,2739,2742,2744,2746],{"class":130,"line":1023},[128,2735,70],{"class":134},[128,2737,2738],{"class":137}," ss",[128,2740,2741],{"class":174}," -tlnp",[128,2743,402],{"class":401},[128,2745,405],{"class":134},[128,2747,2722],{"class":137},[128,2749,2750],{"class":130,"line":2608},[128,2751,2752],{"class":181},"# Или\n",[128,2754,2755,2757,2760,2762,2764,2766],{"class":130,"line":2623},[128,2756,70],{"class":134},[128,2758,2759],{"class":137}," netstat",[128,2761,2741],{"class":174},[128,2763,402],{"class":401},[128,2765,405],{"class":134},[128,2767,2722],{"class":137},[19,2769,2770],{},[25,2771,2772],{},"Типичные сценарии:",[29,2774,2775,2791,2814],{},[32,2776,2777,2783,2784,2787,2788,39],{},[25,2778,2779,2780,2090],{},"Служба неактивна (",[36,2781,2782],{},"inactive"," Запустите её: ",[36,2785,2786],{},"sudo systemctl start sshd"," и включите автозагрузку: ",[36,2789,2790],{},"sudo systemctl enable sshd",[32,2792,2793,2806,2807,2809,2810,2813],{},[25,2794,2795,2796,2435,2799,2802,2803,2654],{},"Служба слушает не на ",[36,2797,2798],{},"0.0.0.0:22",[36,2800,2801],{},":::22","), а только на ",[36,2804,2805],{},"127.0.0.1:22"," Это значит, что ",[36,2808,2701],{}," настроен принимать подключения только локально. Проверьте параметр ",[36,2811,2812],{},"ListenAddress"," в конфиге (см. Шаг 3).",[32,2815,2816,2819,2820,2823],{},[25,2817,2818],{},"Служба слушает на нестандартном порту (например, 2222):"," Либо измените порт в клиенте (",[36,2821,2822],{},"ssh -p 2222 user@host","), либо верните стандартный в конфиге.",[14,2825,2827],{"id":2826},"шаг-3-анализ-конфигурации-ssh-сервера","Шаг 3: Анализ конфигурации SSH-сервера",[19,2829,2830,2831,2834,2835,39],{},"Основной конфигурационный файл — ",[36,2832,2833],{},"/etc/ssh/sshd_config",". Вносите изменения с осторожностью, делайте бэкап: ",[36,2836,2837],{},"sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.backup",[119,2839,2841],{"className":121,"code":2840,"language":123,"meta":124,"style":124},"# Просмотрите текущую конфигурацию, игнорируя комментарии\nsudo cat /etc/ssh/sshd_config | grep -v \"^#\" | grep -v \"^$\"\n",[36,2842,2843,2848],{"__ignoreMap":124},[128,2844,2845],{"class":130,"line":131},[128,2846,2847],{"class":181},"# Просмотрите текущую конфигурацию, игнорируя комментарии\n",[128,2849,2850,2852,2854,2857,2859,2861,2864,2867,2869,2871,2873],{"class":130,"line":185},[128,2851,70],{"class":134},[128,2853,777],{"class":137},[128,2855,2856],{"class":137}," /etc/ssh/sshd_config",[128,2858,402],{"class":401},[128,2860,405],{"class":134},[128,2862,2863],{"class":174}," -v",[128,2865,2866],{"class":137}," \"^#\"",[128,2868,402],{"class":401},[128,2870,405],{"class":134},[128,2872,2863],{"class":174},[128,2874,2875],{"class":137}," \"^$\"\n",[19,2877,2878],{},[25,2879,2880],{},"Критические параметры для проверки:",[2882,2883,2884,2898],"table",{},[2885,2886,2887],"thead",{},[2888,2889,2890,2895],"tr",{},[2891,2892,2894],"th",{"align":2893},"left","Параметр",[2891,2896,2897],{"align":2893},"Рекомендуемое значение / Что проверить",[2899,2900,2901,2915,2928,2948,2963,2977,2991],"tbody",{},[2888,2902,2903,2909],{},[2904,2905,2906],"td",{"align":2893},[36,2907,2908],{},"Port",[2904,2910,2911,2912,77],{"align":2893},"Убедитесь, что порт совпадает с тем, на который вы пытаетесь подключиться (по умолчанию ",[36,2913,2914],{},"22",[2888,2916,2917,2921],{},[2904,2918,2919],{"align":2893},[36,2920,2812],{},[2904,2922,2923,2924,2927],{"align":2893},"Должен быть ",[36,2925,2926],{},"0.0.0.0"," (все интерфейсы) или конкретный IP сервера. Если закомментирован — используется по умолчанию.",[2888,2929,2930,2935],{},[2904,2931,2932],{"align":2893},[36,2933,2934],{},"PermitRootLogin",[2904,2936,2937,2940,2941,2944,2945,2443],{"align":2893},[36,2938,2939],{},"prohibit-password"," (рекомендуется) или ",[36,2942,2943],{},"no",". Если нужно логин под root, временно можно поставить ",[36,2946,2947],{},"yes",[2888,2949,2950,2955],{},[2904,2951,2952],{"align":2893},[36,2953,2954],{},"PasswordAuthentication",[2904,2956,2957,2959,2960,2962],{"align":2893},[36,2958,2947],{}," (если хотите использовать пароль) или ",[36,2961,2943],{}," (если только ключи).",[2888,2964,2965,2970],{},[2904,2966,2967],{"align":2893},[36,2968,2969],{},"PubkeyAuthentication",[2904,2971,2972,2976],{"align":2893},[25,2973,2923,2974],{},[36,2975,2947],{},", если используете аутентификацию по ключу.",[2888,2978,2979,2988],{},[2904,2980,2981,2984,2985],{"align":2893},[36,2982,2983],{},"AllowUsers"," / ",[36,2986,2987],{},"AllowGroups",[2904,2989,2990],{"align":2893},"Если эти директивы есть, убедитесь, что ваш пользователь указан в списке.",[2888,2992,2993,3001],{},[2904,2994,2995,2984,2998],{"align":2893},[36,2996,2997],{},"DenyUsers",[36,2999,3000],{},"DenyGroups",[2904,3002,3003],{"align":2893},"Убедитесь, что ваш пользователь не запрещён.",[19,3005,3006,3007,2654],{},"После любого изменения конфига ",[25,3008,3009],{},"необходимо перезапустить службу",[119,3011,3013],{"className":121,"code":3012,"language":123,"meta":124,"style":124},"sudo systemctl restart sshd\n",[36,3014,3015],{"__ignoreMap":124},[128,3016,3017,3019,3021,3023],{"class":130,"line":131},[128,3018,70],{"class":134},[128,3020,1754],{"class":137},[128,3022,1807],{"class":137},[128,3024,2722],{"class":137},[14,3026,3028],{"id":3027},"шаг-4-проверка-прав-на-файлы-и-папки-ssh-для-аутентификации-по-ключу","Шаг 4: Проверка прав на файлы и папки SSH (для аутентификации по ключу)",[19,3030,3031,3032,39],{},"SSH-сервер очень строг к правам на файлы. Неправильные права — частая причина ",[36,3033,3034],{},"Permission denied (publickey)",[19,3036,3037,3038,3041],{},"На ",[25,3039,3040],{},"сервере"," (под пользователем, под которым вы пытаетесь войти):",[119,3043,3045],{"className":121,"code":3044,"language":123,"meta":124,"style":124},"# 1. Проверьте права на домашнюю директорию пользователя\nls -ld ~\n\n# 2. Проверьте права на папку .ssh\nls -ld ~/.ssh\n\n# 3. Проверьте права на файл authorized_keys\nls -l ~/.ssh/authorized_keys\n",[36,3046,3047,3052,3062,3066,3071,3080,3084,3089],{"__ignoreMap":124},[128,3048,3049],{"class":130,"line":131},[128,3050,3051],{"class":181},"# 1. Проверьте права на домашнюю директорию пользователя\n",[128,3053,3054,3056,3059],{"class":130,"line":185},[128,3055,837],{"class":134},[128,3057,3058],{"class":174}," -ld",[128,3060,3061],{"class":137}," ~\n",[128,3063,3064],{"class":130,"line":239},[128,3065,1014],{"emptyLinePlaceholder":1013},[128,3067,3068],{"class":130,"line":1017},[128,3069,3070],{"class":181},"# 2. Проверьте права на папку .ssh\n",[128,3072,3073,3075,3077],{"class":130,"line":1023},[128,3074,837],{"class":134},[128,3076,3058],{"class":174},[128,3078,3079],{"class":137}," ~/.ssh\n",[128,3081,3082],{"class":130,"line":2608},[128,3083,1014],{"emptyLinePlaceholder":1013},[128,3085,3086],{"class":130,"line":2623},[128,3087,3088],{"class":181},"# 3. Проверьте права на файл authorized_keys\n",[128,3090,3091,3093,3096],{"class":130,"line":2628},[128,3092,837],{"class":134},[128,3094,3095],{"class":174}," -l",[128,3097,3098],{"class":137}," ~/.ssh/authorized_keys\n",[19,3100,3101],{},[25,3102,3103],{},"Правильные права:",[29,3105,3106,3117,3129,3141],{},[32,3107,3108,3109,3112,3113,3116],{},"Домашняя директория (",[36,3110,3111],{},"/home/username","): ",[36,3114,3115],{},"drwxr-xr-x"," (755) или строже.",[32,3118,3119,3120,735,3123,39],{},"Папка ",[36,3121,3122],{},".ssh",[25,3124,3125,3128],{},[36,3126,3127],{},"drwx------"," (700)",[32,3130,3131,3132,735,3135,39],{},"Файл ",[36,3133,3134],{},"authorized_keys",[25,3136,3137,3140],{},[36,3138,3139],{},"-rw-------"," (600)",[32,3142,3143],{},"Владелец всех этих объектов — сам пользователь, под которым идёт вход.",[19,3145,3146],{},[25,3147,3148],{},"Исправление прав:",[119,3150,3152],{"className":121,"code":3151,"language":123,"meta":124,"style":124},"chmod 700 ~/.ssh\nchmod 600 ~/.ssh/authorized_keys\n# Иногда помогает:\nchown -R username:username ~/.ssh\n",[36,3153,3154,3164,3173,3178],{"__ignoreMap":124},[128,3155,3156,3159,3162],{"class":130,"line":131},[128,3157,3158],{"class":134},"chmod",[128,3160,3161],{"class":174}," 700",[128,3163,3079],{"class":137},[128,3165,3166,3168,3171],{"class":130,"line":185},[128,3167,3158],{"class":134},[128,3169,3170],{"class":174}," 600",[128,3172,3098],{"class":137},[128,3174,3175],{"class":130,"line":239},[128,3176,3177],{"class":181},"# Иногда помогает:\n",[128,3179,3180,3183,3186,3189],{"class":130,"line":1017},[128,3181,3182],{"class":134},"chown",[128,3184,3185],{"class":174}," -R",[128,3187,3188],{"class":137}," username:username",[128,3190,3079],{"class":137},[1832,3192,3193],{},[19,3194,1836,3195,3197,3198,3201,3202,798,3205,3208,3209,2655,3211,39],{},[25,3196,1839],{}," Если вы только что сгенерировали ключ и скопировали его на сервер, убедитесь, что вы копировали ",[25,3199,3200],{},"публичный"," ключ (файл ",[36,3203,3204],{},"id_ed25519.pub",[36,3206,3207],{},"id_rsa.pub","), а не приватный, и что он добавлен в ",[36,3210,3134],{},[25,3212,3213],{},"как одна строка",[14,3215,3217],{"id":3216},"шаг-5-анализ-логов-ssh","Шаг 5: Анализ логов SSH",[19,3219,3220],{},"Логи — самый надёжный источник истины. Где смотреть, зависит от дистрибутива.",[119,3222,3224],{"className":121,"code":3223,"language":123,"meta":124,"style":124},"# Для RHEL/CentOS/Fedora/AlmaLinux/Rocky Linux и родственных:\nsudo tail -f /var/log/secure\n\n# Для Debian/Ubuntu и родственных:\nsudo tail -f /var/log/auth.log\n\n# Универсальный способ через systemd journal (работает везде):\nsudo journalctl -u sshd -f\n",[36,3225,3226,3231,3242,3246,3251,3262,3266,3271],{"__ignoreMap":124},[128,3227,3228],{"class":130,"line":131},[128,3229,3230],{"class":181},"# Для RHEL/CentOS/Fedora/AlmaLinux/Rocky Linux и родственных:\n",[128,3232,3233,3235,3237,3239],{"class":130,"line":185},[128,3234,70],{"class":134},[128,3236,497],{"class":137},[128,3238,192],{"class":174},[128,3240,3241],{"class":137}," /var/log/secure\n",[128,3243,3244],{"class":130,"line":239},[128,3245,1014],{"emptyLinePlaceholder":1013},[128,3247,3248],{"class":130,"line":1017},[128,3249,3250],{"class":181},"# Для Debian/Ubuntu и родственных:\n",[128,3252,3253,3255,3257,3259],{"class":130,"line":1023},[128,3254,70],{"class":134},[128,3256,497],{"class":137},[128,3258,192],{"class":174},[128,3260,3261],{"class":137}," /var/log/auth.log\n",[128,3263,3264],{"class":130,"line":2608},[128,3265,1014],{"emptyLinePlaceholder":1013},[128,3267,3268],{"class":130,"line":2623},[128,3269,3270],{"class":181},"# Универсальный способ через systemd journal (работает везде):\n",[128,3272,3273,3275,3277,3279,3282],{"class":130,"line":2628},[128,3274,70],{"class":134},[128,3276,171],{"class":137},[128,3278,266],{"class":174},[128,3280,3281],{"class":137}," sshd",[128,3283,2109],{"class":174},[19,3285,3286],{},[25,3287,3288],{},"Что ищем в логах:",[29,3290,3291,3297,3303,3313,3319,3325],{},[32,3292,3293,3296],{},[36,3294,3295],{},"Failed password for ..."," — ошибка пароля.",[32,3298,3299,3302],{},[36,3300,3301],{},"Connection closed by ..."," — клиент разорвал соединение, часто из-за проблем с ключом.",[32,3304,3305,3308,3309,3312],{},[36,3306,3307],{},"Authentication refused: bad ownership or modes for directory /home/..."," — ",[25,3310,3311],{},"неправильные права"," (см. Шаг 4).",[32,3314,3315,3318],{},[36,3316,3317],{},"User ... not allowed because not listed in AllowUsers"," — пользователь запрещён в конфиге.",[32,3320,3321,3324],{},[36,3322,3323],{},"Received disconnect from ...: 11: Bye Bye"," — может указывать на проблему с сессией или ключом.",[32,3326,3327,3330],{},[36,3328,3329],{},"Invalid user ..."," — попытка войти под несуществующим пользователем.",[19,3332,3333],{},[25,3334,3335],{},"Пример для быстрой фильтрации по IP или пользователю:",[119,3337,3339],{"className":121,"code":3338,"language":123,"meta":124,"style":124},"sudo journalctl -u sshd | grep \"192.168.1.100\"\nsudo journalctl -u sshd | grep \"user_login\"\n",[36,3340,3341,3358],{"__ignoreMap":124},[128,3342,3343,3345,3347,3349,3351,3353,3355],{"class":130,"line":131},[128,3344,70],{"class":134},[128,3346,171],{"class":137},[128,3348,266],{"class":174},[128,3350,3281],{"class":137},[128,3352,402],{"class":401},[128,3354,405],{"class":134},[128,3356,3357],{"class":137}," \"192.168.1.100\"\n",[128,3359,3360,3362,3364,3366,3368,3370,3372],{"class":130,"line":185},[128,3361,70],{"class":134},[128,3363,171],{"class":137},[128,3365,266],{"class":174},[128,3367,3281],{"class":137},[128,3369,402],{"class":401},[128,3371,405],{"class":134},[128,3373,3374],{"class":137}," \"user_login\"\n",[14,3376,3378],{"id":3377},"шаг-6-тестирование-подключения-с-отладкой-клиентская-сторона","Шаг 6: Тестирование подключения с отладкой (клиентская сторона)",[19,3380,3381],{},"Запустите подключение с максимальной детализацией. Это покажет, на каком именно этапе происходит сбой.",[119,3383,3385],{"className":121,"code":3384,"language":123,"meta":124,"style":124},"# Максимально подробные логи (3 уровня -v)\nssh -vvv user@server_ip\n",[36,3386,3387,3392],{"__ignoreMap":124},[128,3388,3389],{"class":130,"line":131},[128,3390,3391],{"class":181},"# Максимально подробные логи (3 уровня -v)\n",[128,3393,3394,3397,3400],{"class":130,"line":185},[128,3395,3396],{"class":134},"ssh",[128,3398,3399],{"class":174}," -vvv",[128,3401,3402],{"class":137}," user@server_ip\n",[19,3404,3405],{},[25,3406,3407],{},"На что обратить внимание в выводе:",[60,3409,3410,3418,3426,3434,3445,3453,3468],{},[32,3411,3412,3417],{},[25,3413,3414],{},[36,3415,3416],{},"debug1: Connecting to server_ip [server_ip] port 22."," — клиент нашёл хост и порт.",[32,3419,3420,3425],{},[25,3421,3422],{},[36,3423,3424],{},"debug1: Connection established."," — TCP-соединение прошло.",[32,3427,3428,3433],{},[25,3429,3430],{},[36,3431,3432],{},"debug1: Authenticating to server_ip:22 as 'user'"," — начало аутентификации.",[32,3435,3436,3441,3442,77],{},[25,3437,3438],{},[36,3439,3440],{},"debug1: Offering public key: /home/you/.ssh/id_ed25519 ..."," — клиент предлагает ключ. Если ключ не предлагается, возможно, агент ssh-agent не запущен или ключ не добавлен (",[36,3443,3444],{},"ssh-add -l",[32,3446,3447,3452],{},[25,3448,3449],{},[36,3450,3451],{},"debug1: Authentications that can continue: publickey,password"," — сервер сообщил, какие методы аутентификации он принимает.",[32,3454,3455,3460,3461,3464,3465,3467],{},[25,3456,3457],{},[36,3458,3459],{},"debug1: Offering public key: ..."," повторяется, затем ",[36,3462,3463],{},"debug1: Authentications failed."," — сервер отклонил ключ (проблема на стороне сервера: ключ не в ",[36,3466,3134],{},", неправильные права, SELinux).",[32,3469,3470,3471,3474,3475,77],{},"Если после этого идёт ",[36,3472,3473],{},"debug1: Next authentication method: password",", значит, сервер принял переход к паролю (если ",[36,3476,3477],{},"PasswordAuthentication yes",[19,3479,3480],{},[25,3481,3482],{},"Клиентские опции для тестов:",[119,3484,3486],{"className":121,"code":3485,"language":123,"meta":124,"style":124},"# Отключить использование ключей (проверить парольную аутентификацию)\nssh -o PubkeyAuthentication=no user@server_ip\n\n# Указать конкретный ключ\nssh -i ~/.ssh/my_specific_key user@server_ip\n\n# Отключить проверку known_hosts (опасно, только для теста!)\nssh -o StrictHostKeyChecking=no user@server_ip\n",[36,3487,3488,3493,3504,3508,3513,3524,3528,3533],{"__ignoreMap":124},[128,3489,3490],{"class":130,"line":131},[128,3491,3492],{"class":181},"# Отключить использование ключей (проверить парольную аутентификацию)\n",[128,3494,3495,3497,3499,3502],{"class":130,"line":185},[128,3496,3396],{"class":134},[128,3498,2177],{"class":174},[128,3500,3501],{"class":137}," PubkeyAuthentication=no",[128,3503,3402],{"class":137},[128,3505,3506],{"class":130,"line":239},[128,3507,1014],{"emptyLinePlaceholder":1013},[128,3509,3510],{"class":130,"line":1017},[128,3511,3512],{"class":181},"# Указать конкретный ключ\n",[128,3514,3515,3517,3519,3522],{"class":130,"line":1023},[128,3516,3396],{"class":134},[128,3518,408],{"class":174},[128,3520,3521],{"class":137}," ~/.ssh/my_specific_key",[128,3523,3402],{"class":137},[128,3525,3526],{"class":130,"line":2608},[128,3527,1014],{"emptyLinePlaceholder":1013},[128,3529,3530],{"class":130,"line":2623},[128,3531,3532],{"class":181},"# Отключить проверку known_hosts (опасно, только для теста!)\n",[128,3534,3535,3537,3539,3542],{"class":130,"line":2628},[128,3536,3396],{"class":134},[128,3538,2177],{"class":174},[128,3540,3541],{"class":137}," StrictHostKeyChecking=no",[128,3543,3402],{"class":137},[14,3545,1073],{"id":1072},[19,3547,3548,3549,3552],{},"Успешное подключение завершится приглашением командной строки удалённого сервера. В логах клиента (",[36,3550,3551],{},"-vvv",") вы увидите строки:",[119,3554,3557],{"className":3555,"code":3556,"language":1044},[1042],"debug1: Authentication succeeded (publickey).\nAuthenticated to server_ip ([server_ip]:22).\n",[36,3558,3556],{"__ignoreMap":124},[19,3560,3561],{},"На сервере в логах появится запись:",[119,3563,3566],{"className":3564,"code":3565,"language":1044},[1042],"Accepted publickey for user from client_ip port client_port ssh2: ED25519 SHA256:...\n",[36,3567,3565],{"__ignoreMap":124},[14,3569,1112],{"id":1111},[2882,3571,3572,3585],{},[2885,3573,3574],{},[2888,3575,3576,3579,3582],{},[2891,3577,3578],{"align":2893},"Симптом",[2891,3580,3581],{"align":2893},"Вероятная причина",[2891,3583,3584],{"align":2893},"Решение",[2899,3586,3587,3618,3641,3694,3720],{},[2888,3588,3589,3594,3600],{},[2904,3590,3591],{"align":2893},[36,3592,3593],{},"ssh: connect to host server_ip port 22: Connection refused",[2904,3595,3596,3597,3599],{"align":2893},"Служба ",[36,3598,2701],{}," не запущена, слушает на другом порту или блокируется фаерволом.",[2904,3601,3602,3603,1844,3605,3607,3608,3611,3612,798,3615,77],{"align":2893},"Запустите ",[36,3604,2701],{},[36,3606,2786],{},"). Проверьте порт (",[36,3609,3610],{},"ss -tlnp","). Проверьте фаервол (",[36,3613,3614],{},"sudo ufw status",[36,3616,3617],{},"sudo firewall-cmd --list-all",[2888,3619,3620,3625,3628],{},[2904,3621,3622],{"align":2893},[36,3623,3624],{},"ssh: connect to host server_ip port 22: Operation timed out",[2904,3626,3627],{"align":2893},"Сетевой трафик блокируется на маршруте (фаервол на сервере, облачный Security Group, провайдер).",[2904,3629,3630,3631,97,3634,97,3637,3640],{"align":2893},"Проверьте все фаерволы: на сервере (",[36,3632,3633],{},"iptables -L -n",[36,3635,3636],{},"ufw",[36,3638,3639],{},"firewalld","), в панели управления хостинга/облака (Security Groups, Network ACLs).",[2888,3642,3643,3648,3671],{},[2904,3644,3645],{"align":2893},[36,3646,3647],{},"Permission denied (publickey,password).",[2904,3649,3650,3651,39,3653,3655,3656,39,3658,3660,3661,1844,3664,97,3666,77,3668,3670],{"align":2893},"1. Неверный/отсутствующий ключ в ",[36,3652,3134],{},[1159,3654],{},"2. Неправильные права на файлы ",[36,3657,3122],{},[1159,3659],{},"3. Пользователь запрещён в ",[36,3662,3663],{},"sshd_config",[36,3665,2983],{},[36,3667,2997],{},[1159,3669],{},"4. SELinux/AppArmor блокирует доступ.",[2904,3672,3673,3674,3676,3677,3679,3680,3682,3683,3685,3686,3689,3690,3693],{"align":2893},"1. Перекопируйте ключ.",[1159,3675],{},"2. Исправьте права (700/600).",[1159,3678],{},"3. Проверьте ",[36,3681,3663],{}," на запреты.",[1159,3684],{},"4. Проверьте логи SELinux (",[36,3687,3688],{},"sudo ausearch -m avc -ts recent","). Временно отключите: ",[36,3691,3692],{},"sudo setenforce 0"," (для диагностики).",[2888,3695,3696,3701,3707],{},[2904,3697,3698],{"align":2893},[36,3699,3700],{},"The authenticity of host 'server_ip (server_ip)' can't be established.",[2904,3702,3703,3704,39],{"align":2893},"Вы подключаетесь к серверу впервые, его ключ отсутствует в ",[36,3705,3706],{},"~/.ssh/known_hosts",[2904,3708,3709,3710,3713,3714,3716,3717,39],{"align":2893},"Это ",[25,3711,3712],{},"предупреждение",", а не ошибка. Если уверены в сервере, введите ",[36,3715,2947],{},". Если ключ изменился (например, переустановка ОС), удалите старую запись: ",[36,3718,3719],{},"ssh-keygen -R server_ip",[2888,3721,3722,3727,3730],{},[2904,3723,3724],{"align":2893},[36,3725,3726],{},"Connection closed by remote host",[2904,3728,3729],{"align":2893},"Сервер разрывает соединение на этапе аутентификации. Часто из-за несовпадения ключей или проблем с сессией.",[2904,3731,3732,3733,3735,3736,3738,3739,97,3742,39],{"align":2893},"Проверьте логи ",[36,3734,2701],{}," на предмет ошибок. Убедитесь, что в ",[36,3737,3663],{}," нет ограничений по ",[36,3740,3741],{},"MaxSessions",[36,3743,3744],{},"ClientAliveInterval",[1232,3746],{},[14,3748,3750],{"id":3749},"дополнительные-методы-диагностики","Дополнительные методы диагностики",[19,3752,3753],{},"Если стандартные шаги не помогли, проверьте следующее:",[60,3755,3756,3795,3860,3886,3904,3914],{},[32,3757,3758,3761],{},[25,3759,3760],{},"Проверка фаервола на сервере (UFW example):",[119,3762,3764],{"className":121,"code":3763,"language":123,"meta":124,"style":124},"sudo ufw status numbered\n# Если правило для 22/tcp отсутствует, добавьте:\nsudo ufw allow 22/tcp\n",[36,3765,3766,3778,3783],{"__ignoreMap":124},[128,3767,3768,3770,3773,3775],{"class":130,"line":131},[128,3769,70],{"class":134},[128,3771,3772],{"class":137}," ufw",[128,3774,1967],{"class":137},[128,3776,3777],{"class":137}," numbered\n",[128,3779,3780],{"class":130,"line":185},[128,3781,3782],{"class":181},"# Если правило для 22/tcp отсутствует, добавьте:\n",[128,3784,3785,3787,3789,3792],{"class":130,"line":239},[128,3786,70],{"class":134},[128,3788,3772],{"class":137},[128,3790,3791],{"class":137}," allow",[128,3793,3794],{"class":137}," 22/tcp\n",[32,3796,3797,3800],{},[25,3798,3799],{},"Проверка SELinux/AppArmor:",[119,3801,3803],{"className":121,"code":3802,"language":123,"meta":124,"style":124},"# Для SELinux (RHEL/CentOS/Fedora)\nsudo sestatus\nsudo ausearch -m avc -ts recent | grep sshd\n# Для AppArmor (Debian/Ubuntu)\nsudo aa-status | grep sshd\n",[36,3804,3805,3810,3817,3842,3847],{"__ignoreMap":124},[128,3806,3807],{"class":130,"line":131},[128,3808,3809],{"class":181},"# Для SELinux (RHEL/CentOS/Fedora)\n",[128,3811,3812,3814],{"class":130,"line":185},[128,3813,70],{"class":134},[128,3815,3816],{"class":137}," sestatus\n",[128,3818,3819,3821,3824,3827,3830,3833,3836,3838,3840],{"class":130,"line":239},[128,3820,70],{"class":134},[128,3822,3823],{"class":137}," ausearch",[128,3825,3826],{"class":174}," -m",[128,3828,3829],{"class":137}," avc",[128,3831,3832],{"class":174}," -ts",[128,3834,3835],{"class":137}," recent",[128,3837,402],{"class":401},[128,3839,405],{"class":134},[128,3841,2722],{"class":137},[128,3843,3844],{"class":130,"line":1017},[128,3845,3846],{"class":181},"# Для AppArmor (Debian/Ubuntu)\n",[128,3848,3849,3851,3854,3856,3858],{"class":130,"line":1023},[128,3850,70],{"class":134},[128,3852,3853],{"class":137}," aa-status",[128,3855,402],{"class":401},[128,3857,405],{"class":134},[128,3859,2722],{"class":137},[32,3861,3862,3871,3872,3875,3876,3879,3880,3883,3884,39],{},[25,3863,3864,3865,1707,3868,2654],{},"Проверка файла ",[36,3866,3867],{},"/etc/hosts.allow",[36,3869,3870],{},"/etc/hosts.deny"," Эти файлы могут блокировать доступ. Убедитесь, что в ",[36,3873,3874],{},"hosts.allow"," есть строка ",[36,3877,3878],{},"sshd: ALL"," или ваш IP, а в ",[36,3881,3882],{},"hosts.deny"," нет ",[36,3885,3878],{},[32,3887,3888,3891,3892,3894,3895,97,3898,97,3901,39],{},[25,3889,3890],{},"Проверка ресурсов сервера:"," Если сервер перегружен (нет памяти, места на диске), ",[36,3893,2701],{}," может не принимать новые соединения. Проверьте: ",[36,3896,3897],{},"free -h",[36,3899,3900],{},"df -h",[36,3902,3903],{},"top",[32,3905,3906,3909,3910,3913],{},[25,3907,3908],{},"Тест с другого клиента:"," Попробуйте подключиться с другой машины. Если работает — проблема в исходном клиенте (его ключи, конфиг ",[36,3911,3912],{},"~/.ssh/config",", фаервол).",[32,3915,3916,3921,3922,3925,3926,3928,3929],{},[25,3917,3918,3919,2654],{},"Временное увеличение уровня логирования в ",[36,3920,3663],{}," Раскомментируйте или добавьте ",[36,3923,3924],{},"LogLevel DEBUG"," и перезапустите ",[36,3927,2701],{},". ",[25,3930,3931,3932,3935],{},"Не забывайте вернуть ",[36,3933,3934],{},"INFO"," после диагностики!",[119,3937,3939],{"className":121,"code":3938,"language":123,"meta":124,"style":124},"sudo sed -i 's/^#LogLevel.*/LogLevel DEBUG/' /etc/ssh/sshd_config\nsudo systemctl restart sshd\n# ... выполняем попытку подключения ...\n# Возвращаем обратно:\nsudo sed -i 's/^LogLevel.*/LogLevel INFO/' /etc/ssh/sshd_config\nsudo systemctl restart sshd\n",[36,3940,3941,3956,3966,3971,3976,3989],{"__ignoreMap":124},[128,3942,3943,3945,3948,3950,3953],{"class":130,"line":131},[128,3944,70],{"class":134},[128,3946,3947],{"class":137}," sed",[128,3949,408],{"class":174},[128,3951,3952],{"class":137}," 's/^#LogLevel.*/LogLevel DEBUG/'",[128,3954,3955],{"class":137}," /etc/ssh/sshd_config\n",[128,3957,3958,3960,3962,3964],{"class":130,"line":185},[128,3959,70],{"class":134},[128,3961,1754],{"class":137},[128,3963,1807],{"class":137},[128,3965,2722],{"class":137},[128,3967,3968],{"class":130,"line":239},[128,3969,3970],{"class":181},"# ... выполняем попытку подключения ...\n",[128,3972,3973],{"class":130,"line":1017},[128,3974,3975],{"class":181},"# Возвращаем обратно:\n",[128,3977,3978,3980,3982,3984,3987],{"class":130,"line":1023},[128,3979,70],{"class":134},[128,3981,3947],{"class":137},[128,3983,408],{"class":174},[128,3985,3986],{"class":137}," 's/^LogLevel.*/LogLevel INFO/'",[128,3988,3955],{"class":137},[128,3990,3991,3993,3995,3997],{"class":130,"line":2608},[128,3992,70],{"class":134},[128,3994,1754],{"class":137},[128,3996,1807],{"class":137},[128,3998,2722],{"class":137},[14,4000,4002],{"id":4001},"заключение","Заключение",[19,4004,4005,4006,97,4008,97,4010,4013,4014,798,4016,4018,4019,4022,4023,1707,4026,4028],{},"Диагностика SSH-проблем — это последовательный процесс исключения: сеть -> служба -> конфиг -> права -> логи. Начните с простых проверок (",[36,4007,2582],{},[36,4009,2611],{},[36,4011,4012],{},"systemctl status sshd","), а затем углубляйтесь в конфигурацию и права. Логи (",[36,4015,1090],{},[36,4017,470],{},") почти всегда содержат конкретную причину отказа. Используйте клиентский режим отладки (",[36,4020,4021],{},"ssh -vvv","), чтобы увидеть процесс с другой стороны. После устранения проблемы не забудьте вернуть настройки безопасности (например, ",[36,4024,4025],{},"LogLevel",[36,4027,2934],{},") в исходное состояние.",[1295,4030,4031],{},"html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}",{"title":124,"searchDepth":185,"depth":185,"links":4033},[4034,4035,4036,4037,4038,4039,4040,4041,4042,4043,4044,4045],{"id":16,"depth":185,"text":17},{"id":54,"depth":185,"text":55},{"id":2563,"depth":185,"text":2564},{"id":2694,"depth":185,"text":2695},{"id":2826,"depth":185,"text":2827},{"id":3027,"depth":185,"text":3028},{"id":3216,"depth":185,"text":3217},{"id":3377,"depth":185,"text":3378},{"id":1072,"depth":185,"text":1073},{"id":1111,"depth":185,"text":1112},{"id":3749,"depth":185,"text":3750},{"id":4001,"depth":185,"text":4002},"2026-02-17 14:24:33","Не подключается по SSH к серверу? Пошаговая инструкция по диагностике и решению самых частых ошибок: от Permission denied до Connection refused. Проверенные методы за 15 минут.","15-20 мин",[4050,4053,4056,4059],{"question":4051,"answer":4052},"Что делать, если SSH требует пароль, хотя ключ настроен?","Убедитесь, что публичный ключ добавлен в `~/.ssh/authorized_keys` на сервере с правильными правами (600). Также проверьте, что в `/etc/ssh/sshd_config` параметр `PubkeyAuthentication` установлен в `yes`.",{"question":4054,"answer":4055},"Проверяю порт 22 командой `nmap`, но он закрыт. Почему?","Скорее всего, служба `sshd` не запущена или в конфиге `sshd_config` указан другой порт. Проверьте статус службы: `systemctl status sshd` и настройки в `/etc/ssh/sshd_config` (директива `Port`).",{"question":4057,"answer":4058},"Можно ли временно отключить проверку ключей для диагностики?","Да, добавьте опцию `-o PubkeyAuthentication=no` при подключении: `ssh -o PubkeyAuthentication=no user@host`. Это поможет отделить проблему с ключами от других.",{"question":4060,"answer":4061},"Почему после смены порта в sshd_config подключение не работает?","После изменения порта в конфиге необходимо перезапустить службу (`sudo systemctl restart sshd`) и при подключении явно указать порт: `ssh -p 2222 user@host`.",[4063,4066,4069,4072,4075,4078],{"name":4064,"text":4065},"Проверка базовой сетевой доступности","Убедитесь, что хост доступен по сети и порт SSH открыт с помощью `ping` и `nc` (netcat) или `nmap`.",{"name":4067,"text":4068},"Диагностика службы SSH на сервере","Проверьте, запущена ли служба `sshd`, и её статус через `systemctl`. Узнайте, на каком порту она слушает.",{"name":4070,"text":4071},"Анализ конфигурации SSH-сервера","Проверьте основные параметры в `/etc/ssh/sshd_config` (доступ пользователей, порт, протоколы аутентификации).",{"name":4073,"text":4074},"Проверка прав на файлы и папки SSH","На сервере убедитесь в корректных правах на домашнюю директорию пользователя, папку `.ssh` и файл `authorized_keys`.",{"name":4076,"text":4077},"Анализ логов SSH","Изучите логи службы (`journalctl -u sshd` или `/var/log/auth.log`), чтобы увидеть точную причину отказа в аутентификации.",{"name":4079,"text":4080},"Тестирование подключения с отладкой","Используйте ключи `-v` (verbose) и `-vvv` для клиента SSH, чтобы увидеть этапы handshake и точку отказа.",[4082,4083,4084,4085,4086,4087,4088,4089,4090,4091],"ssh connection refused","ssh permission denied","не подключается по ssh linux","ошибка ssh подключения","как исправить ssh","ssh connection timed out","настройка ssh сервера","ssh ключи не работают","порт 22 закрыт","диагностика ssh",{},[4094,4095,1406,4096],"/guides/linux/ufw-firewall-setup","/guides/linux/sudoers-configuration","/guides/linux/ssh-keygen-usage",{"title":2515,"description":4047},"high","guides/linux/ssh-connection-issues","Этот гайд поможет системным администраторам и разработчикам диагностировать и исправить типичные ошибки SSH-подключения в Linux. Вы научитесь проверять сетевые настройки, работу службы SSH, конфигурационные файлы и права доступа, а также анализировать логи для быстрого восстановления доступа к удалённым серверам.",[4102,3396,4103,4104,4105,4106,4107],"гайды linux","сетевая безопасность","администрирование","troubleshooting","remote access","linux server","1jRHw6GDs2tEsNG5SVB5IxbF0d68rInO1VBBjfUPE7I",{"id":4110,"title":4111,"appliesTo":4112,"author":9,"body":4117,"canonical":1349,"code":2668,"createdAt":5389,"description":5390,"difficulty":1352,"draft":1353,"estimatedTime":2460,"extension":1355,"faq":5391,"howToSteps":5404,"howToTotalTime":5420,"image":1349,"keywords":5421,"locale":1399,"meta":5429,"navigation":1013,"path":1406,"platform":1402,"related":5430,"section":5434,"seo":5435,"severity":4098,"stem":5436,"summary":5437,"tags":5438,"twitterCreator":1349,"twitterSite":1349,"type":2305,"updatedAt":5389,"__hash__":5441},"content_ru/errors/linux/ssh-connection-refused.md","SSH Connection Refused: причины и 5 способов исправить ошибку",[4113,2518,4114,4115,4116],"Ubuntu 20.04/22.04","CentOS 7/8/Rocky 8/9","RHEL 8/9","Any Linux with OpenSSH server",{"type":11,"value":4118,"toc":5366},[4119,4123,4141,4144,4170,4174,4177,4269,4273,4276,4360,4364,4369,4525,4529,4532,4539,4554,4611,4617,4632,4689,4699,4705,4733,4817,4823,4829,4938,4942,4946,4952,4977,4980,5010,5021,5025,5042,5056,5081,5085,5088,5103,5107,5160,5162,5166,5169,5338,5363],[14,4120,4122],{"id":4121},"что-означает-ошибка-ssh-connection-refused","Что означает ошибка \"SSH Connection refused\"",[19,4124,2317,4125,4128,4129,4132,4133,4136,4137,4140],{},[36,4126,4127],{},"ssh: connect to host \u003CIP> port 22: Connection refused"," — это сообщение от клиента SSH, которое означает, что сервер ",[25,4130,4131],{},"активно отклонил"," попытку TCP-соединения на порту 22 (или другом указанном порту). В отличие от ",[36,4134,4135],{},"Connection timed out"," (где пакеты просто теряются), ",[36,4138,4139],{},"refused"," — это прямой ответ от ядра операционной системы сервера: \"служба на этом порту не доступна\".",[19,4142,4143],{},"Симптомы:",[29,4145,4146,4155,4164],{},[32,4147,574,4148,4151,4152,4154],{},[36,4149,4150],{},"ssh user@server_ip"," завершается с ошибкой ",[36,4153,2668],{}," практически мгновенно.",[32,4156,4157,4158,4161,4162,39],{},"Утилита ",[36,4159,4160],{},"telnet server_ip 22"," также показывает ",[36,4163,2668],{},[32,4165,4166,4167,4169],{},"Пинг (",[36,4168,2582],{},") до сервера, как правило, проходит успешно, так как проблема на транспортном (TCP) уровне, а не сетевом (ICMP).",[14,4171,4173],{"id":4172},"причины-возникновения","Причины возникновения",[19,4175,4176],{},"Ошибка возникает на стороне сервера. Основные причины:",[60,4178,4179,4188,4201,4211,4223,4247,4256],{},[32,4180,4181,4187],{},[25,4182,4183,4184,4186],{},"Служба SSH (",[36,4185,2701],{},") не запущена."," Это самая частая причина. Демон просто не слушает никакие порты.",[32,4189,4190,4196,4197,4200],{},[25,4191,4192,4193,77],{},"SSH-демон слушает только локальный интерфейс (",[36,4194,4195],{},"127.0.0.1"," В конфигурации может быть указан ",[36,4198,4199],{},"ListenAddress 127.0.0.1",", что разрешает подключения только с самого сервера.",[32,4202,4203,4206,4207,4210],{},[25,4204,4205],{},"Фаервол (брандмауэр) блокирует порт."," Правило фаервола может быть настроено на ",[36,4208,4209],{},"REJECT"," (активный отказ) для порта 22 с вашего IP или для всех.",[32,4212,4213,4216,4217,4219,4220,4222],{},[25,4214,4215],{},"Другой процесс уже использует порт 22."," Реже, но возможно, что другой сервис (например, старый ",[36,4218,2701],{}," или другой демон) занял порт 22, и новый ",[36,4221,2701],{}," не может его занять.",[32,4224,4225,4230,4231,97,4233,97,4235,97,4237,798,4239,4242,4243,4246],{},[25,4226,4227,4228,39],{},"Конфигурационные ограничения в ",[36,4229,3663],{}," Директивы ",[36,4232,2983],{},[36,4234,2997],{},[36,4236,2987],{},[36,4238,3000],{},[36,4240,4241],{},"Match","-блоки могут запрещать подключение для вашего пользователя или IP-адреса, что может приводить к отказу ",[1762,4244,4245],{},"после"," установки соединения, но иногда и на этапе handshake.",[32,4248,4249,4252,4253,4255],{},[25,4250,4251],{},"Проблемы с SELinux/AppArmor."," Системы mandatory access control могут запрещать ",[36,4254,2701],{}," слушать сетевой порт или принимать соединения.",[32,4257,4258,4261,4262,4265,4266,39],{},[25,4259,4260],{},"Сервер за NAT/ балансировщиком, а проброс портов не настроен."," Клиент пытается подключиться к публичному IP, но пакеты не доходят до внутреннего сервера, а маршрутизатор сам отвечает ",[36,4263,4264],{},"RST"," (reset) или ",[36,4267,4268],{},"ICMP port unreachable",[14,4270,4272],{"id":4271},"способ-1-проверка-и-запуск-службы-ssh","Способ 1: Проверка и запуск службы SSH",[19,4274,4275],{},"Первым делом убедитесь, что служба работает.",[60,4277,4278,4314,4334,4354],{},[32,4279,4280,4283,4298],{},[25,4281,4282],{},"Проверьте статус службы:",[119,4284,4286],{"className":121,"code":4285,"language":123,"meta":124,"style":124},"sudo systemctl status sshd\n",[36,4287,4288],{"__ignoreMap":124},[128,4289,4290,4292,4294,4296],{"class":130,"line":131},[128,4291,70],{"class":134},[128,4293,1754],{"class":137},[128,4295,1967],{"class":137},[128,4297,2722],{"class":137},[29,4299,4300,4306],{},[32,4301,4302,4303,4305],{},"Если статус ",[36,4304,2280],{}," — служба работает, переходите к следующему способу.",[32,4307,4302,4308,798,4311,4313],{},[36,4309,4310],{},"inactive (dead)",[36,4312,2259],{}," — служба не запущена.",[32,4315,4316,4319],{},[25,4317,4318],{},"Запустите службу:",[119,4320,4322],{"className":121,"code":4321,"language":123,"meta":124,"style":124},"sudo systemctl start sshd\n",[36,4323,4324],{"__ignoreMap":124},[128,4325,4326,4328,4330,4332],{"class":130,"line":131},[128,4327,70],{"class":134},[128,4329,1754],{"class":137},[128,4331,1757],{"class":137},[128,4333,2722],{"class":137},[32,4335,4336,4339],{},[25,4337,4338],{},"Включите автозагрузку (чтобы служба запускалась после перезагрузки):",[119,4340,4342],{"className":121,"code":4341,"language":123,"meta":124,"style":124},"sudo systemctl enable sshd\n",[36,4343,4344],{"__ignoreMap":124},[128,4345,4346,4348,4350,4352],{"class":130,"line":131},[128,4347,70],{"class":134},[128,4349,1754],{"class":137},[128,4351,1879],{"class":137},[128,4353,2722],{"class":137},[32,4355,4356,4359],{},[25,4357,4358],{},"Попробуйте подключиться снова."," Если ошибка осталась, проверьте, на каком порту служит служба (Способ 2).",[14,4361,4363],{"id":4362},"способ-2-проверка-на-каком-порту-и-интерфейсе-служит-ssh","Способ 2: Проверка, на каком порту и интерфейсе служит SSH",[19,4365,4366,4367,39],{},"Узнайте, какие порты и сетевые интерфейсы слушает ",[36,4368,2701],{},[60,4370,4371,4450],{},[32,4372,4373,4382,4420,4422,4423,4429],{},[25,4374,4375,4376,798,4379,2654],{},"Используйте ",[36,4377,4378],{},"ss",[36,4380,4381],{},"netstat",[119,4383,4385],{"className":121,"code":4384,"language":123,"meta":124,"style":124},"sudo ss -tlnp | grep sshd\n# или\nsudo netstat -tlnp | grep sshd\n",[36,4386,4387,4401,4406],{"__ignoreMap":124},[128,4388,4389,4391,4393,4395,4397,4399],{"class":130,"line":131},[128,4390,70],{"class":134},[128,4392,2738],{"class":137},[128,4394,2741],{"class":174},[128,4396,402],{"class":401},[128,4398,405],{"class":134},[128,4400,2722],{"class":137},[128,4402,4403],{"class":130,"line":185},[128,4404,4405],{"class":181},"# или\n",[128,4407,4408,4410,4412,4414,4416,4418],{"class":130,"line":239},[128,4409,70],{"class":134},[128,4411,2759],{"class":137},[128,4413,2741],{"class":174},[128,4415,402],{"class":401},[128,4417,405],{"class":134},[128,4419,2722],{"class":137},[1159,4421],{},"Пример вывода для корректной настройки:",[119,4424,4427],{"className":4425,"code":4426,"language":1044},[1042],"tcp   LISTEN  0  128  0.0.0.0:22  0.0.0.0:*  users:((\"sshd\",pid=1234,fd=3))\ntcp   LISTEN  0  128  [::]:22  [::]:*  users:((\"sshd\",pid=1234,fd=4))\n",[36,4428,4426],{"__ignoreMap":124},[29,4430,4431,4436,4442],{},[32,4432,4433,4435],{},[36,4434,2798],{}," — слушает на всех IPv4-интерфейсах.",[32,4437,4438,4441],{},[36,4439,4440],{},"[::]:22"," — слушает на всех IPv6-интерфейсах.",[32,4443,4444,4446,4447],{},[36,4445,2805],{}," — слушает только локальный интерфейс (loopback). ",[25,4448,4449],{},"В этом случае внешние подключения невозможны.",[32,4451,4452,4458,4463,4477,4498,4512],{},[25,4453,4454,4455,4457],{},"Если слушает только ",[36,4456,4195],{},", исправьте конфигурацию:",[29,4459,4460],{},[32,4461,4462],{},"Откройте файл конфигурации SSH-сервера:",[119,4464,4466],{"className":121,"code":4465,"language":123,"meta":124,"style":124},"sudo nano /etc/ssh/sshd_config\n",[36,4467,4468],{"__ignoreMap":124},[128,4469,4470,4472,4475],{"class":130,"line":131},[128,4471,70],{"class":134},[128,4473,4474],{"class":137}," nano",[128,4476,3955],{"class":137},[29,4478,4479,4495],{},[32,4480,4481,4482,2435,4485,4488,4489,4492,4493,39],{},"Найдите строку ",[36,4483,4484],{},"#ListenAddress 0.0.0.0",[36,4486,4487],{},"ListenAddress ::","). Раскомментируйте её (удалите ",[36,4490,4491],{},"#",") или добавьте, если её нет. Убедитесь, что нет строк ",[36,4494,4199],{},[32,4496,4497],{},"Сохраните файл и перезапустите службу:",[119,4499,4500],{"className":121,"code":3012,"language":123,"meta":124,"style":124},[36,4501,4502],{"__ignoreMap":124},[128,4503,4504,4506,4508,4510],{"class":130,"line":131},[128,4505,70],{"class":134},[128,4507,1754],{"class":137},[128,4509,1807],{"class":137},[128,4511,2722],{"class":137},[29,4513,4514],{},[32,4515,4516,4517,4519,4520,4522,4523,39],{},"Проверьте вывод ",[36,4518,4378],{}," снова — теперь должны быть ",[36,4521,2798],{}," и/или ",[36,4524,4440],{},[14,4526,4528],{"id":4527},"способ-3-проверка-и-настройка-фаервола","Способ 3: Проверка и настройка фаервола",[19,4530,4531],{},"Фаервол может блокировать входящие соединения на порт 22.",[114,4533,4535,4536,4538],{"id":4534},"для-ufw-ubuntudebian-по-умолчанию","Для ",[36,4537,3636],{}," (Ubuntu/Debian по умолчанию)",[119,4540,4542],{"className":121,"code":4541,"language":123,"meta":124,"style":124},"sudo ufw status verbose\n",[36,4543,4544],{"__ignoreMap":124},[128,4545,4546,4548,4550,4552],{"class":130,"line":131},[128,4547,70],{"class":134},[128,4549,3772],{"class":137},[128,4551,1967],{"class":137},[128,4553,2180],{"class":137},[29,4555,4556,4598,4605],{},[32,4557,4302,4558,4561,4562,2435,4565,4567,4568],{},[36,4559,4560],{},"Status: active",", проверьте, есть ли правило для ",[36,4563,4564],{},"22/tcp",[36,4566,3396],{},"). Если нет, добавьте:\n",[119,4569,4571],{"className":121,"code":4570,"language":123,"meta":124,"style":124},"sudo ufw allow ssh\n# или явно по порту\nsudo ufw allow 22/tcp\n",[36,4572,4573,4583,4588],{"__ignoreMap":124},[128,4574,4575,4577,4579,4581],{"class":130,"line":131},[128,4576,70],{"class":134},[128,4578,3772],{"class":137},[128,4580,3791],{"class":137},[128,4582,2050],{"class":137},[128,4584,4585],{"class":130,"line":185},[128,4586,4587],{"class":181},"# или явно по порту\n",[128,4589,4590,4592,4594,4596],{"class":130,"line":239},[128,4591,70],{"class":134},[128,4593,3772],{"class":137},[128,4595,3791],{"class":137},[128,4597,3794],{"class":137},[32,4599,4600,4601,4604],{},"Если правило есть, но с ограничением по IP (",[36,4602,4603],{},"22/tcp ALLOW IN 192.168.1.100","), убедитесь, что ваш IP входит в список.",[32,4606,4607,4608,39],{},"Перезагрузите фаервол: ",[36,4609,4610],{},"sudo ufw reload",[114,4612,4535,4614,4616],{"id":4613},"для-firewalld-rhelcentosrockyfedora",[36,4615,3639],{}," (RHEL/CentOS/Rocky/Fedora)",[119,4618,4620],{"className":121,"code":4619,"language":123,"meta":124,"style":124},"sudo firewall-cmd --list-all\n",[36,4621,4622],{"__ignoreMap":124},[128,4623,4624,4626,4629],{"class":130,"line":131},[128,4625,70],{"class":134},[128,4627,4628],{"class":137}," firewall-cmd",[128,4630,4631],{"class":174}," --list-all\n",[29,4633,4634,4648,4683],{},[32,4635,4636,4637,798,4640,4643,4644,798,4646,39],{},"В разделе ",[36,4638,4639],{},"services:",[36,4641,4642],{},"ports:"," должно быть ",[36,4645,3396],{},[36,4647,4564],{},[32,4649,4650,4651],{},"Если нет, добавьте правило на постоянной основе:\n",[119,4652,4654],{"className":121,"code":4653,"language":123,"meta":124,"style":124},"sudo firewall-cmd --permanent --add-service=ssh\n# или\nsudo firewall-cmd --permanent --add-port=22/tcp\n",[36,4655,4656,4668,4672],{"__ignoreMap":124},[128,4657,4658,4660,4662,4665],{"class":130,"line":131},[128,4659,70],{"class":134},[128,4661,4628],{"class":137},[128,4663,4664],{"class":174}," --permanent",[128,4666,4667],{"class":174}," --add-service=ssh\n",[128,4669,4670],{"class":130,"line":185},[128,4671,4405],{"class":181},[128,4673,4674,4676,4678,4680],{"class":130,"line":239},[128,4675,70],{"class":134},[128,4677,4628],{"class":137},[128,4679,4664],{"class":174},[128,4681,4682],{"class":174}," --add-port=22/tcp\n",[32,4684,4685,4686,39],{},"Примените изменения: ",[36,4687,4688],{},"sudo firewall-cmd --reload",[114,4690,4535,4692,148,4695,4698],{"id":4691},"для-iptablesnftables-базовый-стек",[36,4693,4694],{},"iptables",[36,4696,4697],{},"nftables"," (базовый стек)",[19,4700,4701,4702,2654],{},"Просмотрите цепочку ",[36,4703,4704],{},"INPUT",[119,4706,4708],{"className":121,"code":4707,"language":123,"meta":124,"style":124},"sudo iptables -L INPUT -n -v | grep 22\n",[36,4709,4710],{"__ignoreMap":124},[128,4711,4712,4714,4717,4720,4723,4725,4727,4729,4731],{"class":130,"line":131},[128,4713,70],{"class":134},[128,4715,4716],{"class":137}," iptables",[128,4718,4719],{"class":174}," -L",[128,4721,4722],{"class":137}," INPUT",[128,4724,175],{"class":174},[128,4726,2863],{"class":174},[128,4728,402],{"class":401},[128,4730,405],{"class":134},[128,4732,2620],{"class":174},[29,4734,4735,4752,4790],{},[32,4736,4737,4738,798,4740,4743,4744,4747,4748,4751],{},"Ищите правило с ",[36,4739,4209],{},[36,4741,4742],{},"DROP"," для порта 22. Если такое правило есть ",[25,4745,4746],{},"выше"," правила ",[36,4749,4750],{},"ACCEPT",", оно блокирует трафик.",[32,4753,4754,4755],{},"Чтобы добавить правило разрешения в начало цепочки:\n",[119,4756,4758],{"className":121,"code":4757,"language":123,"meta":124,"style":124},"sudo iptables -I INPUT 1 -p tcp --dport 22 -j ACCEPT\n",[36,4759,4760],{"__ignoreMap":124},[128,4761,4762,4764,4766,4769,4771,4774,4776,4779,4782,4784,4787],{"class":130,"line":131},[128,4763,70],{"class":134},[128,4765,4716],{"class":137},[128,4767,4768],{"class":174}," -I",[128,4770,4722],{"class":137},[128,4772,4773],{"class":174}," 1",[128,4775,328],{"class":174},[128,4777,4778],{"class":137}," tcp",[128,4780,4781],{"class":174}," --dport",[128,4783,2642],{"class":174},[128,4785,4786],{"class":174}," -j",[128,4788,4789],{"class":137}," ACCEPT\n",[32,4791,4792,4795,4796],{},[25,4793,4794],{},"Сохраните правила"," (иначе они сбросятся после перезагрузки):\n",[29,4797,4798,4805],{},[32,4799,4535,4800,735,4802],{},[36,4801,4694],{},[36,4803,4804],{},"sudo iptables-save | sudo tee /etc/iptables/rules.v4",[32,4806,4535,4807,4809,4810,4813,4814,39],{},[36,4808,4697],{},": убедитесь, что конфиг в ",[36,4811,4812],{},"/etc/nftables.conf"," корректен и выполните ",[36,4815,4816],{},"sudo nft -f /etc/nftables.conf",[14,4818,4820,4821,1038],{"id":4819},"способ-4-проверка-конфигурации-ssh-сервера-sshd_config","Способ 4: Проверка конфигурации SSH-сервера (",[36,4822,3663],{},[19,4824,4825,4826,4828],{},"Неправильные настройки в ",[36,4827,2833],{}," могут блокировать доступ.",[60,4830,4831,4848,4908],{},[32,4832,4833,4836],{},[25,4834,4835],{},"Откройте файл конфигурации:",[119,4837,4838],{"className":121,"code":4465,"language":123,"meta":124,"style":124},[36,4839,4840],{"__ignoreMap":124},[128,4841,4842,4844,4846],{"class":130,"line":131},[128,4843,70],{"class":134},[128,4845,4474],{"class":137},[128,4847,3955],{"class":137},[32,4849,4850,4853],{},[25,4851,4852],{},"Проверьте ключевые директивы:",[29,4854,4855,4863,4877,4887,4894,4901],{},[32,4856,4857,4860,4861,77],{},[36,4858,4859],{},"Port 22"," — убедитесь, что порт указан корректно (если используете нестандартный, проверьте фаервол и подключение по ",[36,4862,1265],{},[32,4864,4865,4867,4868,4870,4871,4874,4875,39],{},[36,4866,2812],{}," — если эта директива присутствует, она должна быть ",[36,4869,2926],{}," (для IPv4) или ",[36,4872,4873],{},"::"," (для IPv6), а не ",[36,4876,4195],{},[32,4878,4879,4881,4882,798,4884,4886],{},[36,4880,2934],{}," — если вы пытаетесь подключиться под root, убедитесь, что значение ",[36,4883,2947],{},[36,4885,2939],{}," (если используете ключ).",[32,4888,4889,4891,4892,39],{},[36,4890,2954],{}," — если используете пароль, проверьте, что ",[36,4893,2947],{},[32,4895,4896,2984,4898,4900],{},[36,4897,2983],{},[36,4899,2987],{}," — если эти директивы есть, убедитесь, что ваш пользователь (или группа) перечислен в них.",[32,4902,4903,2984,4905,4907],{},[36,4904,2997],{},[36,4906,3000],{}," — убедитесь, что ваш пользователь не указан здесь.",[32,4909,4910,4913,4927],{},[25,4911,4912],{},"После внесения изменений перезапустите службу:",[119,4914,4915],{"className":121,"code":3012,"language":123,"meta":124,"style":124},[36,4916,4917],{"__ignoreMap":124},[128,4918,4919,4921,4923,4925],{"class":130,"line":131},[128,4920,70],{"class":134},[128,4922,1754],{"class":137},[128,4924,1807],{"class":137},[128,4926,2722],{"class":137},[29,4928,4929],{},[32,4930,4931,4933,4934,4937],{},[25,4932,2687],{}," Не закрывайте текущую активную SSH-сессию (если она есть) до проверки новой конфигурации! Используйте ",[36,4935,4936],{},"sudo sshd -t"," для проверки синтаксиса файла перед перезапуском.",[14,4939,4941],{"id":4940},"способ-5-проверка-сетевых-правил-selinuxapparmor-и-балансировщиков","Способ 5: Проверка сетевых правил, SELinux/AppArmor и балансировщиков",[114,4943,4945],{"id":4944},"проверка-selinux-rhelcentosrocky","Проверка SELinux (RHEL/CentOS/Rocky)",[19,4947,4948,4949,4951],{},"SELinux может запрещать ",[36,4950,2701],{}," слушать порт.",[119,4953,4955],{"className":121,"code":4954,"language":123,"meta":124,"style":124},"sudo ausearch -m avc -ts recent | grep sshd\n",[36,4956,4957],{"__ignoreMap":124},[128,4958,4959,4961,4963,4965,4967,4969,4971,4973,4975],{"class":130,"line":131},[128,4960,70],{"class":134},[128,4962,3823],{"class":137},[128,4964,3826],{"class":174},[128,4966,3829],{"class":137},[128,4968,3832],{"class":174},[128,4970,3835],{"class":137},[128,4972,402],{"class":401},[128,4974,405],{"class":134},[128,4976,2722],{"class":137},[19,4978,4979],{},"Если есть записи об отказе, попробуйте восстановить контекст по умолчанию для порта 22:",[119,4981,4983],{"className":121,"code":4982,"language":123,"meta":124,"style":124},"sudo semanage port -a -t ssh_port_t -p tcp 22\n",[36,4984,4985],{"__ignoreMap":124},[128,4986,4987,4989,4992,4995,4998,5001,5004,5006,5008],{"class":130,"line":131},[128,4988,70],{"class":134},[128,4990,4991],{"class":137}," semanage",[128,4993,4994],{"class":137}," port",[128,4996,4997],{"class":174}," -a",[128,4999,5000],{"class":174}," -t",[128,5002,5003],{"class":137}," ssh_port_t",[128,5005,328],{"class":174},[128,5007,4778],{"class":137},[128,5009,2620],{"class":174},[19,5011,5012,5013,5016,5017,5020],{},"(Установите ",[36,5014,5015],{},"policycoreutils-python-utils",", если ",[36,5018,5019],{},"semanage"," нет).",[114,5022,5024],{"id":5023},"проверка-apparmor-ubuntudebian","Проверка AppArmor (Ubuntu/Debian)",[119,5026,5028],{"className":121,"code":5027,"language":123,"meta":124,"style":124},"sudo aa-status | grep sshd\n",[36,5029,5030],{"__ignoreMap":124},[128,5031,5032,5034,5036,5038,5040],{"class":130,"line":131},[128,5033,70],{"class":134},[128,5035,3853],{"class":137},[128,5037,402],{"class":401},[128,5039,405],{"class":134},[128,5041,2722],{"class":137},[19,5043,5044,5045,5047,5048,5051,5052,5055],{},"Если профиль ",[36,5046,2701],{}," находится в режиме ",[36,5049,5050],{},"enforce",", попробуйте перевести его в ",[36,5053,5054],{},"complain"," (для диагностики) или убедитесь, что профиль корректен:",[119,5057,5059],{"className":121,"code":5058,"language":123,"meta":124,"style":124},"sudo aa-complain /etc/apparmor.d/usr.sbin.sshd\nsudo systemctl restart sshd\n",[36,5060,5061,5071],{"__ignoreMap":124},[128,5062,5063,5065,5068],{"class":130,"line":131},[128,5064,70],{"class":134},[128,5066,5067],{"class":137}," aa-complain",[128,5069,5070],{"class":137}," /etc/apparmor.d/usr.sbin.sshd\n",[128,5072,5073,5075,5077,5079],{"class":130,"line":185},[128,5074,70],{"class":134},[128,5076,1754],{"class":137},[128,5078,1807],{"class":137},[128,5080,2722],{"class":137},[114,5082,5084],{"id":5083},"проверка-балансировщикароутера","Проверка балансировщика/роутера",[19,5086,5087],{},"Если сервер находится за NAT (например, в облаке или дата-центре):",[60,5089,5090,5097,5100],{},[32,5091,5092,5093,5096],{},"Убедитесь, что на роутере/в облачной панели (AWS Security Group, GCP Firewall, Yandex Cloud Security Group и т.д.) ",[25,5094,5095],{},"открыт порт 22 (или ваш кастомный порт)"," для вашего IP-адреса или диапазона.",[32,5098,5099],{},"Проверьте, что правило имеет приоритет выше правил \"отклонить всё\".",[32,5101,5102],{},"Если используете балансировщик нагрузки (ELB, HAProxy), убедитесь, что он настроен на проброс TCP-трафика на порт 22 к вашему бэкенду.",[14,5104,5106],{"id":5105},"профилактика","Профилактика",[60,5108,5109,5116,5126,5134,5143],{},[32,5110,5111,2655,5114,39],{},[25,5112,5113],{},"Всегда включайте автозагрузку критичных служб:",[36,5115,2790],{},[32,5117,5118,5121,5122,5125],{},[25,5119,5120],{},"Настраивайте фаервол сразу после развёртывания сервера"," и добавляйте правило для SSH ",[1762,5123,5124],{},"до"," того, как включите его в продакшен.",[32,5127,5128,5131,5132,77],{},[25,5129,5130],{},"Используйте нестандартный порт для SSH"," (например, 2222). Это не панацея от атак, но уменьшает количество автоматических сканирований. Не забудьте обновить фаервол и клиентскую команду (",[36,5133,2822],{},[32,5135,5136,5139,5140,5142],{},[25,5137,5138],{},"Регулярно проверяйте конфигурацию"," на наличие устаревших или конфликтующих директив (",[36,5141,3663],{},", правила iptables/nftables).",[32,5144,5145,2655,5148,5151,5152,5155,5156,5159],{},[25,5146,5147],{},"Мониторьте логи SSH:",[36,5149,5150],{},"sudo journalctl -u sshd -f"," в реальном времени или ",[36,5153,5154],{},"sudo cat /var/log/auth.log"," (Ubuntu/Debian) / ",[36,5157,5158],{},"sudo cat /var/log/secure"," (RHEL) для отслеживания попыток подключения и ошибок.",[1232,5161],{},[14,5163,5165],{"id":5164},"дополнительная-диагностика","Дополнительная диагностика",[19,5167,5168],{},"Если ни один из способов не помог, соберите информацию для дальнейшего анализа:",[60,5170,5171,5213,5256,5283],{},[32,5172,5173,5178,5205,5207,5208,798,5211,39],{},[25,5174,5175,5176,2654],{},"Логи ",[36,5177,2701],{},[119,5179,5181],{"className":121,"code":5180,"language":123,"meta":124,"style":124},"sudo journalctl -u sshd --since \"5 min ago\" | tail -50\n",[36,5182,5183],{"__ignoreMap":124},[128,5184,5185,5187,5189,5191,5193,5195,5198,5200,5202],{"class":130,"line":131},[128,5186,70],{"class":134},[128,5188,171],{"class":137},[128,5190,266],{"class":174},[128,5192,3281],{"class":137},[128,5194,213],{"class":174},[128,5196,5197],{"class":137}," \"5 min ago\"",[128,5199,402],{"class":401},[128,5201,497],{"class":134},[128,5203,5204],{"class":174}," -50\n",[1159,5206],{},"Ищите строки с ",[36,5209,5210],{},"Connection closed",[36,5212,4139],{},[32,5214,5215,5218,5242,5244,5245,5248,5249,5252,5253,5255],{},[25,5216,5217],{},"Сетевой трафик (если есть доступ к серверу через консоль/KVM):",[119,5219,5221],{"className":121,"code":5220,"language":123,"meta":124,"style":124},"sudo tcpdump -i any port 22 -nn\n",[36,5222,5223],{"__ignoreMap":124},[128,5224,5225,5227,5230,5232,5235,5237,5239],{"class":130,"line":131},[128,5226,70],{"class":134},[128,5228,5229],{"class":137}," tcpdump",[128,5231,408],{"class":174},[128,5233,5234],{"class":137}," any",[128,5236,4994],{"class":137},[128,5238,2642],{"class":174},[128,5240,5241],{"class":174}," -nn\n",[1159,5243],{},"Попробуйте подключиться с клиента. Если вы видите пакеты ",[36,5246,5247],{},"SYN"," от клиента, но нет пакетов ",[36,5250,5251],{},"SYN-ACK"," от сервера — проблема на стороне сервера (служба/фаервол). Если пакеты ",[36,5254,5247],{}," не приходят — проблема на сети или балансировщике.",[32,5257,5258,5261,5278,5280,5281,39],{},[25,5259,5260],{},"Проверка на наличие конфликтующего процесса:",[119,5262,5264],{"className":121,"code":5263,"language":123,"meta":124,"style":124},"sudo lsof -i :22\n",[36,5265,5266],{"__ignoreMap":124},[128,5267,5268,5270,5273,5275],{"class":130,"line":131},[128,5269,70],{"class":134},[128,5271,5272],{"class":137}," lsof",[128,5274,408],{"class":174},[128,5276,5277],{"class":137}," :22\n",[1159,5279],{},"Убедитесь, что процесс — это ",[36,5282,2701],{},[32,5284,5285,5288],{},[25,5286,5287],{},"Проверка целостности пакетов:",[119,5289,5291],{"className":121,"code":5290,"language":123,"meta":124,"style":124},"sudo apt update && sudo apt install --reinstall openssh-server  # Debian/Ubuntu\nsudo yum reinstall openssh-server                            # RHEL/CentOS\n",[36,5292,5293,5323],{"__ignoreMap":124},[128,5294,5295,5297,5300,5303,5307,5309,5311,5314,5317,5320],{"class":130,"line":131},[128,5296,70],{"class":134},[128,5298,5299],{"class":137}," apt",[128,5301,5302],{"class":137}," update",[128,5304,5306],{"class":5305},"sVt8B"," && ",[128,5308,70],{"class":134},[128,5310,5299],{"class":137},[128,5312,5313],{"class":137}," install",[128,5315,5316],{"class":174}," --reinstall",[128,5318,5319],{"class":137}," openssh-server",[128,5321,5322],{"class":181},"  # Debian/Ubuntu\n",[128,5324,5325,5327,5330,5333,5335],{"class":130,"line":185},[128,5326,70],{"class":134},[128,5328,5329],{"class":137}," yum",[128,5331,5332],{"class":137}," reinstall",[128,5334,5319],{"class":137},[128,5336,5337],{"class":181},"                            # RHEL/CentOS\n",[19,5339,5340,5343,5344,5346,5347,1844,5350,798,5353,148,5356,5358,5359,5362],{},[25,5341,5342],{},"Внимание:"," После каждого значимого изменения конфигурации (фаервол, ",[36,5345,3663],{},") ",[25,5348,5349],{},"перезапускайте соответствующую службу",[36,5351,5352],{},"sudo systemctl restart sshd",[36,5354,5355],{},"sudo systemctl restart firewalld",[36,5357,3636],{},") и ",[25,5360,5361],{},"тестируйте подключение с клиента",". Не закрывайте работающую консольную сессию до подтверждения работоспособности SSH.",[1295,5364,5365],{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}",{"title":124,"searchDepth":185,"depth":185,"links":5367},[5368,5369,5370,5371,5372,5380,5382,5387,5388],{"id":4121,"depth":185,"text":4122},{"id":4172,"depth":185,"text":4173},{"id":4271,"depth":185,"text":4272},{"id":4362,"depth":185,"text":4363},{"id":4527,"depth":185,"text":4528,"children":5373},[5374,5376,5378],{"id":4534,"depth":239,"text":5375},"Для ufw (Ubuntu/Debian по умолчанию)",{"id":4613,"depth":239,"text":5377},"Для firewalld (RHEL/CentOS/Rocky/Fedora)",{"id":4691,"depth":239,"text":5379},"Для iptables/nftables (базовый стек)",{"id":4819,"depth":185,"text":5381},"Способ 4: Проверка конфигурации SSH-сервера (sshd_config)",{"id":4940,"depth":185,"text":4941,"children":5383},[5384,5385,5386],{"id":4944,"depth":239,"text":4945},{"id":5023,"depth":239,"text":5024},{"id":5083,"depth":239,"text":5084},{"id":5105,"depth":185,"text":5106},{"id":5164,"depth":185,"text":5165},"2026-02-15 16:48:43","Не можете подключиться к серверу по SSH? Ошибка 'Connection refused' обычно означает, что служба SSH не слушает порт или блокируется фаерволом. Пошаговая инструкция по диагностике и решению за 15-30 минут.",[5392,5395,5398,5401],{"question":5393,"answer":5394},"Чем ошибка 'Connection refused' отличается от 'Connection timed out'?","`Connection refused` означает, что сервер **активно отклонил** соединение на указанном порту (обычно 22). Это часто значит, что служба SSH не запущена или порт закрыт фаерволом. `Connection timed out` означает, что запрос **не получил ответа** (возможно, сервер выключен, маршрутизация неверна или фаервол молча dropping пакеты).",{"question":5396,"answer":5397},"Проверил, порт 22 открыт (netstat показывает LISTEN), но всё равно 'Connection refused'. Почему?","Возможные причины: 1) SSH-демон слушает только локальный интерфейс (`127.0.0.1`), а не внешний (`0.0.0.0`). 2) На уровне фаервола (iptables/nftables) есть правило REJECT для этого порта. 3) Конфигурация SSH (`/etc/ssh/sshd_config`) ограничивает подключение по конкретным IP или интерфейсам (`ListenAddress`).",{"question":5399,"answer":5400},"Можно ли использовать SSH, если порт 22 закрыт, но служба работает?","Да. Если служба `sshd` запущена и слушает другой порт (например, 2222), вы можете подключиться, указав его: `ssh -p 2222 user@host`. Но убедитесь, что этот порт также открыт в фаерволе и проброшен (если используется NAT).",{"question":5402,"answer":5403},"Почему после перезагрузки сервера SSH перестал работать с 'Connection refused'?","Чаще всего служба `sshd` не настроена на автозапуск. Проверьте: `systemctl is-enabled sshd` (должно быть `enabled`). Если `disabled`, включите автозагрузку: `sudo systemctl enable sshd`.",[5405,5408,5411,5414,5417],{"name":5406,"text":5407},"Проверьте статус службы SSH","Убедитесь, что демон SSH (`sshd`) запущен и активен. Используйте `systemctl` для проверки.",{"name":5409,"text":5410},"Проверьте, на каком порту и интерфейсе служит SSH","Узнайте, какие порты и адреса слушает служба, чтобы убедиться, что она готова к внешним подключениям.",{"name":5412,"text":5413},"Проверьте настройки фаервола (iptables/nftables/firewalld/ufw)","Убедитесь, что правило разрешает входящие подключения на порт SSH (по умолчанию 22) с вашего IP-адреса.",{"name":5415,"text":5416},"Проверьте конфигурацию SSH-сервера","Убедитесь, что в `/etc/ssh/sshd_config` нет ограничений (`ListenAddress`, `AllowUsers`), блокирующих ваше подключение.",{"name":5418,"text":5419},"Проверьте сетевые правила и балансировщики","Если сервер за NAT или балансировщиком нагрузки, убедитесь, что порт 22 проброшен (port forwarded) на внутренний IP сервера.","PT30M",[4082,5422,5423,5424,5425,5426,5427,5428],"ошибка ssh отказ в подключении","ssh port 22 refused","как исправить ssh connection refused","ssh не подключается отказ в соединении","ошибка подключения по ssh linux","ssh connection refused ubuntu","порт 22 закрыт ssh",{},[5431,5432,5433],"/errors/linux/ssh-permission-denied","/guides/linux/configure-ssh-server","/errors/linux/ssh-host-key-verification-failed","Ошибки Linux",{"title":4111,"description":5390},"errors/linux/ssh-connection-refused","Статья объясняет, что означает ошибка 'SSH Connection refused', перечисляет основные причины (незапущенная служба, закрытый порт, неверные настройки) и предоставляет 5 проверенных способов решения проблемы на Linux-сервере.",[3396,1402,5439,5440,83,314],"сеть","firewall","47JNE9twsh11tFyVppHPQWE39gMIy0gHshzMnXbg5aI"]