В первую очередь необходимо настроить или отключить SELinux. Проверить, включен ли в вашей системе SELinux можно, выполнив следующую команду:
selinuxenabled && echo enabled || echo disabled
Как отключить SELinux описано здесь.
Затем выполните установку Samba:
yum install samba samba-common cups-libs samba-client
Создайте папку, к которой вы будете предоставлять общий доступ:
mkdir -p /home/howtoit
И настройте на нее права:
chown -R root:users /home/howtoit
chmod -R 775 /home/howtoit
Откройте файл для конфигурации:
vi /etc/samba/smb.conf
Проверьте, что у вас существуют следующие строчки в секции [global]:
[global]
security = user
passdb backend = tdbsam
workgroup = MYGROUP
server string = Samba Server Version %v
И там же, в секции [global] добавьте еще одну строчку со следующим содержанием:
map to guest = Bad User
Данная настройка означает, что запросы с неправильным паролем будут отклонены, если такое имя пользователя существует. Если не существует, то такие запросы будут считаться как попытки зайти гостем (guest account).
Затем перейдите к концу файла, где указаны описания общих ресурсов (share definitions).
В первую очередь, если вы не планируете предоставлять общий доступ к домашним каталогам пользователей закомментируйте секцию homes:
[homes]
; comment = Home Directories
; browseable = no
; writable = yes
; valid users = %S
; valid users = MYDOMAIN\%S
То же можно сделать и с секцией [printers], отвечающей за общий доступ к принтерам:
;[printers]
; comment = All Printers
; path = /var/spool/samba
; browseable = no
; guest ok = no
; writable = no
; printable = yes
Теперь добавьте свою секцию со следующей конфигурацией:
[howtoit]
comment = Everybody has access
path = /home/howtoit
force group = users
create mask = 0666
directory mask = 0777
writable = yes
guest ok = yes
browseable = yes
Сохраните файл кофигурации.
Настройте автоматический запуск службы samba при загрузке CentOS и запустите саму службу:
chkconfig --levels 235 smb on
/etc/init.d/smb restart
Вам также может понадобится настроить межсетевой экран (Samba использует порты 137, 138, 139, 445) или, по крайней мере его отключить (не рекомендуется) временно (до перезагрузки):
/etc/init.d/iptables stop
Или постоянно:
/etc/init.d/iptables stop
chkconfig iptables off