Как настроить общий доступ к серверу Samba в Ubuntu 20.04 Focal Fossa Linux
Цель этого руководства - настроить базовый сервер Samba в Ubuntu 20.04 для совместного использования домашних каталогов пользователей, а также для предоставления анонимного доступа для чтения и записи к выбранному каталогу.
Существует множество других возможных конфигураций Samba, однако цель этого руководства - начать с некоторых основ, которые впоследствии могут быть расширены для реализации дополнительных функций в соответствии с вашими потребностями.
В этом уроке вы узнаете:
Существует множество других возможных конфигураций Samba, однако цель этого руководства - начать с некоторых основ, которые впоследствии могут быть расширены для реализации дополнительных функций в соответствии с вашими потребностями.
В этом уроке вы узнаете:
- Как установить сервер Samba
- Как настроить основной ресурс Samba
- Как поделиться домашними каталогами пользователей и публичными анонимными каталогами
- Как смонтировать общий ресурс Samba на MS Windows 10

Как настроить общий доступ к серверу Samba в Ubuntu 20.04 Focal Fossa Linux
Требования к программному обеспечению и используемые условные обозначения
категория | Требования, соглашения или используемая версия программного обеспечения |
---|---|
система | Установленная или модернизированная Ubuntu 20.04 Focal Fossa |
Программное обеспечение | самба |
Другой | Привилегированный доступ к вашей системе Linux от имени пользователя root или с помощью sudo команды. |
Условные обозначения | # - требует, чтобы данные команды linux выполнялись с правами root либо напрямую как пользователь root, либо с помощью sudo команды$ - требует, чтобы данные команды linux выполнялись как обычный непривилегированный пользователь |
Как настроить общий доступ к Samba Server в Ubuntu 20.04, пошаговые инструкции
- Начнем с установки сервера Samba. Это довольно тривиальная задача. Сначала установите
tasksel
команду, если она еще не доступна в вашей системе Ubuntu 20.04. Когда все будет готово, используйтеtasksel
для установки сервера Samba.$ sudo apt install tasksel $ sudo tasksel install samba-server
- Мы начнем со свежего чистого файла конфигурации, в то же время мы сохраняем файл конфигурации по умолчанию в качестве резервной копии для справочных целей. Выполните следующие команды linux, чтобы сделать копию существующего файла конфигурации и создать новый
/etc/samba/smb.conf
файл конфигурации:$ sudo cp /etc/samba/smb.conf /etc/samba/smb.conf_backup $ sudo bash -c 'grep -v -E "^#|^;" /etc/samba/smb.conf_backup | grep . > /etc/samba/smb.conf'
- Samba имеет собственную систему управления пользователями. Однако любой пользователь, существующий в списке пользователей samba, также должен существовать в
/etc/passwd
файле. Если пользователь вашей системы еще не существует и, следовательно, не может находиться в/etc/passwd
файле, сначала создайте нового пользователя с помощьюuseradd
команды, прежде чем создавать нового пользователя Samba.
Однажды ваш новый пользователь системы, например.linuxconfig
для выхода используйтеsmbpasswd
команду для создания нового пользователя Samba:$ sudo smbpasswd -a linuxconfig New SMB password: Retype new SMB password: Added user linuxconfig.
- Следующим шагом является добавление общего каталога домашнего каталога. Используйте ваш любимый текстовый редактор, напр. atom , sublime , чтобы отредактировать наш новый
/etc/samba/smb.conf
файл конфигурации samba и добавить следующие строки в конец файла:[homes] comment = Home Directories browseable = yes read only = no create mask = 0700 directory mask = 0700 valid users = %S
- При желании можно добавить новый общедоступный ресурс Samba для чтения и записи, доступный для анонимных / гостевых пользователей. Сначала создайте каталог, которым вы хотите поделиться, и измените его права доступа:
$ sudo mkdir /var/samba $ sudo chmod 777 /var/samba/
Когда все будет готово, снова откройте/etc/samba/smb.conf
файл конфигурации samba и добавьте следующие строки в конец файла:[public] comment = public anonymous access path = /var/samba/ browsable =yes create mask = 0660 directory mask = 0771 writable = yes guest ok = yes
- Проверьте вашу текущую конфигурацию.
/etc/samba/smb.conf
На этом этапе ваш файл конфигурации samba должен выглядеть примерно так, как показано ниже:[global] workgroup = WORKGROUP server string = %h server (Samba, Ubuntu) log file = /var/log/samba/log.%m max log size = 1000 logging = file panic action = /usr/share/samba/panic-action %d server role = standalone server 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 usershare allow guests = yes [printers] comment = All Printers browseable = no path = /var/spool/samba printable = yes guest ok = no read only = yes create mask = 0700 [print$] comment = Printer Drivers path = /var/lib/samba/printers browseable = yes read only = yes guest ok = no [homes] comment = Home Directories browseable = yes read only = no create mask = 0700 directory mask = 0700 valid users = %S [public] comment = public anonymous access path = /var/samba/ browsable =yes create mask = 0660 directory mask = 0771 writable = yes guest ok = yes
- Наша основная настройка сервера Samba завершена. Не забывайте всегда перезагружать сервер samba после внесения каких-либо изменений в
/etc/samba/smb.conf
файл конфигурации:$ sudo systemctl restart smbd
- (необязательно) Давайте создадим несколько тестовых файлов. После того, как мы успешно смонтируем наши общие ресурсы Samba, нам будут доступны следующие файлы:
$ touch /var/samba/public-share $ touch /home/linuxconfig/home-share
- На этом этапе мы готовы обратить наше внимание на MS Windows. Монтирование каталогов сетевых дисков может немного отличаться для каждой версии MS Windows. Это руководство использует MS Windows 10 в роли клиента Samba.Для начала откройте вас,
Windows Explorer
затем щелкните правой кнопкой мышиNetwork
и выберитеMap network drive...
вкладку. - Выберите букву диска и введите расположение общего ресурса Samba, которое представляет собой IP-адрес или имя хоста вашего сервера Samba, а затем имя домашнего каталога пользователя. Убедитесь, что вы отметили,
Connect using different credentials
если ваше имя пользователя и пароль отличаются от того, который был создан ранее в Шаге 3. - Введите пароль пользователя, созданный на шаге 3.
- Просмотрите домашний каталог пользователя. Вы должны увидеть ранее созданный тестовый файл. Как и вы должны иметь возможность создавать новые каталоги и файлы.
- Повторите шаги монтирования также для общедоступного анонимного общего ресурса каталога samba.
- Все сделано. Теперь не стесняйтесь добавлять дополнительные функции в конфигурацию вашего общего сервера Samba.Убедитесь, что вы можете получить доступ к общедоступному общему каталогу samba.