Детальные логи в Samba

Приведу пример настройки детальных логов Samba, в логах может сохранятся IP адрес клиента, его действие, hostname, а также много другой отладочной информации.

Читать далее «Детальные логи в Samba»

Решение предупреждения Samba «rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)»

Заметил однажды сообщение в /var/log/samba/log на одном из серверов с samba:

Читать далее «Решение предупреждения Samba «rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)»»

Что делать если не включается «Сетевое обнаружение» в Windows

Однажды заметил на одном из компьютеров, что в сетевом окружении ничего не отображается, а после выбора «Включить сетевое обнаружение» в «Панель управления\Сеть и Интернет\Центр управления сетями и общим доступом\Дополнительные параметры общего доступа», все равно выбор оставался на «Отключить сетевое обнаружение», то есть не применялся.
Читать далее «Что делать если не включается «Сетевое обнаружение» в Windows»

Решение ошибки «System error 1231 has occurred» при подключении сетевого диска

Однажды мне нужно было подключить сетевой диск чтобы сделать на него резервную копию системы, но возникла ошибка когда я выполнил команду подключения:

C:\Users\Administrator>net use K:\\192.168.0.5\dir /persistent:no /user:name password
System error 1231 has occurred.
The network location cannot be reached. For information about network troublesho
oting, see Windows Help.

Позже я определил, что в свойствах подключения по локальной сети (также может называться Ethernet и Local Area Connection) сняты галочки с «Клиент для сетей Microsoft» и «Общий доступ к файлам и принтерам для сетей Microsoft».

После того как я отметил галочками эти компоненты и применил, диск успешно подключился:

C:\Users\Administrator>net use K:\\192.168.0.5\dir /persistent:no /user:name password
The command completed successfully.

Ошибка 1231 может также отобразится, если например в фаерволе или на оборудовании провайдера блокируются порты Netbios, чтобы пользователи не видели общих дисков.

Смотрите также мою статью — Установка и настройка Samba в Linux

Решение WARNING: The «syslog» option is deprecated

Заметил однажды предупреждение в файле /var/log/samba/log.:

[2018/04/13 20:51:05.280655,  1] ../lib/param/loadparm.c:1629(lpcfg_do_global_parameter)
  WARNING: The "syslog" option is deprecated

Как и сообщается, опция «syslog» устарела, и чтобы предупреждение не появлялось, её необходимо убрать из конфигурации.

Я открыл файл конфигурации в текстовом редакторе:

sudo nano /etc/samba/smb.conf

Нашел эту опцию:

syslog = 0

И закомментировал её:

#syslog = 0

После изменений необходимо перезапустить samba, можно так:

sudo service samba restart
sudo restart smbd
sudo restart nmbd

После этого предупреждение больше не появлялось.

Смотрите также:
Установка и настройка Samba в Linux

IPTables правила для Samba

Чтобы открыть доступ к Samba в IPTables необходимо добавить сразу четыре правила:

sudo iptables -A INPUT -p udp -m udp --dport 137 -j ACCEPT
sudo iptables -A INPUT -p udp -m udp --dport 138 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp --dport 139 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp --dport 445 -j ACCEPT

Чтобы открыть доступ только конкретной сети, например 192.168.1.0/24:

sudo iptables -A INPUT -s 192.168.1.0/24 -p udp -m udp --dport 137 -j ACCEPT
sudo iptables -A INPUT -s 192.168.1.0/24 -p udp -m udp --dport 138 -j ACCEPT
sudo iptables -A INPUT -s 192.168.1.0/24 -p tcp -m tcp --dport 139 -j ACCEPT
sudo iptables -A INPUT -s 192.168.1.0/24 -p tcp -m tcp --dport 445 -j ACCEPT

Чтобы удалить правило укажем ту же команду, заменив -A на -D, например:

sudo iptables -D INPUT -s 192.168.1.0/24 -p udp -m udp --dport 137 -j ACCEPT
sudo iptables -D INPUT -s 192.168.1.0/24 -p udp -m udp --dport 138 -j ACCEPT
sudo iptables -D INPUT -s 192.168.1.0/24 -p tcp -m tcp --dport 139 -j ACCEPT
sudo iptables -D INPUT -s 192.168.1.0/24 -p tcp -m tcp --dport 445 -j ACCEPT

Посмотреть список правил можно командой:

sudo iptables -nvL

Смотри также мои статьи:
Настройка IPTables
Установка и настройка Samba в Linux

Установка system-config-samba

system-config-samba — простое приложение для настройки samba с графическим интерфейсом.

Устанавливается командой:

sudo apt-get install system-config-samba

Запускается:

sudo system-config-samba

Позволяет добавлять общие папки, samba пользователей, назначать права папкам и т.д., все изменения сохраняются в конфигурационные файлы samba.

Смотрите также:
Установка и настройка Samba в Linux

Решение проблемы с автозапуском Samba в Linux

Установил и настроил однажды Samba на очередном Ubuntu Server 14.04.5 LTS как описывал в этой статье Установка и настройка Samba в Linux.

И после перезапуска системы не все запускалось, smbd и nmbd были запущены, если что их можно перезапустить так:

sudo restart smbd
sudo restart nmbd

Но подключиться к диску было нельзя и приходилось еще выполнять команду:

sudo service samba start

Чтобы samba автоматически запускалась при старте системы — выполним команду:

sudo update-rc.d samba defaults

Все.

Мониторинг Samba в Zabbix

Приведу пример наблюдения за количеством запущенных Samba процессов, а также создания триггера сообщающего когда нет запущенных процессов.
В системе с Samba должен быть установлен Zabbix-агент.
Смотрите мои популярные статьи о Zabbix.

Создадим шаблон, например с именем «Template Service Samba» и добавим в него следующий элемент данных:

Имя: Количество процессов nmbd
Тип: Zabbix агент
Ключ: proc.num[nmbd]

Аналогично создадим и для smbd.
Можно также создать элементы данных отображающие количество использованной памяти процессом, в этом случае ключ будет выглядеть так:

proc.mem[nmbd,,sum]

А также добавим для них графики.

Теперь добавим для каждого процесса триггер, чтобы видеть когда процесс не запущен:

Имя: Не работает nmbd на {HOST.NAME}
Выражение: {Template Service Samba:proc.num[nmbd].max(1)}<1

Все.

Просмотр и настройка общего доступа к файлам и папкам Windows из командной строки

Приведу пример некоторых команд для настройки общего доступа к ресурсам.

Просмотр ресурсов с открытым общим доступом:

net share

Удаление общего доступа к ресурсу:

net share <sharename> /delete

Открытие общего доступа к папке:

net share sharename=C:\dir

Пример отключения пользователей от общего ресурса:

net session \\pc1 /delete

Для закрытия открытого сетевого файла используется команда:

net file file_id /close

Пример предоставления прав пользователю на файл (N — не установлен, W — запись, C — изменение, F — полный доступ):

cacls file.txt /G User:w

Чтобы отменить доступ пользователю к общему ресурсу:

cacls /R User

Разрешаем одновременно подключаться к общему ресурсу максимум 5 пользователям:

net share sharename /users:5

Пример настройки кэширования из общего ресурса (manual/BranchCache/documents/programs/none):

net share myshare /cache:manual

Хочу заметить что при открытии общего доступа к ресурсу в брандмауэре должны быть открыты следующие порты: TCP 139, TCP 445, UDP 137, UDP 138.

Смотрите также мои статьи:
Установка и использование сетевого сканера nbtscan
Немного о вирусе шифровальщике Trojan.Encoder.12544 атаковавшего 27.06.2017