Smb client — различия между версиями

Материал из pNp Wiki
Перейти к: навигация, поиск
(Конфигурирование сетевых директорий)
(Конфигурирование сетевых директорий)
Строка 95: Строка 95:
 
[root@vm-01 srv]#  
 
[root@vm-01 srv]#  
 
</syntaxhighlight>
 
</syntaxhighlight>
Либо, для тех же целей можно использовать утилиту <code>apachectl</code>:
+
Поскольку пользователь <code>andy</code> уже есть в нашей системе, то надо создать пользователя с таким же именем в
 +
базе данных <code>Samb</code>
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
[root@vm-01 logs]# apachectl configtest
+
[root@vm-01 srv]# smbpasswd -a andy
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 192.168.122.158. Set the 'ServerName' directive globally to suppress this message
+
New SMB password:
Syntax OK
+
Retype new SMB password:
[root@vm-01 logs]#
+
Added user andy.
 +
[root@vm-01 srv]#
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
Посмотреть имеющихся пользователей <code>Samb</code>'ы и их права, можно используя утилиту <code>pdbedit</code>:
 +
<syntaxhighlight lang="bash">
 +
[root@vm-01 srv]# pdbedit -Lv
 +
---------------
 +
Unix username:        andy
 +
NT username:         
 +
Account Flags:        [U          ]
 +
User SID:            S-1-5-21-713007370-98759951-3604115452-1001
 +
Primary Group SID:    S-1-5-21-713007370-98759951-3604115452-513
 +
Full Name:            Andrew
 +
Home Directory:      \\vm-01\andy
 +
HomeDir Drive:       
 +
Logon Script:       
 +
Profile Path:        \\vm-01\andy\profile
 +
Domain:              VM-01
 +
Account desc:       
 +
Workstations:       
 +
Munged dial:         
 +
Logon time:          0
 +
Logoff time:          Wed, 06 Feb 2036 18:06:39 MSK
 +
Kickoff time:        Wed, 06 Feb 2036 18:06:39 MSK
 +
Password last set:    Tue, 20 Mar 2018 15:20:14 MSK
 +
Password can change:  Tue, 20 Mar 2018 15:20:14 MSK
 +
Password must change: never
 +
Last bad password  : 0
 +
Bad password count  : 0
 +
Logon hours        : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
 +
[root@vm-01 srv]#
 +
</syntaxhighlight>
 +
 +
 
==== Запуск ====
 
==== Запуск ====
 
Запускаем сервис:
 
Запускаем сервис:

Версия 15:23, 20 марта 2018

Конфигурирование Samba. Сетевые директории пользователя

Предварительные требования

  • Виртуальная машина с двумя сетевыми интерфейсами
  • Установленные пакеты: bash-completion, policycoreutils, policycoreutils-python, policycoreutils-devel, setroubleshoot-server, samba, samba-client, cifs-utils

Конфигурирование сетевых директорий

В конфигурационный файле /etc/samba/smb.conf создадим сетевую директорию share, которой будет соответствовать местоположение /srv/share. Она будет видимой и доступна на запись пользователю (в нашем случае - andy) на запись. Приводим файл /etc/samba/smb.conf к следующему виду:

# See smb.conf.example for a more detailed config file or
# read the smb.conf manpage.
# Run 'testparm' to verify the config is correct after
# you modified it.

[global]
	workgroup = SAMBA
	security = user

	passdb backend = tdbsam

	printing = cups
	printcap name = cups
	load printers = yes
	cups options = raw

[homes]
	comment = Home Directories
	valid users = %S, %D%w%S
	browseable = No
	read only = No
	inherit acls = Yes

[data]
	comment = "data directory"
	path = /srv/data/
	valid users = %U
	browseable = yes
        read only = no

[printers]
	comment = All Printers
	path = /var/tmp
	printable = Yes
	create mask = 0600
	browseable = No

[print$]
	comment = Printer Drivers
	path = /var/lib/samba/drivers
	write list = root
	create mask = 0664
	directory mask = 0775
[root@vm-01 srv]#

Теперь надо создать директорию /srv/data и дать на нее права 750 для пользователя andy:

[root@vm-01 srv]# cd /srv/
[root@vm-01 srv]# mkdir data/
[root@vm-01 srv]# chown andy:root data/
[root@vm-01 srv]# ls -lahi /srv/ | grep data
33992088 drwxr-xr-x.  2 andy root   6 Mar 20 14:49 data
[root@vm-01 srv]#

Теперь необходимо присвоить контекст selinux для нашей директории:

[root@vm-01 srv]# semanage fcontext -at public_content_rw_t "/srv/data(/.*)?"
[root@vm-01 srv]# restorecon -vR /srv/data/
[root@vm-01 srv]# ls -lahiZ /srv/ | grep data
drwxr-xr-x. andy root unconfined_u:object_r:public_content_rw_t:s0 data
[root@vm-01 srv]#

Для записи в директории, надо открыть включить несколько переменных selinux:

[root@vm-01 srv]# setsebool -P smbd_anon_write=on
[root@vm-01 srv]# setsebool -P samba_enable_home_dirs=on
[root@vm-01 srv]# getsebool -a | egrep "(smb|samba)"
samba_create_home_dirs --> off
samba_domain_controller --> off
samba_enable_home_dirs --> on
samba_export_all_ro --> off
samba_export_all_rw --> off
samba_load_libgfapi --> off
samba_portmapper --> off
samba_run_unconfined --> off
samba_share_fusefs --> off
samba_share_nfs --> off
sanlock_use_samba --> off
smbd_anon_write --> on
tmpreaper_use_samba --> off
use_samba_home_dirs --> off
virt_use_samba --> off
[root@vm-01 srv]#

Поскольку пользователь andy уже есть в нашей системе, то надо создать пользователя с таким же именем в базе данных Samb

[root@vm-01 srv]# smbpasswd -a andy
New SMB password:
Retype new SMB password:
Added user andy.
[root@vm-01 srv]#

Посмотреть имеющихся пользователей Samb'ы и их права, можно используя утилиту pdbedit:

[root@vm-01 srv]# pdbedit -Lv
---------------
Unix username:        andy
NT username:          
Account Flags:        [U          ]
User SID:             S-1-5-21-713007370-98759951-3604115452-1001
Primary Group SID:    S-1-5-21-713007370-98759951-3604115452-513
Full Name:            Andrew
Home Directory:       \\vm-01\andy
HomeDir Drive:        
Logon Script:         
Profile Path:         \\vm-01\andy\profile
Domain:               VM-01
Account desc:         
Workstations:         
Munged dial:          
Logon time:           0
Logoff time:          Wed, 06 Feb 2036 18:06:39 MSK
Kickoff time:         Wed, 06 Feb 2036 18:06:39 MSK
Password last set:    Tue, 20 Mar 2018 15:20:14 MSK
Password can change:  Tue, 20 Mar 2018 15:20:14 MSK
Password must change: never
Last bad password   : 0
Bad password count  : 0
Logon hours         : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
[root@vm-01 srv]#


Запуск

Запускаем сервис:

[root@vm-01 srv]# systemctl enable smb
Created symlink from /etc/systemd/system/multi-user.target.wants/smb.service to /usr/lib/systemd/system/smb.service.
[root@vm-01 srv]# systemctl start smb
[root@vm-01 srv]# systemctl is-active smb
active
[root@vm-01 srv]#

Добавляем разрешение в файрволе:

[root@vm-01 srv]# firewall-cmd --add-service=samba --permanent
success
[root@vm-01 ~]# firewall-cmd --reload 
success
[root@vm-01 srv]# firewall-cmd --list-services
samba http dns dhcpv6-client smtp ssh https mysql
[root@vm-01 srv]#

Проверка

С виртуальной машины vm-02 обратимся к сетевой директории при помощи утилиты smbclient от пользователя andy:

Ссылки