LINUX.ORG.RU
Форум — Admin  

Не могу настроить общий доступ

 


0

1

Не могу настроить доступ к ресурсам сервера Fedora 27 Server. система установлена без графического окружения, Samba установлена и настроена, привожу файл конфигурации:

# 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 = WORKGROUP
	server string = File Server
	netbios name = nikiv64
	security = user

	passdb backend = tdbsam

	printing = cups
	printcap name = cups
	load printers = yes
	cups options = raw
	log file = /var/log/samba/log.%m
	max log size = 50
	
	encrypt passwords = yes
	map to guest = bad user
	security = user
	dns proxy = no
	case sensitive = auto
	dos charset = 866
	unix charset = UTF-8
	passdb backend = tdbsam

	client ntlmv2 auth = yes

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

[arhiv]
	comment = My Archives
	path = /home/user/arhiv
	force user = user
	force group = user
	writable = yes
	guest ok = yes
	create mask = 0777
	directory mask = 0777

[user]
 comment = My Files
 path = /home/user/user
 force user = user
 force group = user
 writable = yes
 guest ok = yes
 create mask = 0777
 directory mask = 0777

[video]
comment = My Video
path = /home/user/video
force user = user
force group = user
writable = yes
guest ok = yes
create mask = 0777
directory mask = 0777

[work]
comment = To Work
path = /home/user/work
force user = user
force group = user
writable = yes
guest ok = yes
create mask = 0777
directory mask = 0777

[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 = @printadmin root
force group = @printadmin
create mask = 0664
directory mask = 0775

Команда testparm никаких ошибок не выявляет, привожу отчёт:

# Global parameters
[global]
	dns proxy = No
	dos charset = 866
	log file = /var/log/samba/log.%m
	map to guest = Bad User
	max log size = 50
	printcap name = cups
	security = USER
	server string = File Server
	idmap config * : backend = tdb
	cups options = raw

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

[arhiv]
	comment = My Archives
	create mask = 0777
	directory mask = 0777
	force group = user
	force user = user
	guest ok = Yes
	path = /home/user/arhiv
	read only = No

[user]
	comment = My Files
	create mask = 0777
	directory mask = 0777
	force group = user
	force user = user
	guest ok = Yes
	path = /home/user/user
	read only = No

[video]
	comment = My Video
	create mask = 0777
	directory mask = 0777
	force group = user
	force user = user
	guest ok = Yes
	path = /home/user/video
	read only = No

[work]
	comment = To Work
	create mask = 0777
	directory mask = 0777
	force group = user
	force user = user
	guest ok = Yes
	path = /home/user/work
	read only = No

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

[print$]
	comment = Printer Drivers
	create mask = 0664
	directory mask = 0775
	force group = @printadmin
	path = /var/lib/samba/drivers
	write list = @printadmin root

Настроил Firewall в соответствии с рекомендациями в одном из блогов, отчёт работы команды getsebool -a | grep -E «smb|samba»

samba_create_home_dirs --> off
samba_domain_controller --> off
samba_enable_home_dirs --> on
samba_export_all_ro --> on
samba_export_all_rw --> on
samba_load_libgfapi --> off
samba_portmapper --> off
samba_run_unconfined --> off
samba_share_fusefs --> on
samba_share_nfs --> off
sanlock_use_samba --> off
smbd_anon_write --> on
tmpreaper_use_samba --> off
use_samba_home_dirs --> on
virt_use_samba --> on

Опцию allow_smbd_anon_write, рекомендованную в том же блоге, включить не удалось.

В результате сервер нормально управляется по сети удалённо и из Windows, и из Linux Debian, обновляется из интернет, устанавливаются программы из репозиториев, однако сам сервер и его ресурсы не видны в сети ни из-под Windows, ни из-под Linux, хотя прекрасно пингуется, привожу результат работы команды ping из Windows:

Обмен пакетами с 192.168.0.3 по с 32 байтами данных:
Ответ от 192.168.0.3: число байт=32 время<1мс TTL=64
Ответ от 192.168.0.3: число байт=32 время<1мс TTL=64
Ответ от 192.168.0.3: число байт=32 время<1мс TTL=64
Ответ от 192.168.0.3: число байт=32 время<1мс TTL=64

Статистика Ping для 192.168.0.3:
Пакетов: отправлено = 4, получено = 4, потеряно = 0
(0% потерь)
Приблизительное время приема-передачи в мс:
Минимальное = 0мсек, Максимальное = 0 мсек, Среднее = 0 мсек

Мне необходимо настроить доступ из сети к дискам сервера, в моём случае они примонтированы, как /home/user/arhiv, /home/user/user, /home/user/video, /home/user/work.

Буду очень признателен за любую помощь.

★

Последнее исправление: beastie (всего исправлений: 1)

Закрывайте теги, неудобно читать текст с горизонтальной прокруткой.

По теме. Самба вобще запустилась? Список шар показывает в сетевом окружении? А то не понятно, то ли у вас вобще нет доступа к самбе на сервере, то ли у самбы нет доступа к разделам из-за SeLinux'а.

И не знаю как сейчас, но раньше нужно было ставить определённый контекст (один из контекстов) на файлы/каталоги, иначе SeLinux не давал доступ для samba, может это ваш случай, раз шары на отдельных ФС.

mky ★★★★★
()
Ответ на: комментарий от mky

Совершенно случайно на одном из англоязычных сайтах нашёл причину. Оказалось, что Самбу блокирует Файрвол. Настроил его, согласно инструкциям и доступ к дискам сервера появился. Осталась одна проблема, нет доступа к Web интерфейсу qbittorrent-nox. Торрент клиент запущен, команда: systemctl status qbittorrent-nox сообщает, что торрент клиент запущен и активен, однако подключиться к нему невозможно, порт 8080 открыт. Подозреваю, что торрент клиент не разрешён Файрволом. Как дать разрешение для qbittorrent-nox не нашёл.

nialiv ★
() автор топика
Ответ на: комментарий от nialiv

Сначала смотрите, что порт 8080 действительно слушается процессом qbittorrent-nox (по выводу команды ″ss -t -l -n -p″ или ″netstat″ с этими же аргументами). Думаю в выводе этой команды разберётесь. Если там нет порта 8080, то нужно копать qbittorrent-nox.

Если есть, пробуете с сервера подключится к этому порту ″telnet localhost 8080″. Если телнет пишет, что соединение установлено, это хорошо, можно пробовать подключаться по сети...

mky ★★★★★
()
Ответ на: комментарий от mky

Команда ss -t -l -p выводит довольно большой список, однако строки с упоминанием qbittorrent-nox и порта 8080 имеются:

tcp LISTEN 0 50 *:8080 *:* users:((«qbittorrent-nox»,pid=775,fd=21)) u_str LISTEN 0 50 /var/tmp/qtsingleapp-qBitto-980-3e9 24987 * 0 users:((«qbittorrent-nox»,pid=775,fd=6))

udp UNCONN 0 0 0.0.0.0:52159 0.0.0.0:* users:((«qbittorrent-nox»,pid=775,fd=23))

udp UNCONN 0 0 0.0.0.0:8999 0.0.0.0:* users:((«qbittorrent-nox»,pid=775,fd=19))

udp UNCONN 0 0 127.0.0.1:56193 0.0.0.0:* users:((«qbittorrent-nox»,pid=775,fd=16))

udp UNCONN 0 0 [::]:8999 [::]:* users:((«qbittorrent-nox»,pid=775,fd=20))

tcp LISTEN 0 5 0.0.0.0:8999 0.0.0.0:* users:((«qbittorrent-nox»,pid=775,fd=18))

tcp LISTEN 0 50 *:8080 *:* users:((«qbittorrent-nox»,pid=775,fd=21))

tcp LISTEN 0 5 [::]:8999 [::]:* users:((«qbittorrent-nox»,pid=775,fd=17))

Открыл порты 8999, 52159 и 56193 командой, iptables -A INPUT -p udp -–sport номер порта -j ACCEPT. Сразу, после открытия порта 8999 он появляется в списке открытых портов, (команда, # iptables -vnL), однако после перезагрузки системы, он исчезает в списке открытых портов.

Сохранить изменения в iptables не могу, если использую команду «service iptables save», получаю ответ, «service поддерживает только базовые действия LSB (start, stop, restart, try-restart, reload, force-reload, status). Для выполнения других действий следует обратиться к помощи systemctl.», если использую команду " systemctl enable iptables.service", получаю ответ, «Failed to enable unit: Unit file iptables.service does not exist». Других способов сохранения iptables не нашёл.

Команда # telnet localhost 8080 даёт ответ:

[root@nikiv64 sbin]# telnet localhost 8080 Trying ::1... Connected to localhost. Escape character is '^]'. Connection closed by foreign host.

Стало быть соединения нет. Что дальше делать, не знаю.

nialiv ★
() автор топика
Ответ на: комментарий от nialiv

iptables -A INPUT -p udp -–sport номер порта -j ACCEPT

sport это исходящий порт клиента соединяющегося к вам. в вашем случае надо dport

anc ★★★★★
()
Ответ на: комментарий от nialiv

однако после перезагрузки системы, он исчезает в списке открытых портов

У тебя файерволом кто сидит? firewalld или iptables? сделай systemctl status firewalld и systemctl status iptables.

Если ничего не менял, то firewalld. Читай: https://fedoraproject.org/wiki/FirewallD/ru

Если менял на iptables, то в /etc/sysconfig/iptables правила свои добавь.

mogwai ★★★★★
()
Ответ на: комментарий от nialiv

Сохранить изменения в iptables не могу, если использую команду service iptables save

1) В федоре не апстарт, а системд. Для управления демонами используй systemctl
2) Правильно говорит, ибо не её это дело, сохранять конфиг iptables

Failed to enable unit: Unit file iptables.service does not exist

У тебя firewalld. Либо учись пользоваться им. …либо делай

sudo dnf install iptables-services
sudo systemctl stop firewalld
sudo systemctl disable firewalld
sudo systemctl mask firewalld
sudo systemctl enable iptables --now
и учись пользоваться iptables

mogwai ★★★★★
()

И да, странная логика.. Одновременно шаришь ~$user/ и ~user/, ~video/… Сразу бардак какой-то получается.

arhiv

Вбей, хотя бы, в гугл слово, что ли…

mogwai ★★★★★
()
Последнее исправление: mogwai (всего исправлений: 1)
Ответ на: комментарий от mogwai

Я пользуюсь yandex поиском, может стоит попробовать в Google поискать. В связи с тем, что найти, как настроить Firewall не смог, остановил и отключил его, установил iptables, настроил работу Samba и ресурсы сервера стали видны в сети и доступны. Что же касается общих ресурсов, то у меня три физических диска и я просто не знаю, как ещё их можно по другому дать к ним доступ. Проблема осталась с qbittorrent-nox, он запускается и работает, однако невозможно подключиться к нему по Web итнтерфейсу.

nialiv ★
() автор топика
Ответ на: комментарий от nialiv

Я пользуюсь yandex

Я тебе о грамматической ошибке.

у меня три физических диска

Хоть сто три. Если ты уже расшраил хомяки, зачем часть из них явно другим ресурсом шарить. Подозреваю, что не потому что «так надо», а по незнанию. Потому и указал на этот факт.

mogwai ★★★★★
()
Ответ на: комментарий от mogwai

Я действительно ещё многого не знаю в Linux, так как более четверти века работал в DOS и Windows. Если я правильно Вас понял, надо сделать общий доступ к каталогу, например /home/share/, а физические диски примонтировать, к вложенным каталогам в каталоге /home/share/.

nialiv ★
() автор топика
Ответ на: комментарий от nialiv

Зависит от того, что и как надо расшарить. Если всё это документы одного пользователя и цель дать ему доступ, то да. Если цель сделать разных ресурсов по типу контента, например, то как у тебя. Связи между тем что и куда подмонтировано нет никакой.

Посмотри на конфиг свой. И /home/user расшарено для user, и /home/user/video, /home/user/user для всех расшарено. Зачем? Назначение /home/user/user тоже не ясно — потому что не получилось /home/user расшарить? Или как? С принтерами тоже две шары зачем? И по остальным шарам так же.

Оно точно так и задумано, или просто куски из разных манов понатасканы? Может и задумано, но со стороны кажется понатасканым.

mogwai ★★★★★
()
Ответ на: комментарий от mogwai

После отключения firewall и настройки iptables пропал доступ к общим ресурсам сервера. Наверное придётся восстановить систему с образа, в котором работал firewall и продолжать искать решение проблемы с qbittorrent-nox. У меня домашний сервер, его назначение, скачивать из интернет торренты и раздавать файлы по домашней локальной сети, поэтому я даю доступ 777 для всех ресурсов сети, частности я смотрю видео и слушаю музыку с сервера на домашнем кинотеатре. В принципе защищать данные не от кого, да и нечего. Что же касается общего доступа к принтерам, то их просто нет на сервере, «руки не дошли» удалить эти строки из конфига (они там были по умолчанию). В общем-то все задачи решил, осталась главная проблема, нет доступа к qbittorrent-nox даже с сервера. Нигде не могу найти, как его настроить, желательно с использованием firewall.

nialiv ★
() автор топика
Ответ на: комментарий от mogwai

Нашёл способ настройки Firewall, всё получилось, однако qbittorrent-nox не скачивает файлы из интернет, в графе «Status» сообщение «Error». Сначала думал, что это связано с ограничениями провайдера, или работой роутера (он последнее время хулиганит) однако в Windows qbittorrent скачивает. Порты 8080 и 8999 открыты. Web интерфейс запускается, хотя автоматически из указанной папки торренты не запускаются, более того путь к указанной папке не сохраняется. Команда ″ss -t -l -n -p″ выводит непонятный мне отчёт, привожу:

State       Recv-Q Send-Q Local Address:Port               Peer Address:Port              
LISTEN      0      50     0.0.0.0:139                0.0.0.0:*                   users:(("smbd",pid=1046,fd=40))
LISTEN      0      32     192.168.122.1:53                 0.0.0.0:*                   users:(("dnsmasq",pid=1024,fd=6))
LISTEN      0      128    0.0.0.0:22                 0.0.0.0:*                   users:(("sshd",pid=698,fd=5))
LISTEN      0      50     0.0.0.0:445                0.0.0.0:*                   users:(("smbd",pid=1046,fd=39))
LISTEN      0      5      0.0.0.0:8999               0.0.0.0:*                   users:(("qbittorrent-nox",pid=810,fd=18))
LISTEN      0      50        [::]:139                   [::]:*                   users:(("smbd",pid=1046,fd=38))
LISTEN      0      50           *:8080                     *:*                   users:(("qbittorrent-nox",pid=810,fd=21))
LISTEN      0      128       [::]:22                    [::]:*                   users:(("sshd",pid=698,fd=7))
LISTEN      0      50        [::]:445                   [::]:*                   users:(("smbd",pid=1046,fd=37))
LISTEN      0      128          *:9090                     *:*                   users:(("systemd",pid=1,fd=47))
LISTEN      0      5         [::]:8999                  [::]:*                   users:(("qbittorrent-nox",pid=810,fd=17))

Непонятно, откуда взялся адрес 192.168.122.1:53, у меня таких никогда не было.
Команда "telnet localhost 8080" выводит сообщение "Connection closed by foreign host." (Соединение закрыто 
внешним хостом). Движение вперёд есть но проблема не решена.
nialiv ★
() автор топика
Ответ на: комментарий от nialiv

192.168.122.1:53

Твой комп, эта виртуальная подсеть по дефолту создаётся для виртуалок. Посмотри вывод ip addr, он будет на интерфейсе virbr0

Про qbittorrent-nox не скажу, не использовал.

mogwai ★★★★★
()
Ответ на: комментарий от mogwai

Спасибо, с адресом понятно. Сеть работает прекрасно. А про qbittorrent буду искать дальше.

nialiv ★
() автор топика
Вы не можете добавлять комментарии в эту тему: топик перемещен в архив.