Я пытаюсь обмениваться файлами в домашней сети между двумя Linux-машинами: host-A - это Ubuntu 20.04, host-B - это Red Hat. Самба работала хорошо до дистр. обновление до 20.04. Теперь cifs монтируются с хоста B, который сообщает «Нет маршрута к хосту». Обычные и очевидные средства не работают. sudo ufw status
показывает набор разрешенных портов. Я могу ping host-A или ping ip host-A, но не могу соединиться с gigolo или другим протоколом smb. Потом попробовал настроить nfs - та же проблема. Тестирование соединения с хоста B:
nmap host-A
возвращает 22 tcp open ssh
, но когда я это делаю
ssh host-A:22
, я получаю «Не удалось разрешить хост ... Имя или служба неизвестны» То же с IP-адресом вместо имени хоста.
Я знаю, что smb или nfs не используют порт 22, приведенное выше служит только для демонстрации того, что что-то в брандмауэре не работает так, как я понимаю.
Я искал ответы, но пока это остается для меня загадкой. Должно быть, я что-то делаю не так или что-то упускаю. Мне кажется, что мой Ubuntu 20,04 (host-A) может реагировать только на ping в моей домашней сети (беспроводной, 192.168.0.0).
ИСПРАВЛЕНИЕ: мой тест с ssh был неправильно описан. Правильная команда была ssh host-A
, и host-A действительно распознал попытку подключения, зарегистрированный host-B. Затем ssh user @ host-A
действительно подключился после ввода пароля пользователя.Затем у меня был терминальный доступ к хосту A на машине хоста B. Тем не менее, ни samba, ни nfs обмен файлами не удалось, несмотря на то, что в ufw были разрешены порты. Та же ошибка, что и в моем исходном сообщении.
ДОПОЛНИТЕЛЬНАЯ информация на основе Ответа 1: Вывод команды host в локальной сети, нацеленной на Host-B
user@Host-A:~/Desktop$ host Host-B
Host Host-B not found: 2(SERVFAIL)
user@Host-A:~/Desktop$ host 192.168.nnn.mmm
mmm.nnn.168.192.in-addr.arpa domain name pointer Host-B.
user@Host-A:~/Desktop$
Если я использую vpn на Host-B, где он находится на mydomain.com
user@Host-A:~/Desktop$ host Host-B.mydomain.com
Host-B.mydomain.com has address xxx.pub.lic.ip
user@Host-A:~/Desktop$
Команда, связанная с Samba выходы:
user@Host-A:~/Desktop$ sudo smbstatus
[sudo] password for user:
Samba version 4.11.6-Ubuntu
PID Username Group Machine Protocol Version Encryption Signing
----------------------------------------------------------------------------------------------------------------------------------------
Service pid Machine Connected at Encryption Signing
---------------------------------------------------------------------------------------------
No locked files
user@Host-A:~/Desktop$ findsmb
*=DMB
+=LMB
IP ADDR NETBIOS NAME WORKGROUP/OS/VERSION
---------------------------------------------------------------------
user@Host-A:~/Desktop$ smbtree
user@Host-A:~/Desktop$
То же самое в Host-B [userB @ Host-B Desktop] $ smbstatus
Samba version 3.6.23-53.el6_10
PID Username Group Machine
-------------------------------------------------------------------
Service pid machine Connected at
-------------------------------------------------------
No locked files
[userB@Host-B Desktop]$ findsmb
*=DMB
+=LMB
IP ADDR NETBIOS NAME WORKGROUP/OS/VERSION
---------------------------------------------------------------------
192.168.nnn.mmm CENTOS [AB] [Unix] [Samba 3.6.23-53.el6_10]
[userB@Host-B Desktop]$ smbtree
Enter userB's password:
[userB@Host-B Desktop]$
Дополнительная информация: Очевидно, Host-B находится в самбе, а Host-A - нет . Однако в Host-A (машина Ubuntu) Browse Network в Thunar действительно отображает собственное имя netbios, определенное в smb.conf. Однако команда findmb не может найти себя.
Это потому, что Canonical отключила SMB1 из соображений безопасности. SMB2 / SMB3 все еще работает. Команда
smbtree
также больше не работает.
Либо ...
Используйте // server / pathname или // IP / pathname при использовании Connect to Server , или в вашем / etc / fstab
или
Edit /etc/samba/smb.conf, добавьте его в раздел Network и перезапустите smbd и nmbd ...
# allow SMB1
client min protocol = NT1
server min protocol = NT1
name resolve order = bcast host lmhosts wins
Используйте команду testparm
, чтобы убедиться, что ваш файл smb.conf правильный.