CVE-2017-7494 Chiamata remota Samba. Come faccio a sapere se Samba è in esecuzione o meno sul mio server Ubuntu?

4

I miei server sono Ubuntu. Voglio sapere se Samba è installato accidentalmente o no. Il seguente comando è corretto?

Sembra che Samba non sia installato.

$ samba --version
The program 'samba' is currently not installed. You can install it by typing:

$ ps -ef | grep smb
(empty)
    
posta zono 26.05.2017 - 06:34
fonte

4 risposte

7

Sembra certamente non installato. Prova a verificare con il tuo gestore di pacchetti ciò che viene installato come controllo finale. Ma direi che sembra non essere installato.

Puoi anche fare una ricerca per l'eseguibile usando

find / -executable -name samba
    
risposta data 26.05.2017 - 06:54
fonte
8

Sento che le altre risposte, senza dubbio utili, non rispondono esattamente a ciò che hai chiesto ... cioè, se Samba è in esecuzione , ma se Samba è stato installato su qualche tempo (esaminando i file su disco, che potrebbero essere lasciati indietro) o se Samba è installato con la conoscenza del sistema , che potrebbe non essere sempre il caso.

dpkg non ti dirà se Samba è installato; ti dirà se è stato installato usando dpkg / apt o no. Se si installa Samba da zero tramite un tarball, ad esempio, l'intero sistema di installazione di Ubuntu ti dirà sinceramente che non è a conoscenza di Samba che sia mai stato installato ... anche se Samba è attivo e funzionante.

Per verificare che samba sia installato, si provi effettivamente a eseguirlo:

smbd -V

Se installato (anche se non è in esecuzione), ne riporterà la versione.

Lo stesso controllo può essere eseguito con la parte client della suite Samba, che non è necessariamente installata con il server:

smbclient --version

Per il supporto del file system, nel caso in cui, invece, fai mount.cifs -V . A rigor di termini questo è il supporto CIFS, non Samba.

Per sapere se il programma Samba è in esecuzione , puoi controllare i processi in esecuzione della suite Samba (smbd, nmbd, winbind):

sudo ps waux | grep "[sn]mbd"

Questo non restituirà nulla se il programma non è in esecuzione, o un elenco della parte dei processi della suite Samba:

root     23942  0.0  0.3 299100 15176 ?        Ss   May24   0:00 /usr/sbin/smbd -D
root     23943  0.0  0.1 298532  4744 ?        S    May24   0:00 /usr/sbin/smbd -D
root     23944  0.0  0.1 298556  7408 ?        S    May24   0:00 /usr/sbin/smbd -D
root     23946  0.0  0.2 299092  9504 ?        S    May24   0:00 /usr/sbin/smbd -D

Oppure puoi verificare se stanno ascoltando le porte:

sudo netstat -nap | grep "[sn]mbd"

Questo non restituirà nulla se i processi non sono in esecuzione, o ti dirà quali porte stanno ascoltando:

tcp        0      0 192.168.2.200:445       0.0.0.0:*               LISTEN      23942/smbd
tcp        0      0 192.168.2.200:139       0.0.0.0:*               LISTEN      23942/smbd

Qui sopra, ad esempio, il mio smbd sta ascoltando gli indirizzi remoti ALL (0.0.0.0).

Un altro modo è controllare se qualcosa sta ascoltando a posto di Samba sulle porte TCP 139 e 445:

sudo fuser -n tcp 139

Questo non restituirà nulla (programma non in esecuzione) o il PID del processo in esecuzione:

139/tcp:             23942
    
risposta data 26.05.2017 - 15:12
fonte
6

Puoi controllare con $ dpkg -L samba

    
risposta data 26.05.2017 - 08:58
fonte
1

Per verificare se il pacchetto samba è installato su Ubuntu, puoi usare:

dpkg -s samba | grep Status

Per scoprire tutti i file forniti dal pacchetto samba :

dpkg -L samba

Uso di apt :

apt-cache policy samba

Output di esempio:

samba:
Installed: (none)
    
risposta data 27.05.2017 - 12:29
fonte

Leggi altre domande sui tag