Привет всем,
подключаюсь с машины с 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 не увеличит безопасность пока пользователям не запрещен доступ к командной оболочке, так как они всегда могут установить свои собственные перенаправления.Вообще было бы идеально, чтобы для каких-то пользователей можно было бы запретить командную оболочку, а для каких-то разрешить...
http://www.cyberciti.biz/tips/linux-prevent-normal-users-fro...>[оверквотинг удален]
> Отключать нужно по логике со стороны sshd... Почитал справку - как сделать
> не нашел. Есть только упоминание об этом в описании параметра конф.файла
> AllowTcpForwarding: "пока пользователям не запрещен доступ к командной оболочке"...
> AllowTcpForwarding
> Определяет, будет ли разрешено перенаправление TCP. По умолчанию
> ``yes''. Имейте ввиду, что отключение пересылки TCP не увеличит безопасность пока
> пользователям не запрещен доступ к командной оболочке, так как они всегда
> могут установить свои собственные перенаправления.
> Вообще было бы идеально, чтобы для каких-то пользователей можно было бы запретить
> командную оболочку, а для каких-то разрешить...
> http://www.cyberciti.biz/tips/linux-prevent-normal-users-fro...да, не известно только останутся ли поднятыми ssh-тоннели при таком способе. Надо пробовать...
в качестве шелла пользователю которому не нужно давать доступ к шелл установите /usr/sbin/nologinв качестве тунеллера для офтопика рекомендую bitwice ssh.
На всякий случай опишу, зачем это нужно, может быть кто-нибудь подскажет другую реализацию?
Нужно подключить 1С на удаленном ПК к ключу 1С и файловой базой 1С, которые находятся за прокси-севером (Ubuntu) в локальной сети.
Т.е. я хотел сделать ssh-тоннели для нужных портов от удаленного ПК к ПК с ключом 1С и базой 1С и подключать по ним сетевую 1С.
> На всякий случай опишу, зачем это нужно, может быть кто-нибудь подскажет другую
> реализацию?
> Нужно подключить 1С на удаленном ПК к ключу 1С и файловой базой
> 1С, которые находятся за прокси-севером (Ubuntu) в локальной сети.
> Т.е. я хотел сделать ssh-тоннели для нужных портов от удаленного ПК к
> ПК с ключом 1С и базой 1С и подключать по ним
> сетевую 1С.мсье однако знает толк в извращениях, VPN религия не разрешает?
> мсье однако знает толк в извращениях, VPN религия не разрешает?ну vpn вроде как полноценное сетевое подключение создает, с доступом ко всем ресурсам (например файловой системе). А тут это не нужно. Нужно только чтобы 1С считала ключ защиты и подключилась к БД...
>> мсье однако знает толк в извращениях, VPN религия не разрешает?
> ну vpn вроде как полноценное сетевое подключение создает, с доступом ко всем
> ресурсам (например файловой системе). А тут это не нужно. Нужно только
> чтобы 1С считала ключ защиты и подключилась к БД...Есть такая штука - называется файрволл.
> На всякий случай опишу, зачем это нужно, может быть кто-нибудь подскажет другую
> реализацию?
> Во.
> http://www.mariovaldez.net/software/sleepshell/Спасибо! Похоже то, что именно нужно!
Так же вот здесь дается совет по созданию собственного шелла, который ничего не делает (аналогично sleepshell):
http://stackoverflow.com/questions/402615/how-to-restrict-ss...А здесь предлагают ограничить кол-во процессов у пользователя:
http://www.webhostingtalk.com/showthread.php?t=889009open 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а если несколько, или диапазон?
>[оверквотинг удален]
> Отключать нужно по логике со стороны sshd... Почитал справку - как сделать
> не нашел. Есть только упоминание об этом в описании параметра конф.файла
> AllowTcpForwarding: "пока пользователям не запрещен доступ к командной оболочке"...
> AllowTcpForwarding
> Определяет, будет ли разрешено перенаправление TCP. По умолчанию
> ``yes''. Имейте ввиду, что отключение пересылки TCP не увеличит безопасность пока
> пользователям не запрещен доступ к командной оболочке, так как они всегда
> могут установить свои собственные перенаправления.
> Вообще было бы идеально, чтобы для каких-то пользователей можно было бы запретить
> командную оболочку, а для каких-то разрешить...Надо создать специального usera с шелом nologin и им подключаться через ssh
> Надо создать специального usera с шелом nologin и им подключаться через sshСам я еще не пробовал, но в описании sleepshell написано, что при таком варианте тоннели отваливаются, т.е. мне не подходит.
>> Надо создать специального usera с шелом nologin и им подключаться через ssh
> Сам я еще не пробовал, но в описании sleepshell написано, что при
> таком варианте тоннели отваливаются, т.е. мне не подходит.Копать в сторону force command.
если айпишник на удаленном компе статика то можно тупо сделать проброс портов без всяких ssh туннелей