FreeBSD에서 smbfs를 마운트하기 위한 올바른 구문은 무엇입니까?

FreeBSD에서 smbfs를 마운트하기 위한 올바른 구문은 무엇입니까?

두 개의 FreeBSD 11.1 서버가 인터넷에 연결되어 있고 둘 다 Samba 4.6.x가 설치되어 있습니다. Samba에는 문제가 없으며 모든 Windows 클라이언트에서 잘 탐색되지만 CLI를 사용하여 한 서버에서 다른 서버로(또는 실제로 서버 자체에서) Samba를 설치하는 구문을 찾을 수 없는 것 같습니다.

두 서버 모두 동일한 원격 사용자 + 비밀번호를 사용하여 Samba 공유에 액세스합니다. 서버는 독립적이며 인증/권한을 위해 자체 사용자/그룹을 사용합니다.

일하다:

smbclient \\\\servername\\myfiles -U servername\\remoteuser
smbclient '\\servername\myfiles' -U servername\\remoteuser
  (they're equivalent)

작동하지 않습니다 (에서 발췌역사):

mount_smbfs -I serverIP //remoteuser@servername/myfiles ~/mountpoint    
mount_smbfs -I servername //remoteuser@servername/myfiles ~/mountpoint    
smbutil -v login //remoteuser@servername/myfiles    
mount_smbfs -I smbclient \\\\servername\\myfiles -U servername\\remoteuser    
mount_smbfs -U servername\\remoteuser \\\\servername\\Usr_files ~/mountpoint    
mount_smbfs -U servername\\remoteuser //remoteuser@servername/myfiles ~/mountpoint    
mount_smbfs //remoteuser@servername/myfiles ~/mountpoint    
mount_smbfs //\\servername\\remoteuser@servername/myfiles ~/mountpoint    
mount_smbfs //\\\\servername\\remoteuser@servername/myfiles ~/mountpoint    
mount_smbfs //servername/remoteuser@servername/myfiles ~/mountpoint    
mount_smbfs -I serverIP //servername/remoteuser@servername/myfiles ~/mountpoint    
mount_smbfs //[email protected]/myfiles ~/mountpoint    
mount_smbfs //remoteuser@servername/myfiles ~/mountpoint    
mount -t smbfs //remoteuser:remotepassword@servername/myfiles ~/mountpoint    
mount -t smbfs //remoteuser@servername/myfiles ~/mountpoint    
mount -t smbfs \\\\remoteuser@servername\\myfiles ~/mountpoint    
mount -t smbfs remoteuser@servername/myfiles ~/mountpoint    
mount -t smbfs //remoteuser@servername/myfiles ~/mountpoint    
mount -t smbfs //remoteuser@serverIP/myfiles ~/mountpoint    
mount_smbfs -I servername //remoteuser@servername/myfiles ~/mountpoint    
mount_smbfs -I servername -U \\\\servername\\remoteuser //remoteuser@servername/myfiles ~/mountpoint    
mount_smbfs -I servername -U \\\\servername\\remoteuser //servername/myfiles ~/mountpoint    

당신은 아이디어를 얻습니다 :) 원격 서버의 smbd 로그에서 예상되는 내용과 내가 제공하는 내용에 대한 문제 해결을 시도했지만 여전히 필요한 명령을 찾을 수 없는 것 같습니다.

오류 메시지는 "권한이 거부되었습니다"이거나 원격 로그에 NT_STATUS_NO_SUCH_USER("사용자/시스템 이름에 구문 오류가 있습니다."), NT_STATUS_NOT_FOUND("공유에 구문 또는 기타 오류가 있습니다.") 및 NT_STATUS_ACCESS_DENIED( "사용자/시스템 이름에 구문 오류가 있습니다."). 위의 첫 번째 명령과 마찬가지로암사슴작동하며 실제 권한, 작업 리소스 또는 구성 문제가 아니라 잘못된 구문/매개 변수를 사용하는 것이 문제라는 것이 분명합니다.

Samba의 CLI 구문에 대해 내가 갖고 있는 근본적인 오해는 무엇이며, 올바른 명령은 무엇입니까?

답변1

mount_smbfs는 smbv2 이상에서는 제대로 작동하지 않습니다. 내가 찾은 유일한 해결책은 smb.conf의 전역 섹션에서 삼바 서버의 일부 설정을 변경하는 것이었습니다.

    client ntlmv2 auth = no
    ntlm auth = yes

위의 설정을 통해 mount_smbfs 명령을 사용하여 FreeBSD 호스트에 삼바 공유를 마운트하고 공유에 쓸 수 있었습니다.

mount_smbfs -I 10.0.4.8 -U someuser //someuser@samba4/someshare /sambad01

삼바 서버의 test_parm은 다음을 보여줍니다.

root@samba:/ # testparm
Load smb config files from /usr/local/etc/smb4.conf
Loaded services file OK.
Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

# Global parameters
[global]
        client NTLMv2 auth = No
        log file = /var/log/samba4/%m
        map to guest = Bad User
        netbios name = SAMBA4
        ntlm auth = ntlmv1-permitted
        idmap config * : backend = tdb

smbstatus(mount_smbfs의 경우 NT1, Windows 호스트의 경우 smb3_11):

root@samba:/ # smbstatus

Samba version 4.10.11
PID     Username     Group        Machine                                   Protocol Version  Encryption           Signing
----------------------------------------------------------------------------------------------------------------------------------------
1200    someuser   someuser   d04 (ipv4:10.0.4.4:43318)                 NT1               -                    -
13014   someuser   someuser   10.10.10.14 (ipv4:10.10.10.14:61017)      SMB3_11           -                    partial(AES-128-CMAC)

답변2

... 효율적인

mount_smbfs -I 10.10.10.10 -U someuser -W someworkgroup //[email protected]/somesharename /mnt/somemountname

관련 정보