Hello Vladimir,
пятница, 19 ноября 1999 г., you wrote:
VV> как обезопасить от них сервер и их одного от другово?
VV> вы скажете что uid == nobody но я даже ноубодя боюсь.
У меня сделано все достаточно просто (по моему). Написан wrapper
небольшой для апач (что то вроде этого).:
----------
#include <sys/types.h>
#include <stdio.h>
#include <unistd.h>
#include <pwd.h>
void main( int argc, char *argv[] )
{
uid_t uid;
gid_t gid;
char *p, *home;
struct passwd *wpass;
p = "/usr/env";
if( chdir(p) )
{
fprintf(stderr, "chdir to %s failed\n", p );
}
else if( chroot(p) )
{
fprintf(stderr, "chroot to %s failed\n", p );
}
else
{
execl( "/www/bin/httpd","httpd",(char *)0 );
fprintf(stderr, "execl failed for httpd.\n");
}
exit(0);
}
----------
на /usr/env смонтирован винч на котором расположена мнимая система.
с сохранением естественно либов и т.д. и т.п. вся bin статическая.
туда же установлен perl, apache, ePerl и все прелести жизни.
Пользователи заходят по ftp (ProFTPD 1.2.0pre3) и chroot в свой
домашний каталог. Также имеется доступ телнетом к хосту и у
пользователя вместо нормально шелла прописан не shell а другой
wrapper, который запускает из под себя уже нормальный shell. Вот
собственно и все. Работает на протяжении 1.5 лет и проблем не
испытывал никаких.
Best regards,
---
Alexei V. Alexandrov
Mail: ava@weblink.ru
WWW: www.weblink.ru
RIPE: AA1829-RIPE
RIPN: AVA9-RIPN
=============================================================================
"inet-admins" Internet access mailing list. Maintained by East Connection ISP.
Mail "unsubscribe inet-admins" to Majordomo@info.east.ru if you want to quit.
Archive is accessible on http://info.east.ru/rus/inetadm.html