Come montare la condivisione ZTE ZXHN H267N con samba in Linux?


1

Mi è stato dato un ZTE ZXHN H267N router che consente di esportare un dispositivo di archiviazione USB collegato come condivisione samba.

Come puoi vedere nello screenshot qui sotto, non ci sono molte opzioni di configurazione, ed è piuttosto semplice.

samba configuration

Da Windows posso aprire la condivisione semplicemente accedendo \\192.168.1.1: Posso sfogliarlo, leggere file, scrivere / copiare file in esso ... quindi tutto sembra funzionare come previsto.

Ma da Linux non riesco a montarlo in modalità lettura-scrittura. In realtà posso montarlo, ma non riesco a leggere né scrivere nulla. Ho provato qualsiasi combinazione logica di opzioni di mount senza alcun risultato.

root@host:/tmp# mount --verbose -t cifs -o rw,guest,file_mode=0777,dir_mode=0777 //192.168.1.1/samba ./asd
mount.cifs kernel mount options: ip=192.168.1.1,unc=\\192.168.1.1\samba,guest,file_mode=0777,dir_mode=0777,user=,prefixpath=,pass=********
root@host:/tmp# cd asd
root@host:/tmp/asd# LANG=C touch a
touch: cannot touch `a': Permission denied
root@host:/tmp/asd#

Nell'esempio sopra, la condivisione è montata, e a non esiste Inoltre, se corro lsattr su un file che esiste già, ottengo il seguente:

root@host:/tmp/asd# LANG=C lsattr existingfile
lsattr: Permission denied While reading flags on existingfile

Apparentemente non ho né leggi né permessi di scrittura. Ho provato altre opzioni come:

  • specificando uid e gid, a partire dal 1 a 10000.
  • specificando sec a qualsiasi opzione disponibile.
  • specificando user ad un utente locale.
  • Impostazione di un utente e una password e cercando di montarlo non come guest, ma specificando username e password anziché.
  • Alcune altre opzioni e combinazioni di quanto sopra.

Non riesco a capire quali altre opzioni dovrebbero essere specificate per montare questa condivisione come rw. La documentazione del router non dice nulla su quali opzioni dovrebbero essere specificate per il corretto montaggio.

Qualcuno è riuscito a montare una condivisione da questo o un router simile come R / W?

Qualsiasi suggerimento è ben accetto.

--- EDIT 1 ---

Come di @gmelis I suggerimenti, ho messo a tcpdump ascoltatore sulla macchina appena prima del montaggio per vedere cosa sta succedendo. Il filtro che ho provato è stato: -i eth0 -n host 192.168.1.1e il risultato è:

17:19:54.175169 IP 192.168.1.200.40703 > 192.168.1.1.445: Flags [S], seq 1716673820, win 29200, options [mss 1460,sackOK,TS val 45819160 ecr 0,nop,wscale 6], length 0
17:19:54.182221 IP 192.168.1.1.445 > 192.168.1.200.40703: Flags [R.], seq 0, ack 1716673821, win 0, length 0
17:19:54.186283 IP 192.168.1.200.42696 > 192.168.1.1.139: Flags [S], seq 170856558, win 29200, options [mss 1460,sackOK,TS val 45819161 ecr 0,nop,wscale 6], length 0
17:19:54.194053 IP 192.168.1.1.139 > 192.168.1.200.42696: Flags [S.], seq 2811302286, ack 170856559, win 14480, options [mss 1460,sackOK,TS val 50456624 ecr 45819161,nop,wscale 3], length 0
17:19:54.194931 IP 192.168.1.200.42696 > 192.168.1.1.139: Flags [.], ack 1, win 457, options [nop,nop,TS val 45819162 ecr 50456624], length 0
17:19:54.196654 IP 192.168.1.200.42696 > 192.168.1.1.139: Flags [P.], seq 1:73, ack 1, win 457, options [nop,nop,TS val 45819162 ecr 50456624], length 72 NBT Session Packet: Session Request
17:19:54.202629 IP 192.168.1.1.139 > 192.168.1.200.42696: Flags [.], ack 73, win 1810, options [nop,nop,TS val 50456625 ecr 45819162], length 0
17:19:54.202992 IP 192.168.1.200.42696 > 192.168.1.1.139: Flags [P.], seq 73:155, ack 1, win 457, options [nop,nop,TS val 45819163 ecr 50456625], length 82 NBT Session Packet: Session Message
17:19:54.209332 IP 192.168.1.1.139 > 192.168.1.200.42696: Flags [.], ack 155, win 1810, options [nop,nop,TS val 50456626 ecr 45819163], length 0
17:19:54.209336 IP 192.168.1.1.139 > 192.168.1.200.42696: Flags [P.], seq 1:5, ack 155, win 1810, options [nop,nop,TS val 50456626 ecr 45819163], length 4 NBT Session Packet: Session Granted
17:19:54.212933 IP 192.168.1.200.42696 > 192.168.1.1.139: Flags [.], ack 5, win 457, options [nop,nop,TS val 45819164 ecr 50456626], length 0
17:19:54.217108 IP 192.168.1.1.139 > 192.168.1.200.42696: Flags [P.], seq 5:86, ack 155, win 1810, options [nop,nop,TS val 50456627 ecr 45819164], length 81 NBT Session Packet: Session Message
17:19:54.219993 IP 192.168.1.200.42696 > 192.168.1.1.139: Flags [.], ack 86, win 457, options [nop,nop,TS val 45819165 ecr 50456627], length 0
17:19:54.220637 IP 192.168.1.200.42696 > 192.168.1.1.139: Flags [P.], seq 155:409, ack 86, win 457, options [nop,nop,TS val 45819165 ecr 50456627], length 254 NBT Session Packet: Session Message
17:19:54.231137 IP 192.168.1.1.139 > 192.168.1.200.42696: Flags [P.], seq 86:162, ack 409, win 1944, options [nop,nop,TS val 50456628 ecr 45819165], length 76 NBT Session Packet: Session Message
17:19:54.232949 IP 192.168.1.200.42696 > 192.168.1.1.139: Flags [P.], seq 409:527, ack 162, win 457, options [nop,nop,TS val 45819166 ecr 50456628], length 118 NBT Session Packet: Session Message
17:19:54.259669 IP 192.168.1.1.139 > 192.168.1.200.42696: Flags [P.], seq 162:213, ack 527, win 1944, options [nop,nop,TS val 50456631 ecr 45819166], length 51 NBT Session Packet: Session Message
17:19:54.260757 IP 192.168.1.200.42696 > 192.168.1.1.139: Flags [P.], seq 527:599, ack 213, win 457, options [nop,nop,TS val 45819169 ecr 50456631], length 72 NBT Session Packet: Session Message
17:19:54.267619 IP 192.168.1.1.139 > 192.168.1.200.42696: Flags [P.], seq 213:281, ack 599, win 1944, options [nop,nop,TS val 50456632 ecr 45819169], length 68 NBT Session Packet: Session Message
17:19:54.268189 IP 192.168.1.200.42696 > 192.168.1.1.139: Flags [P.], seq 599:671, ack 281, win 457, options [nop,nop,TS val 45819169 ecr 50456632], length 72 NBT Session Packet: Session Message
17:19:54.273042 IP 192.168.1.1.139 > 192.168.1.200.42696: Flags [P.], seq 281:363, ack 671, win 1944, options [nop,nop,TS val 50456632 ecr 45819169], length 82 NBT Session Packet: Session Message
17:19:54.273609 IP 192.168.1.200.42696 > 192.168.1.1.139: Flags [P.], seq 671:763, ack 363, win 457, options [nop,nop,TS val 45819170 ecr 50456632], length 92 NBT Session Packet: Session Message
17:19:54.277267 IP 192.168.1.1.139 > 192.168.1.200.42696: Flags [P.], seq 363:402, ack 763, win 1944, options [nop,nop,TS val 50456633 ecr 45819170], length 39 NBT Session Packet: Session Message
17:19:54.278342 IP 192.168.1.200.42696 > 192.168.1.1.139: Flags [P.], seq 763:841, ack 402, win 457, options [nop,nop,TS val 45819170 ecr 50456633], length 78 NBT Session Packet: Session Message
17:19:54.282561 IP 192.168.1.1.139 > 192.168.1.200.42696: Flags [P.], seq 402:565, ack 841, win 1944, options [nop,nop,TS val 50456633 ecr 45819170], length 163 NBT Session Packet: Session Message
17:19:54.283691 IP 192.168.1.200.42696 > 192.168.1.1.139: Flags [P.], seq 841:919, ack 565, win 473, options [nop,nop,TS val 45819171 ecr 50456633], length 78 NBT Session Packet: Session Message
17:19:54.287372 IP 192.168.1.1.139 > 192.168.1.200.42696: Flags [P.], seq 565:728, ack 919, win 1944, options [nop,nop,TS val 50456634 ecr 45819171], length 163 NBT Session Packet: Session Message
17:19:54.287949 IP 192.168.1.200.42696 > 192.168.1.1.139: Flags [P.], seq 919:997, ack 728, win 490, options [nop,nop,TS val 45819171 ecr 50456634], length 78 NBT Session Packet: Session Message
17:19:54.292238 IP 192.168.1.1.139 > 192.168.1.200.42696: Flags [P.], seq 728:830, ack 997, win 1944, options [nop,nop,TS val 50456634 ecr 45819171], length 102 NBT Session Packet: Session Message
17:19:54.329627 IP 192.168.1.200.42696 > 192.168.1.1.139: Flags [.], ack 830, win 490, options [nop,nop,TS val 45819176 ecr 50456634], length 0

Da quell'uscita concludo che c'è un tentativo iniziale di stabilire una connessione sul 445 porta che viene resettata dall'host remoto, quindi la prossima porta provata è 139 che sembra avere successo

Sono anche riuscito a correre a ngrep comando con un filtro equivalente e il risultato è:

#
G 192.168.1.1 -> 224.0.0.1 17:100
  ..................                                                                                                                                                  
##
T 192.168.1.1:445 -> 192.168.1.200:40822 [AR]
  ......                                                                                                                                                              
####
T 192.168.1.200:42815 -> 192.168.1.1:139 [AP]
  ...D CKFDENECFDEFFCFGEFFCCACACACACACA. FCFAEJCOEEEFFGEFEMFDCOEFFDCACAAA.                                                                                            
##
T 192.168.1.200:42815 -> 192.168.1.1:139 [AP]
  ...N.SMBr......................~.....+..LM1.2X002..LANMAN2.1..NT LM 0.12..POSIX 2.                                                                                  
##
T 192.168.1.1:139 -> 192.168.1.200:42815 [AP]
  ....                                                                                                                                                                
##
T 192.168.1.1:139 -> 192.168.1.200:42815 [AP]
  ...M.SMBr......................~.....................Z...................N?...zTR                                                                                   
##
T 192.168.1.200:42815 -> 192.168.1.1:139 [AP]
  .....SMBs......................~.........T@..........F............D...+.Pm..0.a\...........'E....Tb.....F........W.O.R.K.G.R.O.U.P........W.O.R.K.G.R.O.U.P...L.i.n.
  u.x. .v.e.r.s.i.o.n. .4...1...1.9.+...C.I.F.S. .V.F.S. .C.l.i.e.n.t. .f.o.r. .L.i.n.u.x...                                                                          
##
T 192.168.1.1:139 -> 192.168.1.200:42815 [AP]
  ...H.SMBs......................~d............Unix.Samba 1.9.16p10.WORKGROUP.                                                                                        
#
T 192.168.1.200:42815 -> 192.168.1.1:139 [AP]
  ...r.SMBu......................~d............G......?....{v....H...a....\.\.1.9.2...1.6.8...1...1.\.s.a.m.b.a...?????.                                              
##
T 192.168.1.1:139 -> 192.168.1.200:42815 [AP]
  .../.SMBu...................'..~d............A:....                                                                                                                 
#
T 192.168.1.200:42815 -> 192.168.1.1:139 [AP]
  ...D.SMB2...................'..~d........................B..............                                                                                            
##
T 192.168.1.1:139 -> 192.168.1.200:42815 [AP]
  ...@.SMB2.....A.............'..~d..................8................                                                                                                
#
T 192.168.1.200:42815 -> 192.168.1.1:139 [AP]
  ...D.SMB2...................'..~d........................B..............                                                                                            
#
T 192.168.1.1:139 -> 192.168.1.200:42815 [AP]
  ...N.SMB2.....A.............'..~d..................8.........@..........S.a.m.b.a.                                                                                  
#
T 192.168.1.200:42815 -> 192.168.1.1:139 [AP]
  ...X.SMBu......................~d............-..\.\.1.9.2...1.6.8...1...1.\.I.P.C.$...?????.                                                                        
#
T 192.168.1.1:139 -> 192.168.1.200:42815 [AP]
  ...#.SMBu......................~d......                                                                                                                             
#
[...]

Altre cose provate:

  • Ho provato a montare il punto come uid=nobody e gid=nogroup, con gli stessi risultati.
  • io corro chmod -R 777 sul punto di montaggio, non ha fatto nessuna differenza.
  • Una cosa interessante che ho scoperto: se corro touch Ottengo un errore di autorizzazione negato, ma se provo a eseguire mkdir Ho sempre un mkdir: cannot create directory blah ': File esiste` messaggio, non importa quale sia il nome della directory che ho specificato (e, naturalmente, non esiste).

--- EDIT 2 ---

Ho anche provato a correre smbclient -L //192.168.1.1 (senza un utente) e mi chiede una password che non ho. Se inserisco qualsiasi valore come password, vengono visualizzati gli errori sopra riportati ( NT_STATUS_ACCESS_DENIED ).

Ma ho anche provato ad attivare la sicurezza nel pannello del router (impostazione Anonymous a noe impostando un nome utente e una password) ed ecco cosa ho scoperto:

1) Se corro solo: smbclient -L //192.168.1.1, Mi viene richiesta una password Se ho appena colpito accedere , Ottengo questo risultato:

# smbclient -L //192.168.1.1
Enter root's password: 
Server does not support EXTENDED_SECURITY  but 'client use spnego = yes and 'client ntlmv2 auth = yes'
Anonymous login successful
OS=[楮x慓扭⁡⸱⸹㘱ㅰ0佗䭒則問P] Server=[]

    Sharename       Type      Comment
    ---------       ----      -------
    samba           Disk      samba share dir
    IPC$            IPC       IPC Service (Samba Server)
Server does not support EXTENDED_SECURITY  but 'client use spnego = yes and 'client ntlmv2 auth = yes'
Anonymous login successful
OS=[楮x慓扭⁡⸱⸹㘱ㅰ0佗䭒則問P] Server=[]

    Server               Comment
    ---------            -------

    Workgroup            Master
    ---------            -------
    WORKGROUP            SMBSHARE

2) Se inserisco le credenziali 'corrette', ottengo questo risultato:

# smbclient -L //192.168.1.1 -U smbshare
Enter smbshare's password: 
Server does not support EXTENDED_SECURITY  but 'client use spnego = yes and 'client ntlmv2 auth = yes'
session setup failed: SUCCESS - 0

Sto iniziando a pensare che si tratti di una specie di bug nel router, ma la cosa strana è che montare la condivisione di samba funziona su macchine Windows senza alcun problema, dove posso anche leggere e scrivere nella condivisione.


Potresti provare mount --verbose -t cifs -o rw,guest,file_mode=0777,dir_mode=0777,noperm //192.168.1.1/samba ./asd.Cosa fa smbclient //192.168.1.1/ -L -U guest% mostrare?
testeaxeax

@nullterminatedstring Sfortunatamente, aggiungendo il noperm l'opzione non fa differenza. L'output del smbclient il comando è Connection to -U failed (Error NT_STATUS_BAD_NETWORK_NAME)
nKn

1
Scusa, intendevo smbclient -L //192.168.1.1/ -U guest% .
testeaxeax

Hai provato ad aggiungere il forceuid,uid=myuser,forcegid,gid=mygroup (sostituzione myuser e mygroup con le tue rispettive, ovviamente) opzioni durante il montaggio?
gmelis

1
Ok, un paio di altre opzioni da provare durante il montaggio: nosetuid, noperm. Puoi anche provare il vers parametro, come in vers=2.0. Sono abbastanza sicuro che sia una cosa stupida, avere un server di samba su linux e non essere in grado di montarlo sotto linux. Ricordo un paio di anni fa che avevo una ZTE, e potevo telnet con la mia password "admin" e poi su con password zte. Se funziona per te, prova a trovarne uno smb.conf e pubblica una copia di esso.
gmelis
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.