LINUX.ORG.RU

44
Всего сообщений: 1293

висящие ssh сессии при не корректном завершении

Всем привет! Очень досаждает проблема висящих ssh сессий на псевдотерминалах при не верном завершении сессий (например, интернет пропал).

Когда создаю, новую сессию, то вижу залогиненых пользователей

─[observer@polet] - [~] - [1851]
└─[$] w                                                              [12:09:31]
 12:09:32 up 23:08,  3 users,  load average: 0,00, 0,00, 0,00
USER     TTY        LOGIN@   IDLE   JCPU   PCPU WHAT
observer pts/0     12:09    1.00s  0.15s  0.00s w
observer pts/1     Пт19   13:20m  1.18s  0.78s tmux
observer pts/2     Пт19   16:57m  0.80s  0.39s vim /var/tmp/sshd_config.XXGGPU

Все нагугленные мной решения сводятся к параметрам в sshd_config

ClientAliveInterval 20
ClientAliveCountMax 3

который я установил в 20 и 3. Я понял, что раз в 20 секунд проверяется состояние и если 3 раза зафелилась, то штатно завершиться должна. Однако, зомби сессии так и продолжают висеть.

Прошу коллективный разум о помощи. Как заставить ssh завершать зомби сессии?

 ,

SpaceRanger ()

Доступ к сервису за провайдерским NAT

Имеется контроллер с запущенным web-сервером для мониторинга и управления. У контроллера имеется Ethernet интерфейс и статический IP. Необходимо обеспечить доступ в web-серверу из интернета.

Контроллер подключается к интернету через роутер TP-Link MR3020 с OpenWRT + 4G модем Huawei. Других возможностей для выхода в интернет нет.

Сейчас реализована следующая схема:

  1. Имеется VPS с публичным IPv4 и запущенным SSH-сервером;
  2. Создан пользователь tunnel без доступа к шеллу и авторизацией по ключам, «GatewayPorts yes» в sshd_config;
  3. При подаче питания, роутер (MR3020) подключается в сети используя 4G-модем;
  4. После установления соединения, роутер поднимает SSH-туннель для маршрутизации трафика между VPS и контроллером;
  5. На VPS запущен nginx в режиме reverse proxy для обеспечения доступа через HTTPS и авторизации.

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

Также, я думал организовать это при помощи Wireguard, но хочется сохранить простоту настройки и конфигов.

Помимо этого, хотелось бы каким-либо образом иметь возможность опозновать подключенные устройства (по MAC?), чтобы небыло необходимости вручную прописывать конфиги в nginx.

Может кто-то уже сталкивался с подобной проблемой и имеет элегантное решение?

 , ,

iizek ()

При логине на удалённую машину автоматически применять конфиги с локальной машины

Знаю про вот такую программу для этих целей: https://github.com/fsquillace/kyrat

Есть ли более проработанный аналог?

 ,

wandrien ()

обновление libssh

Добрый вечер. Есть проблемка, может кто знает как решить. Стоит деб 8, и проблема в том что не может подключаться по ssh к деб 11, я так полагаю проблема в libssh2_1.4.3. На более свежей версии конект есть. Как обновить эту библиотеку и ничего не запороть?)

 

User01 ()

Замена операционки через SSH

Есть raspberry pi 4 4Gb RAM, подключён к сети, настроена Ubuntu 20.04 ARM порт под малинку. Какие шаги нужно сделать, чтобы заменить Ubuntu на alpine linux исключительно по удалёнке over SSH?

 , , , ,

menangen ()

Доступ доменному пользователю закрыт по ssh и не только

Nov  2 13:21:43 n-03 sshd[123991]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=192.168.121.11  user=iadmin@mydomain.local
Nov  2 13:21:43 n-03 sshd[123991]: pam_sss(sshd:auth): authentication success; logname= uid=0 euid=0 tty=ssh ruser= rhost=192.168.121.11 user=iadmin@mydomain.local
Nov  2 13:21:45 n-03 sshd[123991]: pam_sss(sshd:account): Access denied for user iadmin@mydomain.local: 4 (System error)
Nov  2 13:21:45 n-03 sshd[123991]: Failed password for iadmin@mydomain.local from 10.16.23.11 port 49946 ssh2
Nov  2 13:21:45 n-03 sshd[123991]: fatal: Access denied for user iadmin@mydomain.local by PAM account configuration [preauth]

Вот что нарыл в логе auth.log.

Ради интереса поднял эту же ось. Вбил 4 команды и я зашёл под доменной учёткой. sssd.conf одинаковые. Накуривал манов и потерял путь. Куда копнуть товарищи?

 , ,

Tsunani ()

SSH_MSG_KEX_GEX_GROUP

Здравствуйте.

Что имеется.

  1. SFTP клиент
    1. OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013
    2. /etc/ssh/sshd_config
Protocol 2
UsePAM yes
PubkeyAuthentication yes
PasswordAuthentication yes
  1. SFTP сервер
    SSH-2.0-OpenSSH_7.2p2 Ubuntu-4ubuntu2.10

Что происходит. При подключении клиента к SFTP серверу возникает ошибка: Key exchange failed: Expected SSH_MSG_KEX_GEX_GROUP [id=3]

Подскажите пож-та в чем именно заключается проблема, какую информацию следует проверить, и как устранить эту ошибку?

 , , ,

damir77 ()

ssh Permission denied (publickey) почиму

У меня истерика от пингвинов начинается.

Генерировал ключи когдато на убунту сервер 20.
потом перенес в винду и конвертировал в ppk.

щас поставил убунту десктоп 20. и попробовал через эти ключи подключится ppk и без. не подключается!?

как из ис пасибле?

Load key "ubuntu.ppk": invalid format
oem@192.168.3.31: Permission denied (publickey).
oem@nblinux:~/.ssh$ ssh -i ubuntuoem oem@192.168.3.31
Load key "ubuntu": invalid format
oem@192.168.3.31: Permission denied (publickey).

права на ключах 600. ключи приватные, публичных нету в папке моего компа
на сервере вход только по ключю, парол отключен.

попробовал filezilla на убунте по ppk подулючается

 

Regacar ()

Ошибка домашней папки пользователя

Всем доброго дня! Проблема следующая - на сервере есть sh среда. Под sh root пользователь работает без замечаний. Потребовалось поставить пакет с bash (требует клиентское ПО). После с клиентской ПК выполняю:

ssh root@192.168.1.1 bash

Коннектиться, ввожу пароль и что вижу :

shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory

Выполняю pwd :

error retrieving current directory: getcwd: cannot access parent directories: Illegal seek.

Далее я решил сменить оболочку для root с sh на bash, проблема сохранилась.

cat /etc/passwd | grep root

выдает:

root:x:0:0:root:/home/root:/bin/bash

echo $HOME выдает

/home/root

при этом выполняю cd /home/root - выполняет и перестает уже ругаться. В чем дело ? почему при инициализации в bash не знает о своей домашней директории?

P.S обнаружил аналогичное поведение при подключении :

ssh root@192.168.1.1 sh

 , ,

noweapon ()

freebsd ssh имя машины

Система freebsd 12.2 При подключении к ней по ssh user@10.10.10.10 выдается запрос «Password for user@comp:» то есть высвечивается днс имя машины.
Сменил в hosts и rc.conf hostname, оставил пустой resolv.conf. Ребутнул подключаюсь «Password for user@comp2:». В sshd_config установил опцию usedns=no. Опять «Password for user@comp2:».
Как система автоматом определяет hostname?
Как вернуть запрос по ip без днс?

Еще одна интересная особенность, если в sshd_config установить опцию «PasswordAuthentication yes», то запрос выходит при ошибочном вводе не 3 а 6 попыток (3 по днс и 3 по ip)

Password for user@comp2: 
Password for user@comp2: 
Password for user@comp2:
user@10.10.10.10's password: 
Permission denied, please try again.
user@10.10.10.10's password: 
Permission denied, please try again.
user@10.10.10.10's password: 
Received disconnect from 10.10.10.10 port 22:2: Too many authentication failures
Authentication failed.
изменяем «PasswordAuthentication no»
остается
Password for user@comp2:
Password for user@comp2:
Password for user@comp2:
Permission denied (publickey,keyboard-interactive).

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

 ,

kozanostra ()

Подключение удаленному серверу через Putty

Добрый день! На работе стоит http прокси сервер 10.14.254.42:3128. Т.е. во всех компьютерах с доступом в интернет в свойствах обозревателя стоит этот прокси. Все филиалы выходят в инет через центральный офис. Мне с работы нужно через SSH выйти на свои удаленные сервера. Сервера к компании не относятся и находяться вне сети компании. С дома выхожу через через Putty либо MobaXterm. Но с работы никак не работают. Как можно настроить Putty либо MobaXterm для работы через прокси сервер?

Захожу с Windows на Linux

 ,

tarabukinivan ()

Подключится по SSH к веб-интерфейсу Syncthing удаленной машины

Привет. Нужно подключится к веб-интерфейсу Syncthing удаленной машины, так, чтобы в его настройках не открывать доступ в локальную сеть. В одной старой теме, мне посоветовали что-то типо этого:

через ssh можно пробрасывать порты. если веб интерфейс висит на сервере на http://localhost:8384/ то ты можешь сделать ssh -L 9999:localhost:8384 server и заходить в веб интерфейс с локального компа через http://localhost:9999/ а трафик будет гоняться до сервера по ssh

Но короче я до конца не понял. Может кто-то мне разъяснить на пальцах как это всё сделать? Сейчас я подключаюсь по SSH по ключу вот такой командой:

sudo ssh -p 54789 -i /media/lpuser/4546-8225/key cluser@192.168.0.100

 , ,

TheLinuxUser ()

Система централизованного управления серверами + хранение паролей

Коллеги, всем привет. Начал расти зоопарк серверов, встал вопрос о внедрении системы управления серверами. Пока нужны базовые возможности. Может сможете подсказать решение, в котором будет:

  1. Хранение паролей серверов.
  2. Доступ к серверам по ssh/rdp по паролям или ключам (не важно как).
  3. Авторизация в системе через ldap или radius
  4. Предоставление пользователям различных уровней доступа (видимость серверов).
  5. Желательно наличие GUI.
  6. Логирование действия пользователя

Спасибо

 , , ,

top__Secret ()

Как защитить данные при краже ноута?

Исходные данные такие:

  1. ваш лэптоп с некоей коммерческой/государственной тайной и личными файлами;
  2. из важных данных на лэптопе: ключи gpg и ssh, личные документы;
  3. все разделы зашифрованы (LUKS).

Сценарий атаки такой:

  1. злоумышленник узнает ваш логин/пароль от аккаунта Линукс, но не знает пароля для LUKS;
  2. злоумышленник крадёт ваш лэптоп;
  3. лэптоп в это время, разумеется, не выключен и находится в режиме сна;
  4. злоумышленник получает доступ к закрытым ключам ssh, т.к. пароль доступа к ним такой же, как к Линукс логину;
  5. т.к. все файлы после монтирования LUKS разделов открыты для пользователя, злоумышленник также получает доступ к вашим личным файлам.

Какие есть способы защиты от такой атаки кроме рекомендации использовать всюду разные пароли и выключать лэптоп на каждый чих? Желательно, чтобы работали из коробки на Ubuntu или Fedora, или с минимальным допилом (а не так, чтобы "а теперь откиньтесь на спинку кресла, и напишите драйвер вон для того USB токена).

 ,

seiken ()

windows графика через ssh в linux?

Добрый день!

gui ssh Linux - Linux работает отлично.

в варианте win10 - Linux не работает.

Вопрос: ssh под win10 не умеет gui?

В сети видел только через сторонние программы (puty и др.) Есть ли средства для работы?

Linux: ubuntu/debian/rasberry os

Спасибо!

 , ,

stslit ()

зачем 2 файла sshd_config ssh_config

почему он не один?

в
/etc/ssh#

зачем 2 файла?

sshd_config
ssh_config

чтоб новичков дизориентировать?

 

Regacar ()

Удалённая работа, mosh, ssh, etc...

COVID вскрыл массу трудностей с удалённой работой. Основная из которых – чудовищная латентность и потеря пакетов в сети, шейпинг VPN провайдерами, идиотская организация VPN у работодателя, когда траффик из Москвы в Москву, на расстояние 3-х километров идёт через Лондон…

Вариант работы через ssh – практически мало применим из-за заметной латентности (в редакторе просто сложно перемещать клавишами курсор и попадать им в нужное место), из-за разрывов и переподключений.

Через VNC практически работать вообще невозможно. Тоже латентность и нужна большая ширина канала. Через RDP – в варианте когда RDP может работать через UDP (что вызывает массу сложностей в преодолении фаерволов) более-менее шевелится, но тоже так себе. И последнее работает только в варианте винды-винды, не для линукса.

Нашёл для себя mosh. Он более-менее сглаживает проблемы с ssh, но добавляет своих. Во-первых не всегда через фаервол проходит (проблемы как с просто блокировкой UDP, так и с тем, что в отсутствии траффика NAT забывает про соответствие портов). И самое главное, в нём проблемы с отмоткой буфера терминала назад (наверх) – её попросту нет (потому, что mosh эмулирует, условно, 80x24, только видимую часть, а не 80x2000).

Но нужна-то в основном не работа в консоли, а работа с редактором исходных текстов. И если редактор запускать в ssh, mosh, etc, то латентность так или иначе даст о себе знать. Гораздо лучше, когда редактор может работать локально, только передавая изменения по сети. С такими редакторами в linux всё достаточно плохо:

  1. Emacs имеет такой режим, но проблема Emacs в том, что он Emacs, кроме того, непонятно насколько хорошо там работает навигация по тексту, скорей не очень.

  2. Vim имеет такой режим только для галочки. Можете редактировать по одному файлику, при этом проблема с навигацией по исходникам (можно пропатчить tags файл от ctags, но с GNU global такой номер уже не проходит, с поиском по многим файлам тоже проблема).

  3. говорят что-то умеет sublime, но я не видел из-за бедности, и догадываюсь, там далеко не всё так волшебно как описывают.

  4. на удивление более-менее почти пристойно работает Visual Studio Code. Соединяется через ssh, вытаскивает оттуда файлы, редактирует, поиск производит удалённо на той стороне и только передаёт результаты (Vim тоже можно научить в принципе). Проблема VSCode в трудном, неудобном, интерфейсе и плохой навигации по исходным текстам (перейти к определению идентификатора она умеет, а в обратную сторону, найти все использования – только поиском, что не всегда быстро, удобно и корректно).

  5. про Eclipse не знаю… может кто расскажет.

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

Микрософтовский подход с RDP и UDP не так уж плох, думается, но к сожалению для Linux нет никакой альтернативы вообще. Хотелось хотя бы mosh с возможностью отмотки буфера экрана… (–no-init знаю, но в половине случаев это не работает).

Кроме того, UDP плохо проходит не только через фаерволы интернет-провайдера, но даже через корпоративные сети. В то время как HTTPS всегда везде разрешен. В идеале хотелось бы видеть что-то вроде mosh, но со следующими свойствами:

  1. работа через множественные короткоживущие HTTPS-соединения, фонтанное кодирование (как способ помехоустойчивого кодирования в условиях регулярных разрывов);

  2. симуляция не 80x24, а терминала вместе с буфером (несколько тысяч строк) и передача обновлений на сторону клиента;

  3. предсказание реакции на ввод с помощью обучения и симуляция реакции нажатия на клавиши (до того, как пакеты добежали до удалённой стороны, обработались, и фактическая картинка пришла обратно). mosh это умеет делать только в ограниченном множестве случаев, заданных вручную. Очевидно, реакцию под все возможные программы предусмотреть трудно, но при этом вполне возможно фактическое обучение на примерах.

  4. поддержка не единственного, а множества терминалов в рамках одного соединения (обычно для работы нужно несколько окон). Разные варианты вроде GNU screen и его альтернатив, увы, неудобны в использовании. Окна всё же хочется, чтоб управлялись оконным менеджером, чтоб между ними можно было переключаться, двигать их и т.п., причём принципиально мышью.

Могут заметить, мол зачем тогда терминалы. Чем RDP хуже? На самом деле, практически ничем кроме одного: совершенно не нужен «рабочий стол» с удалённой машины. Нужны только отдельные пять окон, например. И чтоб они управлялись локальным оконным менеджером, без задержек в отрисовке. Не знаю есть ли «бесшовный» RDP в современности, во времена Citrix (~2006г) что-то такое было. Кроме того буфер терминала, который проматывать можно нужен также локальный (чтоб отрисовывался без торможений), кроме того предиктивное обновление экрана с последующей заменой картинки фактическим результатом, чего RDP не умеет (и что очень просто психологически выматывает, когда работаешь на компьютере, где на экране нет обратной связи на все твои действия).

Может существуют какие-то проекты приближающиеся к описанным пожеланиям?

 , , , ,

fk0 ()

Задать кодировку в ssh-консоли

Ситуация такая. Есть ssh-учётка, при авторизации ей не попадаешь в bash, а попадаешь в диалоговый скрипт, причём скрипт это выводит всё в кириллице в кодировке cp-1251. Как сделать, чтобы не получать в консоли крякозябры? Админского доступа нет.

 

sunny1983 ()

xnview по ssh перестаёт видеть русские имена файлов

Включён X11Forwarding yes в /etc/ssh/sshd_config, сервер перезагружал sudo systemctl restart sshd. При подключении просто в консоль всё ок, русские буквы видны, обе машины на одном дистро manjaro. Но если попробовать запустить удалённо графическое приложение, то не в каждом вижу файлы с русскими именами. Их нет вообще, даже нет кракозябр. Файлы латиницей вижу. Doublecmd - проблем нет, есть проблемы с xnviewmp:

ssh -X часто выдаёт ошибку ssh "RANDR" missing on displayпоэтому пробую Y.

Ещё раз, user1@pc1:~$ ssh -Yf user2@pc2 doublecmd запустился без проблем. А вот

user1@pc1:~$ ssh -Yf user2@pc2 xnviewmp

Запустился, но в xnview в каталоге не вижу даже следа от файлов с русскими буквами. В консоли есть строки типа: BookmarksModel-GETICON /mnt/Photo/????????????/_???????/ 2

Поначалу подумал, что проблема с ssh, но потом запустил doublecmd и там всё работает. Вопрос, как починить.

 , ,

hikikomori ()

Arch. Где посмотреть ssh логи подключений? sshd

Читал о /var/log/auth , но такое отсутствует. Где можно посмотреть логи подключений? Использую sshd на Arch Linux.

 , , ,

Krap ()