Здесь и сейчас я хочу для своих целей разобрать шаги по организации файлового сервера на своем ноутбуке Lenovo E555 системы Ubuntu 12.04.5 Desktop amd64. Делается это чтобы иметь возможность обмена информацией с домашними системами на базе Windows, рабочими системами и организации удобного механизма к своим скриптам по удобному конфигурированию систем. Чтобы не забыть и в случае чего повторить.
Сперва настройки локали, настройки правильного часового пояса и синхронизации времени с сервером точного времени.
Где пакет Samba установлен из дефолтных репозитариев:
ekzorchik@srv-server:~$ sudo rm -Rf /var/lib/apt/lists/
ekzorchik@srv-server:~$ sudo apt-get update && sudo apt-get upgrade -y
ekzorchik@srv-server:~$ apt-cache show samba | grep Version
Version: 2:3.6.25-0ubuntu0.12.04.4
Version: 2:3.6.3-2ubuntu2
Установку пакета samba буду производить из дефолтных репозитариев Ubuntu Precise:
ekzorchik@srv-server:~$ sudo apt-get install samba smbclient -y
ekzorchik@srv-server:~$ smbd --version
Version 3.6.25
ekzorchik@srv-server:~$ sudo cp /etc/samba/smb.conf{,.bak}
ekzorchik@srv-server:~$ sudo nano /etc/security/limits.conf
*<TAB><TAB>-<TAB>nofile<TAB><TAB>16384
После Logoff/Logon для активации внесенных изменений.
Доступ в каталог backup будут иметь доступ только определенные:
ekzorchik@srv-server:~$ sudo mkdir -p /media/backup
ekzorchik@srv-server:~$ sudo addgroup smbshare
ekzorchik@srv-server:~$ sudo useradd -M -s /bin/false ekz
ekzorchik@srv-server:~$ sudo smbpasswd -a ekz
New SMB password: Aa1234567
Retype new SMB password: Aa1234567
Added user ekz.
ekzorchik@srv-server:~$ sudo usermod -a ekz -G smbshare
ekzorchik@srv-server:~$ sudo chown -R nobody:smbshare /media/backup/
ekzorchik@srv-server:~$ sudo chmod -R 0770 /media/backup/
Доступ в каталог script будет иметь все на запуск, но не на изменение.
ekzorchik@srv-server:~$ sudo mkdir -p /media/script
ekzorchik@srv-server:~$ sudo chown -R nobody:nogroup /media/script/
Теперь настраиваю конфигурационный файл smb.conf под себя:
ekzorchik@srv-server:~$ sudo nano /etc/samba/smb.conf
[global]
workgroup = WORKGROUP
server string = %v server (Samba, Ubuntu)
dns proxy = no
interfaces = 127.0.0.0/8 eth0
log file = /var/log/samba/log.%m
max log size = 1000
syslog = 0
panic action = /usr/share/samba/panic-action %d
security = user
encrypt passwords = true
passdb backend = tdbsam
obey pam restrictions = yes
unix password sync = yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
pam password change = yes
map to guest = bad user
[script]
comment = My work scripts
path = /media/script
read only = no
browseable = yes
guest ok = no
hide files = /$RECYCLE.BIN/desktop.ini/lost+found/Thumbs.db/
[backup]
comment = My backup folder
path = /media/backup
read only = no
browseable = no
guest ok = yes
create mask = 0700
valid users = ekz
hide files = /$RECYCLE.BIN/desktop.ini/lost+found/Thumbs.db/
По параметрам:
- guest ok → если Yes, то при подключении к ресурсу не будет требоваться пароль
- read only → если Yes, то пользователь не сможет создавать или изменять файлы в этой директории.
- valid users = ekz → только пользователь ekz может получить доступ к данной шаре.
- Valid users = @smbshare → только пользователи группы могут получить доступ к шаре
- rwx → чтобы пользователь мог из шары запускать файлы (bat,exe) у файлов владельцем которых он является должны быть права на это дело, либо же обозначен параметр: acl allow execute always = True
Проверяю настройки файлового сервиса:
ekzorchik@srv-server:~$ sudo testparm
[sudo] password for ekzorchik:
Load smb config files from /etc/samba/smb.conf
Processing section “[script]”
Processing section “[backup]”
Loaded services file OK.
Server role: ROLE_STANDALONE
ekzorchik@srv-server:~$ sudo service smbd restart
После на Windows системе в той же подсети (к примеру) в меню «Выполнить», Пуск – «Выполнить» (клавиатурное сочетание клавиш Win+X) указываю либо IP&DNS имя системы Ubuntu Precise где развернут Samba Server:
После нажимаем кнопку «ОК» и в проводнике открывается ресурс с доступными расшаренными каталогами, в моем случае это каталог: script
Проверяю, а действительно ли каталог backup не виден к примеру при сканировании:
ekzorchik@srv-server:~$ sudo smbclient -L 192.168.1.155
Enter root’s password: 712mbddr@
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.25]
Sharename Type Comment
——— —- ——-
IPC$ IPC IPC Service (3.6.25 server (Samba, Ubuntu))
script Disk My work scripts
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.25]
Server Comment
——— ——-
DESKTOP
SRV-SERVER srv-server server (Samba, Ubuntu)
Workgroup Master
——— ——-
WORKGROUP DESKTOP
Итак все что по первой мне было нужно я развернул, теперь я смогу перенести данные настройки на свой ноутбук под управлением Ubuntu Precise/Trusty так и на рабочем компьютере дабы управлять вверенной мне инфраструктурой со своего рабочего места.
Теперь когда я подключаюсь к Работе со своего ноутбука посредством настроенного VPN соединения и обратившись к своему адресу выданному из VPN диапазона с работы копирую файлы на личный ноутбук.
На этом я заканчиваю, задача выполнена, с уважением Олло Александр aka ekzorchik.