IT security, FreeBSD, Linux, mail server hardening, post-quantum crypto, DNS, retro computing & hands-on hardware hacks. Privater Tech-Blog seit 2003.

Schlagwort: Microsoft (Seite 3 von 3)

ZFS iSCSI-Target mit COMSTAR auf OpenIndiana einrichten

COMSTAR (Common Multiprotocol SCSI Target) ist das Framework in Solaris/OpenIndiana, das iSCSI, FC und FCoE unter einem Dach vereint. Es ersetzt den alten iSCSI Target Daemon aus Solaris 10. Hier die Einrichtung eines iSCSI-Targets auf Basis eines ZFS-Volumes für einen Windows-Initiator.

ZFS-Volume anlegen

Zuerst einen eigenen Pool und darin ein ZFS-Volume mit fester Größe erstellen — das Volume wird später die LUN:

zpool create iscsi-target-pool c4t2d0

zfs create -V 10g iscsi-target-pool/iscsi_10gb-lun01
zfs list iscsi-target-pool/iscsi_10gb-lun01
NAME                                   USED  AVAIL  REFER  MOUNTPOINT
iscsi-target-pool/iscsi_10gb-lun01    10,3G  19,6G    16K  -

Die feste Größe (-V 10g) ist wichtig — sonst würde die Poolgröße das Target begrenzen, und bei mehreren Targets im selben Pool wird es unübersichtlich.

COMSTAR-Dienste starten

Das SCSI Target Mode Framework (STMF) aktivieren:

svcadm enable stmf
svcs stmf
STATE   STIME    FMRI
online  13:02:50 svc:/system/stmf:default

stmfadm list-state
Operational Status: online
Config Status     : initialized

Das iSCSI-Target-Paket installieren und den Dienst starten:

pkg install /network/iscsi/target

svcs iscsi/target
STATE   STIME    FMRI
online  13:23:56 svc:/network/iscsi/target:default

Logical Unit erstellen

Eine LUN auf Basis des ZFS-Volumes anlegen:

sbdadm create-lu /dev/zvol/rdsk/iscsi-target-pool/iscsi_10gb-lun01
Created the following LU:

GUID                             DATA SIZE     SOURCE
-------------------------------- ------------- ----------------
600144f051c247000000523ed0050001 10737418240   /dev/zvol/rdsk/iscsi-target-pool/iscsi_10gb-lun01

Prüfen ob die LUN online ist:

stmfadm list-lu -v
LU Name            : 600144F051C247000000523ED0050001
Operational Status : Online
Provider Name      : sbd
Alias              : /dev/zvol/rdsk/iscsi-target-pool/iscsi_10gb-lun01
Data File          : /dev/zvol/rdsk/iscsi-target-pool/iscsi_10gb-lun01
Size               : 10737418240
Block Size         : 512

Damit der Initiator die LUN sehen kann, einen View erstellen:

stmfadm add-view 600144F051C247000000523ED0050001
stmfadm list-view -l 600144F051C247000000523ED0050001
View Entry: 0
  Host group   : All
  Target group : All
  LUN          : 0

iSCSI-Target anlegen

Zwischenstand:

  • STMF und iSCSI-Target-Dienst laufen
  • 10 GB ZFS-Volume als LUN angelegt
  • View erstellt, damit Initiatoren die LUN sehen

Fehlt noch das Target selbst:

itadm create-target
Target iqn.2010-09.org.openindiana:02:6c3939bf-f5e5-4f28-a8d0-d0f0bbb2e1c4 successfully created

itadm list-target -v
TARGET NAME                                                          STATE   SESSIONS
iqn.2010-09.org.openindiana:02:6c3939bf-f5e5-4f28-a8d0-d0f0bbb2e1c4 online  0
  alias:             -
  auth:              none (defaults)
  targetchapuser:    -
  targetchapsecret:  unset
  tpg-tags:          default

Zum Schluss sicherstellen, dass das Target im Discovery auftaucht:

devfsadm -i iscsi

Windows-Initiator verbinden

Auf der Windows-Seite den eingebauten Microsoft iSCSI-Initiator öffnen (ab Windows 7 vorinstalliert):

  • Portal über die IP-Adresse des OpenIndiana-Hosts ermitteln lassen
  • Das Ziel suchen und verbinden
  • Die neue Festplatte in der Datenträgerverwaltung initialisieren und ein Volume erstellen
Screenshot der Windows Fehlermeldung: You do not have permission to update Windows.Screenshot der Windows Fehlermeldung: Setup could not find the update.inf file.Screenshot des Windows iSCSI-Initiators mit der Zielportal-Einstellung.Screenshot des Windows iSCSI-Initiators mit dem erkannten Ziel.
Screenshot des Windows iSCSI-Initiators beim Verbinden mit dem Ziel.Screenshot des Windows iSCSI-Initiators mit der Volumeliste.Screenshot der Windows Datenträgerinitialisierung mit dem erkannten iSCSI-Datenträger.Screenshot der Windows Datenträgerverwaltung mit dem fertig konfigurierten COMSTAR SCSI Device.

Mehr zu ZFS: ZFS Compression und Deduplication. Fragen? Einfach melden.

Solaris Virtualbox

Veraltet: OpenIndiana und Solaris werden kaum noch eingesetzt. VirtualBox läuft unter FreeBSD und Linux problemlos.

Solaris Virtualbox

Der OpenSolaris fork Openindiana und VirtualBox

Nicht nur das die modernen Systeme inzwischen meist genug Leistung haben um zu einem Hostsystem noch ein weiteres oder mehrere zu „Emulieren“ nein, man kann es auch ganz gut gebrauchen. Bedingt durch meine Arbeit bin ich leider an vielen Stellen auf Produkte von Microsoft angewiesen. Zusätzlich ist es ganz praktisch für Schulungen oder Vorträge immer ein dazu passendes, sauberes und funktionsfähiges System aus dem Glas holen zu können. Natürlich ist es auch mehr als praktisch wenn man Experimente nicht immer in seinem echten System fahren muss. Ich setzte hier derzeit auf VirtualBox, da dieses die für mich wichtigsten Plattformen abdeckt und ich so die VMs einfach von hier nach da schieben und nutzen kann. Das darf natürlich auf meinem Solaris Desktop nicht fehlen! Bei Oracle gibt es fertige Pakete für Solaris. Ein solches ist schnell heruntergeladen und entpackt sich fast von alleine:
$ tar xvzf VirtualBox-4.1.2-73507-SunOS.tar.gz
Die Installation stellt einen auch nicht weiter vor große Probleme:
$ cd VirtualBox-4.1.2-73507-SunOS
$ pkgadd -d VirtualBox-4.1.2-SunOS-r73507.pkg
Damit ist Virtualbox schon nutzbar und fertig installiert. Man sollte nun aber nicht vergessen seinen User mit in die Gruppe vboxuser zu packen, sonst gibt es so lustige Fehlermeldungen beim Versuch an USB Geräte zu kommen:
Could not load the Host USB Proxy service (VERR_ACCESS_DENIED).
Details:
Result Code: NS_ERROR_FAILURE (0x00004005)
Component: Host
Interface: IHost {f460cbfc-2332-4fa6-899e-45ded6b3242342}
Callee: IMachine {99404fe0-2310-40d3-889b-dd2f79e7365e}
USB 2.0 und noch etwas mehr Lulu bekommt man über das Oracle VM VirtualBox Extension Pack. Hier sollte man sich aber (wie bei allen Dingen) die Lizenzbestimmungen durchlesen.

GeoTagging

GeoTagging mit dem i-gatU GT200e Gentoo Linux und Digikam… 

Ich habe von meiner Frau einen GPS Datenlogger zum Geburtstag geschenkt bekommen. Damit hat sie mir auch direkt meinen Wunsch nach so einem Gerät erfüllt. Danke.  Allen jenen welche durch eine Suche auf diesen Beitrag gestoßen sind muss ich wohl kaum erzählen was und zu welchem Zweck man dieses kleine Gerät einsetzten kann. Besitzer eines Smartphones werden wohl meist auch nur müde lächeln. Daher reiße ich nur kurz an, was ich mit dem Teil möchte. Angeschlossen und geladen wird der GT-200e von i-gatU per USB. Ich habe zusätzlich die Möglichkeit das Gerät per Bluetooth zu verbinden. So zum Beispiel mit meinem Nokia Mobiltelefon (ja, vielleicht kaufe ich irgendwann mal etwas neuers). Kismet auf meinem Notebook oder oder oder…. Die aktuelle GPS Position kann mit dem Gerät per Knopfdruck oder je nach Einstellung automatisch im Intervall gespeichert werden. Da ein Akku verbaut ist kann es dieses komplett als Stand-Alone Gerät. Genau dieses ist mein Hauptplan…. Ich packe es einfach in meine Tasche oder befästige es an meiner Spiegelreflexkamera und/oder Digitalkamera und lasse es einfach mitlaufen. Die Akkulaufzeit reichte bei mir schon für 3 Tage, dann habe ich aufgehört zu testen. Dieses kleine Ding hängt nun also an meiner Canon EOS 450D und schreibt alle paar Sekunden meinen genauen Standort auf. Zuhause kann ich nun diese Daten vom Gerät als GPX Datei auslesen und zusammen mit meiner Bilderverwaltungssoftware Digikam, die Bilder meiner Kamera mit den GPS Koordinaten vermischen. Somit ist in den Metadaten jedes Bildes gespeichert an welcher Position genau ich es aufgenommen habe. Natürlich lässt sich anhand der Wegpunkte die genaue Strecke, Geschwindigkeit, Höhe usw… Errechnen und in lustige Grafiken gießen. Dieses ist für mich dass Abfallprodukt. Wie so oft reicht es auch i-gatU sich hinsichtlich Treiber- und Softwareunterstützung um die Microsoft Windows und Apple MacOS Benutzer zu kümmern. Linux Benutzer müssen sich halt selbst irgendwie kümmern und das haben sie getan. Es gibt das Progrämmchen igotu2gpx der Linux Kernel kommt ab Versionen größer 2.6.3 problemlos mit dem Gerät zurecht. Um igotu2gpx kompilieren zu können sind im groben folgende Abhängigkeiten zu erfüllen: – qt4 – boost – libusb – chrpath – marble – openssl Dieses sollte sich auf jeder gängigen Distribution durch den Paketmanager erledigen lassen. Unterwegs kümmert sich nun der GT200e um die genaue Positionsbestimmung. Zuhause kann ich dann die Wegpunkte mit igotu2gpx in eine gpx Datei exportieren. Digikam verbindet dann die Bilder mit der passenden GPS Position. Dieses funktioniert über die Uhrzeit. Die Kamera hängt beim Knipsen eines Bildes automatisch die Uhrzeit an das Bild. Diese kann nun mit den Zeiten aus dem gpx Export verglichen werden. So lässt sich herausfinden an welcher Position man gerade beim Knipsen des Bildes gewesen ist. Vorausgesetzt die Kamera hat auch die richtige Uhrzeit und das richtige Datum. GPX track data imported in Digikam GPS coordinates assigned to photos in Digikam Geotagged photo positions displayed on map i-gotU GT200e GPS logger next to Nokia phone i-gotU GT200e connected via Bluetooth

Fragen? Einfach melden.

StartSSL

Veraltet: StartSSL/StartCom wurde 2017 von allen Browsern als nicht mehr vertrauenswürdig eingestuft und hat den Betrieb eingestellt. Für kostenlose Zertifikate nimmt man heute Let’s Encrypt.

StartCom ist ein Unternehmen, das Software herstellt und als Zertifizierungsstelle digitale Zertifikate ausstellt. Seit Februar 2005 ist das Unternehmen als Zertifizierungsstelle tätig. Das bekannteste Produkt ist das kostenlose Class 1 X.509 SSL-Zertifikat „StartSSL Free“, das sowohl für Webserver (SSL/TLS) als auch für die E-Mail-Verschlüsselung (S/MIME) eingesetzt werden kann. Außerdem werden Class 2 Zertifikate und Extended-Validation-SSL-Zertifikate ausgestellt, für die eine kostenpflichtige Validierung Voraussetzung ist. StartCom-Zertifikate werden von allen modernen Browsern akzeptiert: Mozilla Firefox unterstützt sie schon ab Version 2.0, Opera seit Juli 2010, Apple Mac OS X ab Version 10.5 (Leopard) und Microsoft Windows seit September 2009; Apple Safari, Internet Explorer und Google Chrome greifen auf den Zertifikatspeicher des Betriebssystems zurück.

Das kostenlose Class1 Zertifikat stellt nur sicher das der angegebene Domainname existiert und anscheinend dem Halter des StartCom Accounts gehört. Aus diesem Grund findet sich natürlich auch nur der Domainname im Zertifikat. Wer seinen Namen auch noch im Zertifikat hinterlegen möchte kann dieses denn noch auf einem kostenlosen Weg schaffen. Ähnlich CAcert setzt StartCom auf das Prinzip des Web of Trust (wot). Es gibt bei StartCom ehrenamtliche Notare. Jeder Inhaber eines StartCom Accounts kann sich von diesen verifizieren lassen. Dazu findet sich im Webinterface des eigenen Accounts auf der Seite unter StartSSL WoT ==> WoT Netzwerk der Punkt Notarsucher. Hier findet sich über die Eingabe des eigenen Wohnortes oder halt der nächsten größeren Stadt schnell ein solcher Notar.

Wurde man von mindestens zwei dieser Notare bestätigt, kann man seinen Namen mit ins Zertifikat aufnehmen.

Eine solche Bestätigung findet immer über ein persönliches Treffen mit dem Notar statt. Bei diesem Treffen prüft der Notar anhand von zwei amtlichen Lichtbildausweisen ob der Name im Account mit dem auf den Ausweisen identisch ist.

Da die Root-Zertifikate dieser Zertifizierungsstelle bereits in den meisten großen Browsern und Betriebssystemen enthalten sind, kommt es bei diesen Zertifikaten (anders als bei z.B. CAcert.org) nicht zu „Fehlermeldunge“ bzw. Warnmeldungen im Zusammenhang mit den Zertifikaten. Vor allem dieser Umstand und natürlich da es kostenneutral ist, würde ich StartCom x.509 Zertifikate als einen optimalen Einstieg in diesen Themenbereich nennen können. Wer am Ende mehr will, wie eine Class 2 Zertifizierung oder bis hin zum Class 3 Zertifikat für Unternehmen, kann dieses schnell und günstig weiterführen. Wem das Class 1 Zertifikat ausreicht, dem stehen direkt nach der erfolgreichen Anmeldung schon fast alle Möglichkeiten der E-Mail Signatur / Verschlüsselung sowie SSL/TLS Verschlüsselte Serververbindungen offen.

Ich selbst bin bei StartSSL Notar und wie bei GPG / PGP oder CAcert.org bestätige ich auch hier gerne Identitäten auf Anfrage.

Spam- und Virenabwehr durch HELO: So funktioniert’s

Postfix kann schon beim SMTP-Dialog prüfen, ob die Angaben des einliefernden Servers plausibel sind. Stimmt der HELO-Hostname nicht, existiert die Absenderdomain nicht im DNS, oder passt der Reverse-DNS nicht zur IP? Dann ist die E-Mail mit hoher Wahrscheinlichkeit Spam. Diese Prüfungen kosten fast nichts und filtern einen erheblichen Teil des Mülls, bevor die Nachricht überhaupt angenommen wird.

Warum das funktioniert

Ordentlich konfigurierte Mailserver melden sich mit ihrem FQDN, und der Reverse-DNS-Eintrag passt dazu. Gekaperte Rechner eines Botnetzes melden sich dagegen mit dem Hostnamen, den der Besitzer irgendwann eingegeben hat. Im besten Fall „Peters-PC“, im schlechtesten Fall gar nichts. Selbst wenn der FQDN stimmt, wird der Botnetzbetreiber kaum beim ISP einen passenden Reverse-DNS setzen lassen. Bei dynamischen IPs von DSL-Anschlüssen ist der Hostname meist nicht einmal in einem gültigen Format.

Das können wir uns zunutze machen. Wer sich nicht korrekt anmeldet, bekommt einen 5xx-Reject. Der Vorteil: Postfix beendet die Verbindung sofort und gibt Ressourcen frei. Fällt ein legitimer Absender durch diese Prüfung, hat dessen Admin nicht sauber gearbeitet. Die Fehlermeldung im Reject sagt ihm genau, was falsch ist.

Grundkonfiguration

In /etc/postfix/main.cf zwei Zeilen ergänzen:

smtpd_helo_required = yes
smtpd_delay_reject = yes

smtpd_helo_required erzwingt ein HELO/EHLO von jedem Client. smtpd_delay_reject verschiebt die Ablehnung bis nach dem RCPT TO, weil manche SMTP-Clients (vor allem von Microsoft) sonst Probleme bekommen.

Die Restrictions im Detail

Die eigentlichen Prüfungen kommen in smtpd_recipient_restrictions. Hier die einzelnen Regeln und was sie tun:

reject_non_fqdn_sender — Absenderadresse ist kein FQDN.
reject_non_fqdn_recipient — Empfängeradresse ist kein FQDN.
reject_non_fqdn_hostname — Clientname ist kein FQDN.
reject_non_fqdn_helo_hostname — HELO-Hostname ist kein FQDN.
reject_invalid_hostname — Clientname hat kein gültiges Format.
reject_invalid_helo_hostname — HELO-Hostname hat kein gültiges Format.
reject_unknown_recipient_domain — Empfängerdomain hat keinen A- oder MX-Record.
reject_unknown_sender_domain — Absenderdomain hat keinen A- oder MX-Record.
reject_unknown_client_hostname — IP und Hostname des Clients passen nicht zusammen.
reject_unknown_helo_hostname — HELO-Hostname hat keinen A- oder MX-Record.
reject_unlisted_recipient — Empfänger nicht in der Liste gültiger Adressen.
reject_unauth_destination — Domain ist weder lokal noch als Relay konfiguriert.

Vollständige Konfiguration

Zusammen mit DNS-Blocklisten (RBL/RHSBL) und SPF-Prüfung ergibt sich eine Konfiguration wie diese:

smtpd_recipient_restrictions =
        permit_mynetworks,
        permit_sasl_authenticated,
        check_recipient_access hash:/etc/postfix/recipient-access,
        reject_rbl_client zen.spamhaus.org,
        reject_rbl_client bl.spamcop.net,
        reject_rbl_client ix.dnsbl.manitu.net,
        reject_unlisted_recipient,
        reject_non_fqdn_recipient,
        reject_non_fqdn_helo_hostname,
        reject_non_fqdn_hostname,
        reject_non_fqdn_sender,
        reject_unknown_recipient_domain,
        reject_unknown_client_hostname,
        reject_unknown_helo_hostname,
        reject_invalid_helo_hostname,
        reject_invalid_hostname,
        reject_unknown_client,
        reject_unknown_sender_domain,
        reject_unauth_destination
smtpd_data_restrictions =
        reject_unauth_pipelining,
        permit

Die Reihenfolge ist wichtig. Postfix arbeitet die Regeln von oben nach unten ab, und die erste passende greift. permit_mynetworks und permit_sasl_authenticated stehen deshalb ganz oben, damit eigene Benutzer und vertrauenswürdige Netze nicht gefiltert werden. check_recipient_access erlaubt das Whitelisting bestimmter Empfänger (etwa postmaster@ und abuse@). Dann kommen die Blocklisten, danach die HELO- und DNS-Prüfungen.

Ein Reject im Log

So sieht ein typischer Reject aus, wenn ein Bot sich mit einem ungültigen HELO meldet:

Jun  7 17:50:35 smtp postfix/smtpd[22037]: NOQUEUE: reject: RCPT from
  unknown[94.52.112.110]: 504 5.5.2 <userpc>: Helo command rejected:
  need fully-qualified hostname;
  from=<MackenzieSaranzak@redvanilla.com>
  to=<empfaenger@domain.de>
  proto=ESMTP helo=<userpc>

Der Client „userpc“ hat keinen FQDN im HELO geliefert. Postfix lehnt mit 504 ab, die Verbindung ist sofort beendet. Kein Inhalt übertragen, keine Ressourcen verbraucht.

Wie effektiv ist das?

Allein die HELO- und DNS-Prüfungen filtern 30 bis 55 Prozent des Spams. Zusammen mit den RBLs kommt man auf über 90 Prozent, bevor rspamd überhaupt etwas zu tun bekommt. Das spart Rechenzeit und macht den Content-Filter deutlich entlastet.

Wer noch weiter gehen will: Mit eigenen DNS-Blocklisten lassen sich wiederkehrende Absender und Domains gezielt sperren.

Fragen? Einfach melden.

Samba Projekte

Alt, tot, überholt, nicht nachmachen 🙂


 

 

Projekt Samba­Server

Dieses soll eine kleine Beschreibung über die Gründe, die eigentliche
Installation und Einrichtung meines privaten Samba­Servers werden. Also kein HowTo!

Sollte jemand Fragen oder Anregungen haben, freue ich mich natürlich über jede
E-Mail. Solltest du Fragen stellen achte bitte darauf deine Frage so genau wie irgend
mäglich zu stellen. Beschreibe kurz dein Problem, haue mich nicht mit log und configs
zu und habe etwas Geduld. Ich bekomme nicht nur eine E-Mail am Tag. Darum werde ich ganz
sicher nur auf unfreundliche und ungenaue Fragen antworten. KEINER hat ein Recht drauf von mir
Support zu bekommen!!

Nun, die Situation bei mir schaut ca. so aus: Meine Familie, der Nachbar und ich selbst sitzen
zusammen im Netzwerk. Zu dem kommt immer mal wieder Besuch zu uns. Da wir auch etwas mehr
Platz als der normale Durchschnitt haben, finden auch oft irgendwelche LANs usw. bei uns stat.
Zu dem hängt noch eine Firma und ein geschlossenes WLAN mit drin.

Wenn man mehr als nur einen Rechner hat kommt es schnell vor, dass man bestimmte
Daten nicht nur an einem Rechner braucht. Aus diesem Grund habe ich mir hier einen File­Server
aufgestellt und alle möglichen Daten dort abgelegt. Jetzt stellt sich die Frage wie von
einem anderen Rechner an diesen herankommen? Da ich selbst nur Linux­Systeme nutze (der
File­Server ist also auch Linux basiert) mache ich das ganze über ssh/scp oder
halt über NFS. Jetzt sind aber noch mehr Menschen in meinem Netzwerk. Diese wollen nun
auch ihre Daten dort ablege. Zum Einen, weil dort mehr Platz ist als auf ihrem Rechner und zum
Anderen weil dort täglich eine Datensicherung gefahren wird.
Die Rechte für einen NFS­Share sind schnell angelegt… bringt nur leider nichts,
wenn es Windows­User sind, welche auf die Shares zugreifen wollen. Microsoft
Systeme managen so etwas fast immer über das SMB Protokoll.

Server Message Block (kurz SMB) ist ein Protokoll für Datei­, Druck­ und
andere Serverdienste im Netzwerk unter Microsoft Windows­Betriebssystemen. Es ist
der Kern der Netzwerkdienste von Microsofts LAN­Manager, der Windows­Produktfamilie,
sowie des LAN­Servers von IBM.

Samba ist eine freie Software­Suite, die das Server Message Block ­ Protokoll (SMB)
für Unix­Systeme verfügbar macht. Dieses Protokoll wird manchmal als CIFS (Common
Internet File System), LanManager­ oder NetBIOS­Protokoll bezeichnet.

Samba ist damit in der Lage, Funktionen eines Windows­Server zu übernehmen. Es
gilt als stabiler und performanter als die Windows­Alternative und ist, da zudem noch frei
verfügbar, auch bei vielen Firmen und Organisationen sehr angesehen.

Würde sagen: Ich mach es mit Samba 🙂

Samba wird recht übersichtlich in einer einfachen Konfigurationsdatei konfiguriert. Diese
liegt normalerweise im Ordner /etc/samba und nennt sich smb.conf.

Ich liste erst mal meine hier auf und erläutere dann weiter unten die wichtigsten Einträge!

######### /etc/samba/smb.conf # Anfang #########
[global]
#­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
#Servername / Domain / usw.
netbios name = kernel­error
server string = HAUPT_Server
#­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
#Arbeitsgruppe
workgroup = servers
#­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
#Passwoerter gleichzeitig aedern und Sicherheits..
unix password sync = yes
passwd program = /usr/bin/passwd %U
passwd chat = *password* %n\n *password* %n\n *successfull*
min password length = 2
admin users = kernel
force directory mode = 0750
directory mask = 0750
force create mode = 0750
create mask = 0750
encrypt passwords = Yes
update encrypted = Yes
map to guest = Bad User
host allow 192.168.0. 127.
#­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
#Server und PDC einstellungen
domain master = Yes
name resolve order = dns host bcast wins
nt acl support = Yes
nt pipe support = Yes
nt smb support = Yes
wins support = Yes
wins proxy = Yes
name resolve order = dns host bcast wins
logon path = \\%L\profiles\%U
time server = Yes
socket options = SO_KEEPALIVE IPTOS_LOWDELAY TCP_NODELAY
keepalive = 120
preferred master = Yes
logon script = %U.bat
domain logons = Yes
os level = 65
logon drive = u:
logon home = \\%L\Profiles\%U
# NT RUMMEL
add user script = /usr/bin/useradd ­d /dev/null ­g machines ­c 'Machine Account' ­s /bin/false ­M %u
add user script = /usr/bin/useradd ­s /bin/false %u
username map = /etc/samba/smbusers
#­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
# Logs
max log size = 250
log file = /var/log/samba/samba.log.%m
debug level = 3
log level = 1
syslog = 0
#­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
# Speed
read raw = Yes
write raw = Yes
stat cache = Yes
stat cache size = 50
shared mem size = 5242880
#­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
# sonstiges
interfaces = 192.168.0.10/24
printing = cups
printcap name = CUPS
load printers = yes
#­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
# Lange Dateinamen und Umlaute
protocol = NT1
default case = lower
mangle case = no
mangled names = yes
case sensitive = no
preserve case = yes
short preserve case = yes

[netlogon]
comment = Logon Scripts
path = /home/netlogon
browseable = no

[homes]
comment = Heimatverzeichnis
writeable = Yes
browseable = No

[system]
comment = Server
path = /
writeable = yes
browseable = no
read only = no
valid users = kernel
write list = kernel
read list = kernel

[pool]
create mask = 0755
directory mask =0755
comment = Der Pool
path = /home/pool
writeable = yes
browseable = no
read only = no

[printers]
comment = All Printers
path = /var/tmp
printable = Yes
create mode = 0700
browseable = No
writeable = No

[print$]
comment = Printer Drivers
path = /var/lib/samba/drivers
create mask = 0664
directory mask = 0775
######### /etc/samba/smb.conf # Ende #########

 

Wie man sehen kann ist die Konfigurationsdatei in mehrere Bereiche aufgeteilt. Ein Berich
beginnt immer mit:

[bereichname]

Der Bereich „global“ sollte immer vorhanden sein. Einstellungen die man nicht vorgibt
werden vom Samba­Deamon mit den Standardwerten gefahren. Im Bereich „global“ werden
nun alle Einstellungen gesetzt die für den Samba­Server selbst gelten. Die ersten beiden
Punkte lasse ich aus, da sie sich selbst erklären sollten.

Interessant wird es meiner Meinung nach hier:
unix password sync = yes
passwd program = /usr/bin/passwd %U
passwd chat = *password* %n\n *password* %n\n *successfull*
min password length = 2

Hiermit gebe ich dem Samba­Server vor, dass die Benutzer welche auf der Unix­ bzw.
Linuxebene angelegt werden auch gleichzeitig im Samba­Server angelegt werden. Natürlich
mit dem gleichen Passwort, welches aber nicht kürzer als zwei Zeichen lang sein darf.
Zu dem können User auf NT­Basierten Systemen ihr Passwort von diesen aus selbst
ändern, sofern es ihnen erlaubt ist versteht sich. Die User können natürlich mit
ihrem Passwort auch auf der Konsole angelegt werden. Man muss aber darauf achten,
dass der Username schon auf der Unixebene existiert. Sie müssen nicht zwingend
die gleichen Kennwörter unter Unix/Linux und Samba haben. Angelegt wird ein User mit:

smbpasswd -a username [als root auf der Konsole]

Sollte der User schon unter Samba existieren wird sein Eintrag mit einfach nur aktualisiert.

admin users = kernel

Dieser Eintrag gibt den Benutzer an, welcher nach seiner Anmeldung auf den Shares, mit den
Rechten des Unix Users Root Dateien und Ordner anlegt / liest / bearbeiten. Hier sollte
man vorsichtig sein. Dieser User hat wirklich die gleichen Rechte wie der ROOT­User!!

map to guest = Bad User

Ist dies so angegeben, können nur User auf den Server zugreifen, welche sich auch anmelden.
Ein User kann sich am System anmelden, muss aber keinen Zugriff auf einen Share haben.

#Server und PDC einstellungen

Ab diesem Eintrag wird dem Samba­Server gesagt das er als PDC für die oben angegebene
Domain arbeiten soll. Die einzelnen Punkte haben schöne passende Namen, daher sollte
man sie auch so verstehen können. Gibt es Fragen? ==> einfach mailen!
Hat man NT­Basierte Systeme, welche sich auch am PDC anmelden sollten, muss man einen
Computeraccount für den jeweiligen Rechner anlegen. Das ist viel Arbeit pro Rechner. Da
NT­Systeme das aber selbst können, sollten sie doch die Arbeit für uns machen, oder?
Daher müssen wir noch folgendes eintragen:

add user script = /usr/bin/useradd ­d /dev/null ­g machines ­c ‚Machine Account‘ ­s /bin/false ­M %u
add user script = /usr/bin/useradd ­s /bin/false %u
username map = /etc/samba/smbusers

Die beiden Schalter:

read raw = Yes
write raw = Yes

Können dem Samba Server etwas einheizen. Sie können den Server um 50% schneller laufen
lassen. Die Hardware sollte aber mitspielen, sonst verliert man Daten.

Zum Drucken unter Linux nutze ich seit einiger Zeit CUPS. Um Windows jetzt auch den Zugriff
auf diese Drucker zu gewähren muss ich Samba angeben, dass ich CUPS zur Druckerverwaltung
nutze. Dieses mache ich mit diesem Eintrag:

interfaces = 192.168.0.10/24
printing = cups
printcap name = CUPS
load printers = yes

Wenn man den Samba­Server als PDC betreibt möchte man natürlich auch für Windows
die Loginscripte nutzen. Damit einfach und schnell die Uhrzeit abgeglichen wird oder Laufwerke und
Drucker beim Anmelden eingebunden werden. Dazu muss ein neuer Bereich mit dem Namen „netlogon“
angelegt werden. Das Ganze schaut dann wie folgt aus.

[netlogon]
comment = Logon Scripts
path = /home/netlogon
browseable = no

Der Text hinter comment wird als kleine Beschreibung bei den Shares angezeigt.
path gibt den Unixpfad zum Ordner an, welcher „freigegeben“ werden soll.
Ist browseable auf no gesetzt wird die Freigabe nicht in der Netzwerkumgebung usw. angezeigt.

Ich habe hier folgendes aufgenommen um es zu beschreiben. Man sollte das aber nicht machen!
[system]
comment = Server
path = /
writeable = yes
browseable = no
read only = no
valid users = kernel
write list = kernel
read list = kernel

Hier wurde der Bereich system angelegt. Vielleicht sollte ich an dieser Stelle sagen, dass der
Bereichsname auch gleichzeitig der Name des Shares ist. Hier taucht der Schalter writeable und
read only auf. Die Schalter machen von der Logik her das gleiche. Ich setzte immer beide um
sicher zu gehen das auch wirklich das passiert was ich will. Sie verhindern oder erlauben
das Schreiben auf Shares. Der Punkt valid users gibt an, welche user überhaupt das Recht
haben auf diesen Share zuzugreifen. write list bestimmt die User die auf dem Share schreiben
oder verändern dürfen. read list erlaubt oder verbietet halt das lesen.

Folgende Einträge geben an, mit welchen Unix­Berechtigungen Daten auf den Shares
geschrieben werden sollen. Unter Daten fallen auch Ordner.

force directory mode = 0750
directory mask = 0750
force create mode = 0750
create mask = 0750

Ich glaube mit diesen Angaben hat jeder nun schon einen kleinen überblick über
dass, was mit dem Samba­Server möglich ist und wie ich es hier eingesetzt habe.

 

 

 

CAcert in Firefox

Veraltet: CAcert-Zertifikate wurden nie in die Standard-Truststores der Browser aufgenommen. Kostenlose TLS-Zertifikate gibt es bei Let’s Encrypt.

CAcert ist eine feine Sache. Leider sind deren Root-Zertifikate noch nicht in allen Browsern und Programmen integrieret.

Ich habe mir nun Gedanken dazu gemacht:

Wie schaffe ich es die CAcert-Root-Zertifikate in Anwendungen von Microsoft (Word, Outlook, Internetexplorer..) und Mozilla (Thunderbird, Firefox…) so zu integrieren das sie immer als vertrauenswürdig erkannt werden? Auch bei allen anderen Usern auf dem System und denen die später noch ein neues Konto bekommen…

Natürlich könnte ich bei jedem User die Zertifikate einzeln mit der Hand importieren und als vertrauenswürdig einstufen.  Es ist aber sehr aufwändig und bestimmte User haben damit ein, nennen wir es Problem! Es muss also automatisch gehen.

Für die Microsoftprodukte habe ich eine einfache Lösung gefunden. Mit >>dieser<< Regestrierungsdatei werden die CAcert-Root-Zertifikate automatisch ins System übernommen. Ab diesem Moment sind in allen Microsoftanwendungen, bei allen Usern (vorhandenen und neuen) eines Systems die Zertifikate gültig.

Bei Mozilla ist es nicht ganz so einfach. Hier geht es am einfachsten so:

!!Firefox sollte noch nicht auf dem System installiert sein!!

Zuerst besorgt man sich die Installationsdatei für den Firefox. Am einfachsten wohl hier:  http://www.mozilla-europe.org/de/firefox/

CAcert certificate import in Firefox, step 1

Dann installiert man den Firefox wie gewohnt, startet ihn und importiert die CAcert-Root-Zertifikate als vertrauenswürdig. Jetzt Firefox zu machen und lassen! Bisher alles klar und einfach. Aber nun…

CAcert certificate import in Firefox, step 2

Jetzt sucht man unter: Dokumente und Einstellungen\seinUsername\Anwendungsdaten\Mozilla\Firefox\Profiles\irgendwas.default\ die Datei cert8.db. Gefunden? Gut… Merken wo!

CAcert certificate import in Firefox, step 3

Jetzt das Firefoxinstallerpacket entpacken. Am einfachsten vielleicht mit WinRAR.

CAcert certificate import in Firefox, step 4

Nun kopiert man die cert8.db in den, gerade entpackten Ordner, Firefox Setup 3.0.1\localized\defaults\profile\

CAcert certificate import in Firefox, step 5

Startet man nun die Firefoxinstallation über die setup.exe sind die CAcert-Root-Zertifikate immer automatisch im Firefox integriert. Da immer wenn ein User das erste mal den Firefox startet, sein default Profile zusammengestellt wird. Es wird also immer die cert8.db mit in sein Profil kopiert. In dieser liegen die Zertifikate. Also auch unserer importierten CAcert-Root-Zertifikate. Dieses Packet könnte man nun immer für seine Installationen nutzen und vielleicht auch weitergeben. Will man allen existierenden Usern die Zertifikate unterschieben, muss man einfach nur die cert8.db in dessen Ordner packen (Dokumente und Einstellungen\seinUsername\Anwendungsdaten\Mozilla\Firefox\Profiles\irgendwas.default\).

So funktioniert es auch unter Thunderbird. Bei Linux funktioniert es auch über diese Datei.

Ich diese Infos helfen dem Einen oder Anderen. Wenn noch jemand Infos dazu hat, freue ich mich natürlich über zuschriften!

Fragen? Einfach melden.

Neuere Beiträge »

© 2026 -=Kernel-Error=-RSS

Theme von Anders NorénHoch ↑