URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID10
Нить номер: 5267
[ Назад ]

Исходное сообщение
"Запрет командной оболочки при подключении по SSH"

Отправлено s1edge , 29-Авг-14 14:38 
Привет всем,
подключаюсь с машины с Windows через интернет к серверу sshd на Ubuntu для работы через тоннель. Подключение проходит нормально. Для подключения использую параметры командной строки:
ssh -i id_rsa -L 127.0.0.1:999:192.168.10.10:999 -p 443 admin@95.172.95.95
После авторизации образуется тоннель и выполняется вход в командную оболочку под пользователем admin.

Вопрос: мне от этого подключения нужен только тоннель, командная оболочка не нужна. Как ее запретить для подключающегося пользователя? Либо может быть запретить выполнение любых команд в ней?
Отключать нужно по логике со стороны sshd... Почитал справку - как сделать не нашел. Есть только упоминание об этом в описании параметра конф.файла AllowTcpForwarding: "пока пользователям не запрещен доступ к командной оболочке"...

AllowTcpForwarding
    Определяет, будет ли разрешено перенаправление TCP. По умолчанию ``yes''. Имейте ввиду, что отключение пересылки TCP не увеличит безопасность пока пользователям не запрещен доступ к командной оболочке, так как они всегда могут установить свои собственные перенаправления.

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


Содержание

Сообщения в этом обсуждении
"Запрет командной оболочки при подключении по SSH"
Отправлено de_mone , 29-Авг-14 16:39 
http://www.cyberciti.biz/tips/linux-prevent-normal-users-fro...

>[оверквотинг удален]
> Отключать нужно по логике со стороны sshd... Почитал справку - как сделать
> не нашел. Есть только упоминание об этом в описании параметра конф.файла
> AllowTcpForwarding: "пока пользователям не запрещен доступ к командной оболочке"...
> AllowTcpForwarding
>     Определяет, будет ли разрешено перенаправление TCP. По умолчанию
> ``yes''. Имейте ввиду, что отключение пересылки TCP не увеличит безопасность пока
> пользователям не запрещен доступ к командной оболочке, так как они всегда
> могут установить свои собственные перенаправления.
> Вообще было бы идеально, чтобы для каких-то пользователей можно было бы запретить
> командную оболочку, а для каких-то разрешить...


"Запрет командной оболочки при подключении по SSH"
Отправлено s1edge , 29-Авг-14 17:10 
> http://www.cyberciti.biz/tips/linux-prevent-normal-users-fro...

да, не известно только останутся ли поднятыми ssh-тоннели при таком способе. Надо пробовать...



"Запрет командной оболочки при подключении по SSH"
Отправлено ziplex , 03-Окт-14 10:20 
в качестве шелла пользователю которому не нужно давать доступ к шелл  установите /usr/sbin/nologin

в качестве тунеллера для офтопика рекомендую bitwice ssh.


"Запрет командной оболочки при подключении по SSH"
Отправлено s1edge , 29-Авг-14 16:45 
На всякий случай опишу, зачем это нужно, может быть кто-нибудь подскажет другую реализацию?
Нужно подключить 1С на удаленном ПК к ключу 1С и файловой базой 1С, которые находятся за прокси-севером (Ubuntu) в локальной сети.
Т.е. я хотел сделать ssh-тоннели для нужных портов от удаленного ПК к ПК с ключом 1С и базой 1С и подключать по ним сетевую 1С.


"Запрет командной оболочки при подключении по SSH"
Отправлено Психиатр , 29-Авг-14 17:16 
> На всякий случай опишу, зачем это нужно, может быть кто-нибудь подскажет другую
> реализацию?
> Нужно подключить 1С на удаленном ПК к ключу 1С и файловой базой
> 1С, которые находятся за прокси-севером (Ubuntu) в локальной сети.
> Т.е. я хотел сделать ssh-тоннели для нужных портов от удаленного ПК к
> ПК с ключом 1С и базой 1С и подключать по ним
> сетевую 1С.

мсье однако знает толк в извращениях, VPN религия не разрешает?


"Запрет командной оболочки при подключении по SSH"
Отправлено s1edge , 29-Авг-14 17:34 
> мсье однако знает толк в извращениях, VPN религия не разрешает?

ну vpn вроде как полноценное сетевое подключение создает, с доступом ко всем ресурсам (например файловой системе). А тут это не нужно. Нужно только чтобы 1С считала ключ защиты и подключилась к БД...



"Запрет командной оболочки при подключении по SSH"
Отправлено PavelR , 30-Авг-14 14:21 
>> мсье однако знает толк в извращениях, VPN религия не разрешает?
> ну vpn вроде как полноценное сетевое подключение создает, с доступом ко всем
> ресурсам (например файловой системе). А тут это не нужно. Нужно только
> чтобы 1С считала ключ защиты и подключилась к БД...

Есть такая штука - называется файрволл.


"Запрет командной оболочки при подключении по SSH"
Отправлено Филимон Пятничный , 29-Авг-14 18:19 
> На всякий случай опишу, зачем это нужно, может быть кто-нибудь подскажет другую
> реализацию?

Во.
http://www.mariovaldez.net/software/sleepshell/


"Запрет командной оболочки при подключении по SSH"
Отправлено s1edge , 29-Авг-14 19:01 
> Во.
> http://www.mariovaldez.net/software/sleepshell/

Спасибо! Похоже то, что именно нужно!

Так же вот здесь дается совет по созданию собственного шелла, который ничего не делает (аналогично sleepshell):
http://stackoverflow.com/questions/402615/how-to-restrict-ss...

А здесь предлагают ограничить кол-во процессов у пользователя:
http://www.webhostingtalk.com/showthread.php?t=889009

open file vi /etc/security/limits.conf
add this entry for particular user and make shell enable
techno1 hard nproc 2

И может сразу кто подскажет - если надо тоннели по нескольким портам открыть, то какой синтаксис будет в командной строке?
Т.е. если один порт то
ssh -i id_rsa -L 127.0.0.1:999:192.168.10.10:999 -p 443 admin@95.172.95.95

а если несколько, или диапазон?



"Запрет командной оболочки при подключении по SSH"
Отправлено Genacide , 29-Авг-14 23:32 
>[оверквотинг удален]
> Отключать нужно по логике со стороны sshd... Почитал справку - как сделать
> не нашел. Есть только упоминание об этом в описании параметра конф.файла
> AllowTcpForwarding: "пока пользователям не запрещен доступ к командной оболочке"...
> AllowTcpForwarding
>     Определяет, будет ли разрешено перенаправление TCP. По умолчанию
> ``yes''. Имейте ввиду, что отключение пересылки TCP не увеличит безопасность пока
> пользователям не запрещен доступ к командной оболочке, так как они всегда
> могут установить свои собственные перенаправления.
> Вообще было бы идеально, чтобы для каких-то пользователей можно было бы запретить
> командную оболочку, а для каких-то разрешить...

Надо создать специального usera с шелом nologin и им подключаться через ssh


"Запрет командной оболочки при подключении по SSH"
Отправлено s1edge , 30-Авг-14 00:44 
> Надо создать специального usera с шелом nologin и им подключаться через ssh

Сам я еще не пробовал, но в описании sleepshell написано, что при таком варианте тоннели отваливаются, т.е. мне не подходит.



"Запрет командной оболочки при подключении по SSH"
Отправлено Аноним , 30-Авг-14 11:52 
>> Надо создать специального usera с шелом nologin и им подключаться через ssh
> Сам я еще не пробовал, но в описании sleepshell написано, что при
> таком варианте тоннели отваливаются, т.е. мне не подходит.

Копать в сторону force command.


"Запрет командной оболочки при подключении по SSH"
Отправлено Алексей , 02-Сен-14 15:14 
если айпишник на удаленном компе статика то можно тупо сделать проброс портов без всяких ssh туннелей