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
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.