Настройка сервера SAMBA для инсталлятора

Версия для печатиВерсия для печати

Samba LinuxТребуется файловое хранилище для работы инсталлятора, восстанавливающего клиентам работоспособность windows-компьютеров после краха системы или воздействия вирусов. Такая работа состоит из этапов сброса пользовательской информации на сервер, сканирования и реставрации данных, переустановки ОС Windows на компьютер пользователя, инсталляции программного обеспечения для ежедневных нужд и возврата пользовательской информации на компьютер клиента. Крайне желательно не убить свой сервер зараженной информацией, а также быть уверенным в том, что софт, находящийся на сервере чист, что может быть решено возможностью доступа к информации только для чтения из определенных директорий без права на запись и изменение информации.

С такой задачей справится ОС Линукс и сервер SAMBA. Установка сервера SAMBA является тривиальной задачей, под ОС Gentoo Linux она устанавливается следующей командой

emerge samba

Для успешной компиляции сервера подойдут такие флаги

acl aio client cups fam ldap netapi pam readline server smbclient -addns -ads -avahi -caps -cluster -debug -doc -examples -ldb -quota -smbsharemodes -smbtav2 -swat -syslog -winbind

Для доступа к серверу из сети стоит использовать несколько учетных записей, а также выставить определенные права на используемые директории.

Пусть, для хранения дистрибутивов программ будет использована директория /home/soft, создать которую можно командой

mkdir /home/soft

Сменим ей владельца и права для доступа. Владелец vasya в системе существует, имеет возможность локального входа и свою домашнюю директорию /home/vasya.

chown vasya:users -R /home/soft
chmod 750 -R /home/soft

Создадим пользователя user с основной группой users, домашней директорией /home/user, без возможности локального доступа к системе:

useradd -c "user win" -d /home/user-g users -G users -s /bin/false user

Назначим ему пароль "parol" командой

passwd user

пароль вводится дважды.

Конфигурационный файл сервера samba smb.conf находится в директории /etc/samba и имеет примерно следующее содержание:

[global]
log file = /var/log/samba/log.%m #место для сброса лог-файлов
load printers = no # я закрыл доступ к принтерам через сервер
ldap ssl = No
restrict anonymous = yes # отбросить анонимов
socket options = TCP_NODELAY SO_SNDBUF=8192 SO_RCVBUF=8192
write list = vasya,user
hostname lookups = yes
encrypt passwords = yes
user = vasya,user
allow hosts = 192.168.0. 127. # сети, которые слушает сервер (можно добавить еще через пробел)
dns proxy = no
printing = cups
server string = ИМЯ_СЕРВЕРА #которое отображается в сетевом окружении
wide links = no
path = /home
dos charset = CP866 #кодировка для DOS
local master = no
acl compatibility = winnt
workgroup = РАБОЧАЯ_ГРУППА_ИМЯ
os level = 10 # в одноранговых ставьте от 5 до 15
comment = Home dir
valid users = vasya,user
preferred master = no
max connections = 10
max log size = 500
pam password change = yes
printcap name = cups
printing = cups

[homes]
comment = Home Directories
browseable = no

[tmp]
comment = Temp # при таком раскладе сервера не обязательная директория
path = /tmp
read only = no
browseable = no

[soft]
comment = Soft # собственно сама директория софт
path = /home/soft
guest ok = yes
create mask = 0765

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

запустим сервер

/etc/init.d/samba start

если нужен автоматический старт при включении компьютера, то добавим

rc-update add samba default

Теперь нужно ассоциировать линукс - пользователей с пользователями сервера samba

smbpasswd -a vasya

введем для него пароль, он может отличаться от пароля для входа в Линукс

smbpasswd -a user

аналогично.

Кроме всего этого пользователей нужно "включить"

smbpasswd -e vasya

smbpasswd -e user

Теперь, пользователь user может войти в систему через сеть, сбросить свои данные, а после переустановки системы и инсталляции программного обеспечения восстановить свои документы. Учитывая, что права на директорию с программным обеспечением у пользователя доступны только для чтения и выполнения, заражение дистрибутивов не произойдет.

Для реставрации и лечения пользовательской информации существует множество различных решений, и это отдельная тема.

Безопасность сервера Samba в статье Безопасность Samba посредством Iptables