Устанавливаем Samba из портов:
cd /usr/ports/net/samba; make install clean CLEANDEPENDS=Yes
Так же можно установить Samba с помощью скомпилированного пакета:
export PKG_PATH=ftp://ftp.openbsd.org/pub/OpenBSD/4.5/packages/i386/
pkg_add samba-3.0.33.tgz
Создаем расшаренные каталоги и установим на них необходимые права:
mkdir -p /var/samba/{public,music}
chmod 777 /var/samba/public
Редактируем конфигурационный файл smb.conf:
vi /etc/samba/smb.conf
[global]
workgroup = WORKGROUP
netbios name = Server
server string = Samba Server %v
security = share
hosts allow = 192.168.2. 127.
load printers = no
guest account = nobody
guest ok = yes
log file = /var/log/smbd.%m
max log size = 1024
interfaces = fxp1 lo0
; bind interfaces only = yes
local master = no
os level = 1
domain master = no
preferred master = no
wins support = no
wins proxy = no
dns proxy = no
dos charset = cp866
unix charset = koi8-r
[public]
path = /var/samba/public
comment = Share folder
browseable = yes
writable = yes
; create mask = 0644
; directory mask = 0775
[music]
path = /var/samba/music
comment = Music files
browseable = yes
writeable = no
Проверяем конфигурационный файл на наличие ошибок:
testparm /etc/samba/smb.conf
Запускаем демоны
smbd и
nmbd:
/usr/local/libexec/smbd -D
/usr/local/libexec/nmbd -D
Проверяем работоспособность:
smbclient -U% -L localhost
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.0.33]
Sharename Type Comment
--------- ---- -------
public Disk Share folder
music Disk Music files
IPC$ IPC IPC Service (Samba Server 3.0.33)
Чтобы Samba автоматически запускалась при старте системы, внесем соответствующие
изменения в
/etc/rc.local:
vi /etc/rc.local
if [ -x /usr/local/libexec/smbd ]; then
echo -n ' smbd'; /usr/local/libexec/smbd -D
fi
if [ -x /usr/local/libexec/nmbd ]; then
echo -n ' nmbd'; /usr/local/libexec/nmbd -D
fi
При необходимости можно воспользоваться SWAT - программой веб администрирования Samba:
vi /etc/inetd.conf
901 stream tcp nowait.400 root /usr/local/libexec/swat swat
И перезагрузить конфигурацию
inetd:
kill -HUP `head -1 /var/run/inetd.pid`
Внимание: по умолчанию при использовании SWAT вся
информация, в том числе и пароли, передается в открытом виде. Для
обеспечения безопасности соединений необходимо дать указание stunnel
принимать входящие
SSL-соединения на 902 порту, расшифровывать данные и передавать их на порт 901.