ограничить окружение ssh сессии

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС для молодых и начинающих системных администраторов.

Модератор: SLEDopit

Bedazzled
Сообщения: 311
ОС: ubuntu

ограничить окружение ssh сессии

Сообщение Bedazzled »

привет

есть сервер linux с белым ip адресом . на нём запущен ssh server . Он используется только для ssh туннелей.
Подскажите как мне ограничить одного пользователя в ssh сессии так чтобы у него работали только ssh туннели и больше ничего.(под ничего подразумевается чтобы даже mc запустить в сессии нельзя было :) )
Спасибо сказали:

Аватара пользователя
lone_wolf
Сообщения: 204

Re: ограничить окружение ssh сессии

Сообщение lone_wolf »

Bedazzled писал(а):
01.09.2017 04:44
привет

есть сервер linux с белым ip адресом . на нём запущен ssh server . Он используется только для ssh туннелей.
Подскажите как мне ограничить одного пользователя в ssh сессии так чтобы у него работали только ssh туннели и больше ничего.(под ничего подразумевается чтобы даже mc запустить в сессии нельзя было :) )

поставь ему шел /sbin/nologin вместо /bin/bash это делается в файле /etc/passwd
или вот такой командой:

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

usermod -s /sbin/nologin username

или

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

chsh -s /sbin/nologin username
Спасибо сказали:

Аватара пользователя
Bizdelnick
Модератор
Сообщения: 17911
Статус: grammatikführer
ОС: Debian GNU/Linux

Re: ограничить окружение ssh сессии

Сообщение Bizdelnick »

lone_wolf писал(а):
01.09.2017 09:03
это делается в файле /etc/passwd

Во-первых не надо руками лезть в /etc/passwd, надо использовать chsh. Во-вторых, сдаётся мне, что в результате и туннель поднять не получится.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:

Аватара пользователя
lone_wolf
Сообщения: 204

Re: ограничить окружение ssh сессии

Сообщение lone_wolf »

Bizdelnick писал(а):
01.09.2017 09:22
lone_wolf писал(а):
01.09.2017 09:03
это делается в файле /etc/passwd

Во-первых не надо руками лезть в /etc/passwd, надо использовать chsh. Во-вторых, сдаётся мне, что в результате и туннель поднять не получится.

Насчет руками лезть согласен.
И да туннель поднимется я так понимал уже в своё время.
Спасибо сказали:

Bedazzled
Сообщения: 311
ОС: ubuntu

Re: ограничить окружение ssh сессии

Сообщение Bedazzled »

да, если делать

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

chsh -s /sbin/nologin username

туннель не подымается :(
Спасибо сказали:

Institut
Сообщения: 281
ОС: mint

Re: ограничить окружение ssh сессии

Сообщение Institut »

так чтобы у него работали только ssh туннели и больше ничего

А если создать пользователя без домашнего католага? (Как вариант)
Спасибо сказали:

Аватара пользователя
lone_wolf
Сообщения: 204

Re: ограничить окружение ssh сессии

Сообщение lone_wolf »

Я ошибся признаю, я такое делал с пробросом портов для почты и rdp соединения. Но тут ведь чистый тунель. В общем попробуйте следующее:
Меняем обратно на ноhмальный шел:
chsh -s /bin/bash username
Добавьте в /etc/ssh/sshd_config
ForceCommand echo 'This account can only be used for tunneling'; cat
Затем перезагрузите service sshd restart или systemctl restart sshd
Параметр ForceCommand заставляет пользователя автоматически выполнять команду «echo 'This account can only be used for tunneling'; cat» сразу после подключения. Это не даст пользователю использовать консоль нормальным образом, т.к., если убить процесс cat нажатием Ctrl+C, SSH-соединение будет разорвано. (Источник)


З.ы. Эх но это костыль. Может кто знает более правильный метод?
Спасибо сказали:

Аватара пользователя
Bizdelnick
Модератор
Сообщения: 17911
Статус: grammatikführer
ОС: Debian GNU/Linux

Re: ограничить окружение ssh сессии

Сообщение Bizdelnick »

lone_wolf писал(а):
01.09.2017 11:16
Добавьте в /etc/ssh/sshd_config

Вот туда точно не надо ничего добавлять. Хотите, чтобы ТС лишился удалённого доступа вообще?
Как вариант, можно попробовать использовать в качестве шелла rssh. Хотя я и в этом случае не уверен, что удастся поднять туннель.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:

Аватара пользователя
lone_wolf
Сообщения: 204

Re: ограничить окружение ssh сессии

Сообщение lone_wolf »

Bizdelnick писал(а):
01.09.2017 12:19
lone_wolf писал(а):
01.09.2017 11:16
Добавьте в /etc/ssh/sshd_config

Вот туда точно не надо ничего добавлять. Хотите, чтобы ТС лишился удалённого доступа вообще?
Как вариант, можно попробовать использовать в качестве шелла rssh. Хотя я и в этом случае не уверен, что удастся поднять туннель.

Нет не хочу. И по сему пожалуй само устранюсь ибо получается я даю только вредные советы.
А по поводу rssh у неё заявлена поддержка scp, sftp, rsync, cvs, rdist
Спасибо сказали:

Аватара пользователя
Bizdelnick
Модератор
Сообщения: 17911
Статус: grammatikführer
ОС: Debian GNU/Linux

Re: ограничить окружение ssh сессии

Сообщение Bizdelnick »

Bizdelnick писал(а):
01.09.2017 09:22
сдаётся мне, что в результате и туннель поднять не получится.

Впрочем, должно получиться, если использовать опцию -N.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:

Аватара пользователя
lone_wolf
Сообщения: 204

Re: ограничить окружение ssh сессии

Сообщение lone_wolf »

Эм по поводу редактирования /etc/sshd_config я выложил не полную настройку:
Она дожна выглядеть так:

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

Match User name_user_ssh_tunnel
        X11Forwarding no
        AllowTcpForwarding yes
        AllowAgentForwarding no
        GatewayPorts no
        ForceCommand echo 'This account can only be used for tunneling'; cat

Источник тыц

вот тоже самое только ForceCommand /sbin/nologin с лора

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

Match User name_user_ssh_tunnel
        X11Forwarding yes
        AllowTcpForwarding yes
        ForceCommand /sbin/nologin
Спасибо сказали:

Bedazzled
Сообщения: 311
ОС: ubuntu

Re: ограничить окружение ssh сессии

Сообщение Bedazzled »

Спасибо через файл /etc/sshd_config получилось.
Спасибо сказали:

Аватара пользователя
lone_wolf
Сообщения: 204

Re: ограничить окружение ssh сессии

Сообщение lone_wolf »

Bedazzled писал(а):
04.09.2017 08:19
Спасибо через файл /etc/sshd_config получилось.

какой из 2-х вариантов?
Спасибо сказали:

Bedazzled
Сообщения: 311
ОС: ubuntu

Re: ограничить окружение ssh сессии

Сообщение Bedazzled »

с сайта https://voxlink.ru/kb/linux/ispolzovanie-ss...lej-s-open-ssh/

Для ввода описанных ограничений нужно добавить в конец файла настроек OpenSSH-сервера (/etc/ssh/sshd_config) указанные ниже строки и перезагрузить OpenSSH-сервер (service sshd restart)


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

Match User ssh_tunnel
X11Forwarding no
AllowTcpForwarding yes
AllowAgentForwarding no
GatewayPorts no
ForceCommand echo 'This account can only be used for tunneling'; cat


второй вариант не проверял
Спасибо сказали: