Закрыть юзеру доступ по ssh

[Удален]
5873

Сабж, ось debian openssh-server

подскажите пожалуйста.

4пальца
На сайте с 30.03.2006
Offline
99
#1
KosoyRoman:
Сабж, ось debian openssh-server
подскажите пожалуйста.

Если у Вас права root, то можно поменять пароль при помощи passwd username.

Размещаю рекламные статьи на площадках тематики "Новости/СМИ": тИЦ 850
litos0
На сайте с 17.07.2008
Offline
122
#2

Юзеру шелл прописать /bin/date и ssh у него не будет, будет только ftp

[Удален]
#3

4пальца это понятно, я спрашиваю как мне запретить пользователю определенному юзать ssh

litos0 Спасибо!

vedomir
На сайте с 01.07.2004
Offline
167
#4

Процитирую

Как создать учетную запись только для ftp

Очень часто для решения данного вопроса пользователю устанавливают в качестве shell что-нибудь вроде /bin/false и добавляют его в /etc/shells. Такое решение является неверным и очень часто бесполезным так как по сути позволяет пользователю поменять shell с помощью файла .forward (если на хосте запущен sendmail и не используется опция smrsh). Существуют также другие соображения против такого решения. Не вдаваясь в подробности, предложим другие варианты решения данного вопроса.

Чаще всего при разрешении доступа по FTP реальным пользователям, им ограничивают доступное пространство домашним каталогом из соображений защиты (см. вопрос как ограничить пространство, доступное пользователю по FTP его домашним каталогом). В этом случае создание учетной записи только для ftp сводится к установке пользователю /sbin/nologin в качестве shell и добавление опции -A в командную строку запуска ftpd в файле /etc/inetd.conf или в /etc/rc.conf.local (если ftpd запускается как самостоятельный сервер).

Другим решением вопроса может быть установка альтернативного FTP сервера, который разрешает вход пользователям, независимо от установленного shell. В OpenBSD портах в категории net есть FTP сервер vsftpd который позволяет выключить проверку shell для пользователя.

Еще одним вариантом решения вопроса может быть установка пользователю обычного shell с одновременным добавлением в login класс для которого в login.conf(5) shell переустанавливается на /sbin/nologin.

litos0
На сайте с 17.07.2008
Offline
122
#5

vedomir, спасибо за развернутый почти энциклопедический совет :)

LP
На сайте с 06.02.2009
Offline
1
#6

Посмотрите man sshd_config на предмет DenyUsers

P
На сайте с 08.03.2007
Offline
250
#7

Есть такой пакет rssh - хорошая альтернатива полному запрету ssh:

rssh is a restricted shell for providing limited access to a host via ssh(1), allowing a user whose shell is configured to rssh to use one or more
of the command(s) scp(1), sftp(1) cvs(1), rdist(1), and rsync(1), and only those commands. It is intended primarily to work with OpenSSH (see
http://www.openssh.com), but may work with other implementations.

The system administrator should install the shell on the restricted system. Then the password file entry of any user for whom it is desireable to
provide restricted access should be edited, such that their shell is rssh. For example:

luser:x:666:666::/home/luser:/usr/bin/rssh

DK
На сайте с 12.04.2009
Offline
0
#8

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

DenyUsers

This keyword can be followed by a list of user name patterns,

separated by spaces. Login is disallowed for user names that

match one of the patterns. Only user names are valid; a numeri-

cal user ID is not recognized. By default, login is allowed for

all users. If the pattern takes the form USER@HOST then USER and

HOST are separately checked, restricting logins to particular

users from particular hosts. The allow/deny directives are pro-

cessed in the following order: DenyUsers, AllowUsers, DenyGroups,

and finally AllowGroups.

See PATTERNS in ssh_config(5) for more information on patterns.

Ещё удобно через DenyGroup. Создешь группу no_ssh ,

в конфигурациооном прописываешь

vi /etc/ssh/sshd_config

DenyGroups no_ssh

Перезагружаешь ssh:

/etc/rc.d/sshd reload

(Только осторожно, если конфигурационный неправильно настроить, то потом можно уже не подключиться!)

И теперь для пользователей в группе no_ssh всегда будет Access Denied

4пальца
На сайте с 30.03.2006
Offline
99
#9

usermod -s /bin/true username

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий