При попытке настроить общий ресурс Samba в Fedora 29 я обнаружил, что он недоступен по сети. При дальнейшем осмотре я также обнаружил, что он также был недоступен с локальной машины.
Я работал над этим несколько часов и не могу найти источник проблемы.
Мой smb .conf
(идентично на двух машинах):
[global]
workgroup = WORKGROUP
server string = Samba server (%v) on %h
hosts allow = 127. 10.0.1.
ntlm auth = yes
log file = /var/log/samba/log.%m
max log size = 50
security = user
passdb backend = tdbsam
load printers = yes
cups options = raw
[mattd]
path = /home/mattd
comment = Share
writable = yes
valid users = mattd
Служба Samba активна и работает:
smb.service - Samba SMB Daemon
Loaded: loaded (/usr/lib/systemd/system/smb.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2019-01-31 04:57:12 EST; 3min 36s ago
Docs: man:smbd(8)
man:samba(7)
man:smb.conf(5)
Main PID: 26861 (smbd)
Status: "smbd: ready to serve connections..."
Tasks: 4 (limit: 4915)
Memory: 9.0M
CGroup: /system.slice/smb.service
├─26861 /usr/sbin/smbd --foreground --no-process-group
├─26863 /usr/sbin/smbd --foreground --no-process-group
├─26864 /usr/sbin/smbd --foreground --no-process-group
└─26865 /usr/sbin/smbd --foreground --no-process-group
Jan 31 04:57:12 minedlands systemd[1]: Starting Samba SMB Daemon...
Jan 31 04:57:12 minedlands systemd[1]: Started Samba SMB Daemon.
Jan 31 04:57:12 minedlands smbd[26861]: [2019/01/31 04:57:12.514592, 0] ../lib/util/become_daemon.c:138(daemon_ready)
Jan 31 04:57:12 minedlands smbd[26861]: daemon_ready: STATUS=daemon 'smbd' finished starting up and ready to serve connections
Пользователь mattd
(моя учетная запись) работает, и я могу войти в систему через SSH.
Я создал учетную запись Samba для этого пользователя:
$ smbpasswd -a mattd
Учетная запись Samba включена:
$ smbpasswd -e mattd
И могу подтвердить, что эта учетная запись Samba существует:
$ pdbedit -L
mattd:1000:Matt D.
Я установил параметр SELinux, чтобы разрешить доступ к общим папкам, которые находятся дома каталоги:
$ setsebool -P samba_enable_home_dirs 1
Однако SELinux был отключен с помощью setenforce 0
для тестирования.
Samba доступна через брандмауэр:
$ firewall-cmd --zone=public --permanent --add-service=samba
$ firewall-cmd --reload
Когда я пытаюсь получить доступ к общему ресурсу Samba локально (я подключаюсь через SSH), я могу подключиться к службе Samba, которая запрашивает у меня аутентификацию:
$ smbclient //localhost/mattd --user mattd
Enter WORKGROUP\mattd's password:
Но меня встречает ошибка отказа в доступе:
session setup failed: NT_STATUS_ACCESS_DENIED
В итоге: [12 189] Это моя учетная запись.
smb.conf
- это идентична работающей системе. Версии Samba:
I может подключиться к машине CentOS с машины Fedora, используя smbclient
, поэтому соединения возможны.
Я чувствую, что рассмотрел все основы здесь, но это просто не сработает. Хотя название предполагает, что конфигурация этих двух машин идентична, либо они не совпадают, либо между двумя дистрибутивами есть что-то, что требует внимания.