У меня проблемы с настройкой сервера Samba, точнее, проблема в том, что я настроил сервер, но иногда он перестает работать на несколько часов, а затем запускается снова. Он всегда доступен с других машин Linux с помощью smbclient, проблема возникает только при попытке получить к нему доступ с машин Windows 7. Я установил в нашей компании 2 сервера с одинаковой конфигурацией на одном и том же сервере, и один всегда работает, а другой иногда работает, а иногда нет, по-видимому, случайно.
Папка, которой я пытаюсь поделиться, находится в / opt / kie и принадлежит пользователю wildfly. Это мой smb.conf:
[global]
log level = 2
security = user
map to guest = bad password
#============================ Share Definitions ==============================
[kie]
path = /opt/kie
available = yes
valid users = wildfly
read only = no
browsable = yes
writable = yes
guest ok = yes
map to guest = Bad User
guest account = wildfly
force user = wildfly
Я также создал пользователя Samba под названием wildfly. Вот команды, которые обычно были полезны для работы Samba:
systemctl disable firewalld
service firewalld stop
chcon -t samba_share_t /opt/kie -R
chown wildfly:wildfly /opt/kie -R
service smb restart
service nmb restart
Они отключают брандмауэр, который блокировал подключение Windows к Samba, настраивают правильные права доступа и перезапускают обе службы Samba. Однако в этом случае даже запуск всего этого не помогает.
На самой машине (а также на другой машине Linux в компании) я могу запустить эту команду: smbclient // netenab / kie --user = wildfly, и соединение будет установлено без каких-либо проблем.
Эта проблема
Имя проблемного сервера - netenab, имя рабочего - netenab-test. Несмотря на то, что они оба имеют одинаковую конфигурацию, окна могут подключаться только к netenab-test, но не к netenab. Обе машины работают под управлением Oracle Linux Server 7.1.
В консоли Windows это результаты попытки просмотра общих ресурсов:
C:\>net view \\netenab-test
Shared resources at \\netenab-test
Samba 4.2.3
Share name Type Used as Comment
-------------------------------------------------------------------------------
kie Disk (UNC)
The command completed successfully.
C:\>net view \\netenab
System error 5 has occurred.
Access is denied.
Во втором случае для появления сообщения об ошибке требуется ровно 20 секунд, так что это похоже на какой-то тайм-аут. Pinging netenab с компьютера Windows работает правильно, и я также могу подключиться к порту 445 по telnet.
Если я увеличу уровень журнала до 3, в это время появится следующее сообщение:
[2016/04/15 07:37:51.289585, 3] ../source3/smbd/server_exit.c:249(exit_server_common)
Server exit (NT_STATUS_CONNECTION_RESET)
Это полные журналы уровня 3 и 10: http://pastebin.com/WvCJYjH3 http://pastebin.com/vdbeeKa0
Проблема очень загадочная именно из-за того, как общий ресурс запускается и перестает работать. Вчера днем он случайным образом начал работать в течение нескольких часов, пока я исследовал ошибку, но сегодня утром он снова не работает. И когда он работает, кажется, что он работает на некоторых компьютерах с Windows, но не на других в той же сети. А на следующий день он перестает работать с компьютеров, на которых работал раньше, и начинает работать с компьютеров, на которых раньше не работал.
Как упоминалось в ответе здесь: Samba: проблемы с доступом из Windows Я убедился, что мой пользователь Samba настроен правильно и что я могу подключиться с помощью smbclient.
Кто-нибудь знает, в чем может быть проблема?
Я сам решил проблему, в итоге это была вовсе не проблема Samba, а проблема Windows.
Решением было добавить пакетный файл, который устанавливает учетные данные для netenab при загрузке Windows. Пакетный файл содержит:
net use \\netenab\kie /user:wildfly wildfly
И мне нужно было поместить его в C: \ Users [USER] \ AppData \ Roaming \ Microsoft \ Windows \ Start Menu \ Programs \ Startup