The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Как ограничить права юзеров при доступе через SSH"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Как ограничить права юзеров при доступе через SSH"  
Сообщение от Long (ok) on 12-Июл-07, 15:45 
Доброго всем дня!

Есть голый сервак с FreBSD 6.2, настроен доступ через SFTP.
- как закрыть обычных юзеров в своей домашней директории?
- как юзеру, имеющему привелегии рута, разрешить писать и редактировать файлы и директории по всему серваку?

Клиенты - виндовые машины, стучатся по SFTP через плагин FAR WinSCP.

З.Ы. не судите строго, ибо нуб я в таких делах :(
Какой софт еще нужно доставить? Если нужно...
если я чтото не указал - спрашивайте

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "Как ограничить права юзеров при доступе через SSH"  
Сообщение от ilia kuliev on 12-Июл-07, 17:18 
>Доброго всем дня!
>
>Есть голый сервак с FreBSD 6.2, настроен доступ через SFTP.
>- как закрыть обычных юзеров в своей домашней директории?

chroot, но это придется потрудиться.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Как ограничить права юзеров при доступе через SSH"  
Сообщение от zingel email on 12-Июл-07, 18:26 
>>Доброго всем дня!
>>
>>Есть голый сервак с FreBSD 6.2, настроен доступ через SFTP.
>>- как закрыть обычных юзеров в своей домашней директории?
>
>chroot, но это придется потрудиться.


cd /usr/ports/security/sudo; make && make install && make clean;
man sudo

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Как ограничить права юзеров при доступе через SSH"  
Сообщение от пук on 12-Июл-07, 19:31 
>>>Доброго всем дня!
>>>
>>>Есть голый сервак с FreBSD 6.2, настроен доступ через SFTP.
>>>- как закрыть обычных юзеров в своей домашней директории?
>>
курите /etc/ftpchroot и будет вам счастье

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Как ограничить права юзеров при доступе через SSH"  
Сообщение от fa email(??) on 12-Июл-07, 20:58 
>>>>Доброго всем дня!
>>>>
>>>>Есть голый сервак с FreBSD 6.2, настроен доступ через SFTP.
>>>>- как закрыть обычных юзеров в своей домашней директории?
>>>
>курите /etc/ftpchroot и будет вам счастье

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

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "Как ограничить права юзеров при доступе через SSH"  
Сообщение от Long (ok) on 13-Июл-07, 10:14 
если бы еще вы назвали имя этого шелла - был бы очень признателен :)
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

10. "Как ограничить права юзеров при доступе через SSH"  
Сообщение от Nimdar (ok) on 13-Июл-07, 12:02 
>если бы еще вы назвали имя этого шелла - был бы очень
>признателен :)

/usr/ports/shells/scponly

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

12. "Как ограничить права юзеров при доступе через SSH"  
Сообщение от Long (ok) on 13-Июл-07, 18:28 
>>если бы еще вы назвали имя этого шелла - был бы очень
>>признателен :)
>
>/usr/ports/shells/scponly


огромное спасибо!
буду копать

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

11. "Как ограничить права юзеров при доступе через SSH"  
Сообщение от ilia kuliev on 13-Июл-07, 13:29 
>>>Доброго всем дня!
>>>
>>>Есть голый сервак с FreBSD 6.2, настроен доступ через SFTP.
>>>- как закрыть обычных юзеров в своей домашней директории?
>>
>>chroot, но это придется потрудиться.
>
>cd /usr/ports/security/sudo; make && make install && make clean;
>man sudo

приучайтесь читать внимательно.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "Как ограничить права юзеров при доступе через SSH"  
Сообщение от Long (ok) on 13-Июл-07, 10:12 
>>Доброго всем дня!
>>
>>Есть голый сервак с FreBSD 6.2, настроен доступ через SFTP.
>>- как закрыть обычных юзеров в своей домашней директории?
>
>chroot, но это придется потрудиться.


это принципиально правильное решение?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Как ограничить права юзеров при доступе через SSH"  
Сообщение от Vladimir (??) on 12-Июл-07, 23:07 
Делал это уже довольно давно, на тот момент существующие решения не устраивали.
Так что сильно не пинайте, если че не так.

За основу брал OpenSSH.

cd /usr/ports/security/openssh
make patch

потом в файле work/ssh/sftp-server.c функцию майн привожу к такому виду
(первые-последние строки там уже есть, привел для привязки):

int
main(int ac, char **av)
{
  fd_set *rset, *wset;
  int in, out, max;
  ssize_t len, olen, set_size;
  char *chrootdir;
  struct passwd *pw;
  char *name;

  /* XXX should use getopt */

  handle_init();

  if ((name = getenv("USER")) == NULL) {
    error("USER not set");
    exit(11);
  }
  log( "user %s logged in", name );
  //printf( "%s\n", name);

  if ((pw = getpwnam(name)) == NULL) {
    error("getpwname");
    exit(11);
  }
  if (chroot(pw->pw_dir) < 0)
  {
    error("chroot");
    exit(11);
  }
  log( "chrootted to %s", pw->pw_dir );

  /* set permissions */
  if (setgid(pw->pw_gid) < 0)
  {
    error("setgid");
    exit(11);
  }
  if (setuid(pw->pw_uid) < 0)
  {
    error("setuid");
    exit(11);
  }

  in = dup(STDIN_FILENO);
  out = dup(STDOUT_FILENO);

тут можно еще, к примеру, вставить проверку на, скажем, наличие точки в пути к дому и только в тогда chroot-ить. Но у меня рутятся все

Дальше
make install
файлик work/ssh/sftp-server/sftp-server переписываю в /root
владелец его рут + суид (иначе не даст сделать чрут)

кому надо заходить по сфтп с чрутом - ставлю шеллом /root/sftp-wrapper
его содержимое:

#!/bin/sh

host=`/bin/echo $SSH_CLIENT | awk '{print $1}'`
date=`/usr/bin/env LANG=C /bin/date "+%Y-%b-%d %H:%M:%S"`
/bin/echo $date user \'$USER\' log in from $host >> /root/sftp-log
exec /root/sftp-server

все, доступ идет через стандартный sshd, шеллом запускается патченный сфтп от рута,
делает чрут и выставляет правильных юзера/группу, дальше работать можно только
по протоколу стфп (т.е. командой строки нет) и в папках не выше дома.

в last этих заходов не видно, но враппером пишутся в /root/sftp-log

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "Как ограничить права юзеров при доступе через SSH"  
Сообщение от Long (ok) on 13-Июл-07, 10:19 
спасибо Владимир! Попытаюсь чтото подобное реализовать...
но может есть какой то более прстой способ?
Для меня основная задача сейчас такая:
на виндовой машине есть дистрибутивы прог для фри. Каким макаром проще всего по сетке запихнуть эти дистрибутивы на сервак (чтоб потом там инсталить)? Приветствуются защищенные режимы передачи. Больше в сети фрюшных машин нету


Спасибо


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

9. "Как ограничить права юзеров при доступе через SSH"  
Сообщение от Oyyo on 13-Июл-07, 10:26 
>спасибо Владимир! Попытаюсь чтото подобное реализовать...
>но может есть какой то более прстой способ?
>Для меня основная задача сейчас такая:
>на виндовой машине есть дистрибутивы прог для фри. Каким макаром проще всего
>по сетке запихнуть эти дистрибутивы на сервак (чтоб потом там инсталить)?
>Приветствуются защищенные режимы передачи. Больше в сети фрюшных машин нету
>
>
>Спасибо

попробуй
http://www.agava.ru/hosting/faq/pic_ssh.shtml

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

13. "Как ограничить права юзеров при доступе через SSH"  
Сообщение от Long (ok) on 13-Июл-07, 18:48 
>>спасибо Владимир! Попытаюсь чтото подобное реализовать...
>>но может есть какой то более прстой способ?
>>Для меня основная задача сейчас такая:
>>на виндовой машине есть дистрибутивы прог для фри. Каким макаром проще всего
>>по сетке запихнуть эти дистрибутивы на сервак (чтоб потом там инсталить)?
>>Приветствуются защищенные режимы передачи. Больше в сети фрюшных машин нету
>>
>>
>>Спасибо
>
>попробуй
>http://www.agava.ru/hosting/faq/pic_ssh.shtml


прочел, но вопрос остается открытым - я захожу через SFTP на сервак юзером, который входит в группу wheel. Но все равно не могу изменять содержимое файлов вне домашнего каталога. Как этого можно добиться, не заходя рутом?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру