FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: sylvester am 15 September 2018, 12:11:27

Titel: nmap als root für MAC-Adressen
Beitrag von: sylvester am 15 September 2018, 12:11:27
Hallo zusammen,

ich würde bei mir gerne die Devices in NMAP über die MAC-Adresse erkennen.Grundsätzlich funktioniert nmap bei mir in FHEM.
Ich habe also das Attribut DevAlias entsprechend geändert. Dann habe ich auch schon herausgefunden, dass ich das Attribut sudo auf 1 setzen muss.
Ich schaffe es aber leider nicht die Datei sudoers bzw. eine Datei in sudoers.d entsprechend zu ändern bzw. zu erstellen.
Und so bekomme ich aktuell bei einem StatusRequest immer einen Abbruch (aborted).

Kann mir da jemand helfen bzw. einen Tipp geben?

Vielen Dank und Gruß

Stephan
Titel: Antw:nmap als root für MAC-Adressen
Beitrag von: binford6000 am 15 September 2018, 12:34:48
Hallo Stephan,
im Terminal
sudo visudo
eingeben ud dann eine Zeile mit
fhem ALL=(ALL) NOPASSWD: /usr/bin/nmap
einfügen.

VG Sebastian

Titel: Antw:nmap als root für MAC-Adressen
Beitrag von: Otto123 am 15 September 2018, 12:48:58
Moin,

alle aktuellen System unterstützen include sudoers.d
So sieht die Datei beim Pi für Pi aus:
sudo cat /etc/sudoers.d/010_pi-nopasswd
pi ALL=(ALL) NOPASSWD: ALL

so mach ich das, als Beispiel :)
#!/bin/bash
# ergänze eine Datei zum sudoers Script Verzeichnis /etc/sudoers.d/
File="011_fhem-nopasswd"
echo "fhem ALL=(ALL) NOPASSWD: /sbin/reboot, /sbin/shutdown, /sbin/halt" >/etc/sudoers.d/$File
chmod 0440 /etc/sudoers.d/$File


Bitte nicht fhem für alles zum sudo machen, die dünnen Bretter sind gefährlich!

Gruß Otto
Titel: Antw:nmap als root für MAC-Adressen
Beitrag von: binford6000 am 15 September 2018, 18:15:34
ZitatBitte nicht fhem für alles zum sudo machen, die dünnen Bretter sind gefährlich!
Nö, nur für nmap  ;)

VG Sebastian
Titel: Antw:nmap als root für MAC-Adressen
Beitrag von: sylvester am 16 September 2018, 04:08:53
Muss ich für die Verwendung von sudoers.d die include-Zeile in sudoers einkommentieren, oder funktioniert das mit dem #?
Titel: Antw:nmap als root für MAC-Adressen
Beitrag von: Otto123 am 16 September 2018, 08:13:43
Das funktioniert so wie es ist! Sonst hätte ich es gesagt  ;D
https://www.sudo.ws/man/1.8.13/sudoers.man.html
Titel: Antw:nmap als root für MAC-Adressen
Beitrag von: sylvester am 16 September 2018, 11:18:50
Mhhh, dann bin ich zu doof.

Also das ist meine sudoers-Datei:


#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults env_reset
Defaults mail_badpass
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root ALL=(ALL:ALL) ALL
fhem ALL=(ALL) NOPASSWD: /usr/bin/nmap

# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d



Und dann habe ich noch eine Datei mit folgendem Inhalt im Ordner sudoers.d:



#Damit der Benutzer fhem bei der Ausführung von 'sudo /usr/bin/nmap' kein Passwort eingeben muss.
#Wird für das Modul 74_nmap.pm in Fhem benötigt um das Attribut 'sudo=1' zu nutzen.
fhem ALL=(ALL) NOPASSWD: /usr/bin/nmap


Findet jemand den Fehler?
Titel: Antw:nmap als root für MAC-Adressen
Beitrag von: Otto123 am 16 September 2018, 12:39:59
Ob man das an zwei Stellen machen sollte/darf weiß ich nicht.
ZitatUnd dann habe ich noch eine Datei mit folgendem Inhalt im Ordner sudoers.d:
Ob man dort Kommentar Zeilen einfügen darf weiß ich nicht.
Hast Du die Datei mit den richtigen Rechten versehen?
chmod 0440

Ich hätte die sudoers Datei gelassen wie sie ist. Und dazu folgendes im Terminal gemacht:
File="011_fhem-nopasswd"
echo "fhem ALL=(ALL) NOPASSWD: /usr/bin/nmap" >/etc/sudoers.d/$File
chmod 0440 /etc/sudoers.d/$File


Falls nmap wirklich dort liegt -> /usr/bin/nmap und durch den user fhem ausführbar ist....
Titel: Antw:nmap als root für MAC-Adressen
Beitrag von: sylvester am 16 September 2018, 13:00:57
ok ... habe ich jetzt genau so gemacht.
jetzt steht im Log, dass sudo ein Passwort braucht ...
Titel: Antw:nmap als root für MAC-Adressen
Beitrag von: Otto123 am 16 September 2018, 14:06:16
Was hast Du für ein System? Es gibt Systeme die wollen einmalig das Passwort. Ich weiß ad Hoc nicht wie man das ausschaltet ohne das Passwort einmal zu setzen. Geht aber irgendwie. Musst Du mal etwas suchen, oder hoffen es schreibt einer :)
Titel: Antw:nmap als root für MAC-Adressen
Beitrag von: CoolTux am 16 September 2018, 14:09:53
Gibt es nicht ein inoffizielles Modul für nmap? Mir war mal so.
Titel: Antw:nmap als root für MAC-Adressen
Beitrag von: CoolTux am 16 September 2018, 14:10:53
Wusst ich es doch

https://forum.fhem.de/index.php/topic,57804.0.html
Titel: Antw:nmap als root für MAC-Adressen
Beitrag von: Otto123 am 16 September 2018, 14:16:48
Zitat von: CoolTux am 16 September 2018, 14:10:53
Wusst ich es doch

https://forum.fhem.de/index.php/topic,57804.0.html
ZitatGrundsätzlich funktioniert nmap bei mir in FHEM.
Ich war davon ausgegangen das er genau das einsetzt :)
Titel: Antw:nmap als root für MAC-Adressen
Beitrag von: sylvester am 16 September 2018, 14:18:01
ja, natürlich


Das System ist ein Cubietruck mit Debian
Titel: Antw:nmap als root für MAC-Adressen
Beitrag von: Otto123 am 16 September 2018, 14:28:11
Nochmal die Frage: Welches System?

Hinweis: Der Befehl beim Aufruf muss dem in der sudoers.d entsprechen!
Also sudo /usr/bin/nmap

ZitatInhalt der sudoers Datei
Die durch Komma getrennten Werte in der Datei haben folgende Bedeutung und benötigen immer den vollen Pfad!

/usr/sbin -> für alles im Verzeichnis
/usr/sbin/service * -> für alle Parameter
/usr/sbin/service apache2 * -> für alle weiteren Parameter
/usr/sbin/service apache2 reload -> genau nur hierfür
Der Aufruf in FHEM muss dann genau dem Schema entsprechen:
"sudo /usr/sbin/service apache2 reload"
Titel: Antw:nmap als root für MAC-Adressen
Beitrag von: sylvester am 16 September 2018, 15:03:14
Zitat von: sylvester am 16 September 2018, 14:18:01
Das System ist ein Cubietruck mit Debian
Titel: Antw:nmap als root für MAC-Adressen
Beitrag von: Otto123 am 16 September 2018, 16:01:36
Sorry muss ich übersehen haben.  :-[

Aber nochmal meine zweite Vermutung? Du rufst ja nmap sicher mit Parametern auf, also gilt diese Zeile:
/usr/sbin/service * -> für alle Parameter

Du musst also die Zeile von /usr/bin/nmap nach /usr/bin/nmap * ändern

Hast Du das probiert?
Titel: Antw:nmap als root für MAC-Adressen
Beitrag von: sylvester am 16 September 2018, 22:14:31
also ich bekomme es bei mir mit MAC-Adressen nicht zum laufen.
Vielleicht kann mir jemand mal seine beiden sudoers-Dateien zuschicken, bei dem das wirklich läuft...
Titel: Antw:nmap als root für MAC-Adressen
Beitrag von: igami am 16 September 2018, 22:26:07
Zitat von: sylvester am 16 September 2018, 13:00:57
jetzt steht im Log, dass sudo ein Passwort braucht ...
Bitte mal die Logzeile posten.
Läuft dein FHEM unter dem Benutzer fhem?

Hast du mal versucht nmap per Konsole auszuführen?
Titel: Antw:nmap als root für MAC-Adressen
Beitrag von: sylvester am 17 September 2018, 06:25:39
Also Nmap ohne das Attribut sudo=1 funktioniert problemlos.


Nmap (LANmap) - sudo password required
Titel: Antw:nmap als root für MAC-Adressen
Beitrag von: sylvester am 17 September 2018, 09:46:58
grrrr .... Fehler gefunden

in /etc/hosts war der falsche Hostname eingetragen