Schön.
So lang das Ding in nem Git liegt, werden es 98% derer die es brauchen würden, nicht benutzen.
Zumindest solltet ihr im Readme beschreiben, wie die Laien git installieren.
Schön.
So lang das Ding in nem Git liegt, werden es 98% derer die es brauchen würden, nicht benutzen.
Zumindest solltet ihr im Readme beschreiben, wie die Laien git installieren.
Da ist was dran
Vielleicht einen Einzeiler in die Readme packen, a la apt-get install -y git && git clone https://codeberg.org/wh0ami/debsec && cd debsec/ && bash securitycheck.sh
EDIT: Und vielleicht noch in der Readme erklären, dass man das mit Rechtsklick in Putty einfügen kann
EDIT2: Vielleicht sollte noch geprüft werden ob eine Firewall installiert/aktiv ist und ob diese grundsätzlich eingehende Verbindungen blockiert?
Oder "wget https://codeberg.org/wh0ami/debsec/archive/master.zip" mit folgendem unzip.
Sofern wget und unzip nicht schon installiert sind, hinterlassen die zumindest weniger "Datenmüll"...
Hecke29 Biddö sowas hier rein, dankö.
Hast du denn in deiner Config auch die Einstellung "AuthenticationMethods publickey" gesetzt? Falls nein: Wenn die nicht da ist, meckert das Script auch rum.
Die README ist bisher recht schnell und schlampig gemacht. Da hatte ich mir noch nicht so die Zeit dafür genommen... habe es gerade mal eben etwas angepasst... noch nicht perfekt, aber ausreichend, denke ich.
Das mit der Firewall habe ich im Hinterkopf, wollte mich aber noch nicht so recht bei dem wie festlegen. Also klar könnte man sagen, man checkt, ob die Files von iptables-persistent da und größer Null sind, aber was ist, wenn z.B. nftables genutzt wird? Ich bin da noch etwas unschlüssig vom "wie".
Wenn jemand Ideen hat - her damit.
Du könntest von außen einen Port Scan machen, müsstest dann allerdings die Infrastruktur dafür bereit halten.
Evtl gibt's einen solchen Dienst mit API.
Wenn du dabei bist kannst du auch gleich die Zertifikat Kette und Verschlüsselungs Einstellungen der verschiedenen Services (z.b. web Server) überprüfen.
Du könntest von außen einen Port Scan machen, müsstest dann allerdings die Infrastruktur dafür bereit halten.
Evtl gibt's einen solchen Dienst mit API.
Wenn du dabei bist kannst du auch gleich die Zertifikat Kette und Verschlüsselungs Einstellungen der verschiedenen Services (z.b. web Server) überprüfen.
oder einfach direkt vom Server nach offenen Ports schauen?
Wenn direkt auf dem Server geschaut wird, weißt du nicht ob es keine externe fw gibt
Wenn direkt auf dem Server geschaut wird, weißt du nicht ob es keine externe fw gibt
Das Script ist ja hauptsächlich für Anfänger, die werden keine externe FW haben - und wer doch eine hat, wird das wissen.
Hackertarget hätte aber eine passende API für dich. Zumindest mit den Standart Ports:
Ich finde es eine tolle Initiative, die ich auch im längsten Thema gleich gelobt habe.
Der Hinweis auf eine ausgereifte Lösung in diesem Bereich mit "Lynis" ist denke ich naheliegend, aber es ist durchaus Platz für dieses neue, reduzierte, übersichtliche Projekt für welches ich mir einen guten Start wünsche.
Man kann damit auch mehrere Server gut vergleichen nach der Ersteinrichtung. Ich sehe das Script als eine Art Checklist.
Das Readme ist sicher für den Einsteiger ein Knackpunkt. Die Infos hier im Thread über die Installationsmöglichkeiten gehört dort gut präsentiert.
Bezüglich der Firewall Thematik - naja.
Ich möchte gerne auf Dienste von außen verzichten.
Was ich halt nicht weiß - kann man mit nmap das eigene System scannen? Aber selbst da - nmap Scans dauern recht lange. Ich weiß nicht, ob das so das Gelbe vom Ei ist, mit Portscans zu arbeiten.
Ich werde mir die Thematik am Wochenende nochmal näher zur Brust nehmen und dann schaue ich mal, was Sinn macht, und was nicht.
Was mir auf jeden Fall noch in dem Kopf kam: Ein Scan, ob die bekannten verdächtigen Prozesse als root ausgeführt werden. Das betrifft vor allem mal Minecraft und Teamspeak3, für weitere Vorschläge wäre ich dankbar...
Was ich halt nicht weiß - kann man mit nmap das eigene System scannen? Aber selbst da - nmap Scans dauern recht lange. Ich weiß nicht, ob das so das Gelbe vom Ei ist, mit Portscans zu arbeiten.
Mit Parameter "-F" scannt man die 100 gebräuchlichsten Ports, und das schnell (vgl. Nmap Cheat Sheet) :
Zum obigen Script-Beispiel: Das Ausgabeformat von ifconfig hat sich beispielsweise zwischen Ubuntu 16.04 und Ubuntu 18.04 geändert. Sinnvollerweise würde man heutzutage sowieso eher ip address show verwenden, aber die Filterung der Ausgabe sollte grundsätzlich in Abhängigkeit der Angaben aus /etc/os-release vorgenommen werden.
Für die Portscans könnte man noch ein kleines Script für den 2ten Server haben, den ja jeder Hoarder zur Verfügung hat.
So kann man auf 3rd Party verzichten.
Ich weiß, das interessiert keinen aber ich schreibe es trotzdem. Bei mir ist jetzt alles im grünen Bereich. Gibt es Vorschläge, wie ich das nun feiern soll?
Gibt es Vorschläge, wie ich das nun feiern soll?
Neuen Server bestellen und nochmals testen!
Am Besten mit MVD von 12 Monaten
Neuen Server bestellen und nochmals testen!
Am Besten mit MVD von 12 Monaten
MVD? Meintest Du vielleicht MVL?
So einen mit MVL von 12 Monaten hab ich schon.
MVD? Meintest Du vielleicht MVL?
Prinzipiell ja, aber die Mindestvertragsdauer ist hier (AT) trotzdem eine gängige Alternative – vor allem in Telekommunikationsbereich und sogar in Rechtssprechungen…
Die Netzwerkkonfiguration liegt unter /etc/network/interfaces.d. Ist es möglich, dass die Konfigurationen in diesem Ordner auch geprüft werden?
Das habe ich nun eingefügt. Es wäre super, wenn du es mal testen würdest.
Ich habe nun auch mal die Portscan Idee von m_ueberall umgesetzt - wäre nett, wenn man da mal Feedback hören könnte.
Eventuell sind hier noch Bugs in der aktuellen Version des Skripts:
Es wird Logs auf low beanstandet bei:
# Logging
SyslogFacility AUTHPRIV
LogLevel VERBOSE
Es wird erlaubte Passwortauthentifizierung beanstandet bei:
PasswordAuthentication no
#PermitRootLogin yes
PermitRootLogin prohibit-password
AuthenticationMethods publickey
Kann man mit den neuen Regeln UFW testen? Ich glaube es sollte unabhängig sein, oder?