Главная страница


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : Constantin Stefanov                  2:5020/400     01 Jun 2005  14:50:24
 To : Eugene Grosbein
 Subject : Re: scp и chroot
 -------------------------------------------------------------------------------- 
 
 Eugene Grosbein wrote:
 
 >  SR>> Это, на самом деле, пофиг. Раз в scponly нет вызова umask(2),
 >  SR>> то ничего не поможет. Только патч. Либо кто-то должен установить
 >  SR>> umask _до_ вызова scponly. Ещё вариант - патчить scp/sftp, но вот
 >  SR>> этого мне совсем не хочется делать.
 >  >> Крайне полезно в scponly добавить хотя бы такое:
 >  >> 
 >  >> #ifdef  LOGIN_CAP
 >  >>   if ((lc = login_getpwclass(pw)) != NULL)
 >  >>     setusercontext(lc, pw, (uid_t)0,
 >  >>                 LOGIN_SETLOGIN|LOGIN_SETGROUP|LOGIN_SETPRIORITY|
 >  >>                 LOGIN_SETRESOURCES|LOGIN_SETUMASK);
 >  >> #endif
 >  CS> А разве это дело шелла такими вещами заниматься? В каких еще шеллах есть 
 >  CS> такое? Вроде как этим login должен заниматься, или sshd.
 > 
 > login'а может и не быть. Как нет его в случае ftpd.
 > Да, в случае sshd неплохо бы ему этим заниматься.
 
 А он и занимается, правда не до конца. Вот кусочек из 
 /usr/src/crypto/openssh/session.c:
 #ifdef HAVE_LOGIN_CAP
                  child_set_env(&env, &envsize, "PATH", _PATH_STDPATH);
                  child_set_env(&env, &envsize, "TERM", "su");
                  senv = environ;
                  environ = xmalloc(sizeof(char *));
                  *environ = NULL;
                  (void) setusercontext(lc, pw, pw->pw_uid,
                      LOGIN_SETENV|LOGIN_SETPATH);
                  copy_environment(environ, &env, &envsize);
                  for (var = environ; *var != NULL; ++var)
                          xfree(*var);
                  xfree(environ);
                  environ = senv;
 #else /* HAVE_LOGIN_CAP */
 Так что, по-моему, править надо именно здесь, а не в шелле.
 
 -- 
 Константин Стефанов
 --- ifmail v.2.15dev5.3
  * Origin: Demos online service (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: scp и chroot   Constantin Stefanov   01 Jun 2005 14:50:24 
Архивное /ru.unix.bsd/6577b86b08c2.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional