K.inc Tec Blog

Mein kleines EDV Logbuch

Initd startup script template

Folgendes Template nehme ich normalerweise als Vorlage für ein Initd Script. Habe das irgendwann mal so im Internet gefunden, weiß nicht mehr genau wo. Dürfte selbsterklärend sein.

#!/bin/bash
# chkconfig: 2345 20 80
# description: Description comes here....

# Source function library.
. /etc/init.d/functions

start() {
    # code to start app comes here 
    # example: daemon program_name &
}

stop() {
    # code to stop app comes here 
    # example: killproc program_name
}

case "$1" in 
    start)
       start
       ;;
    stop)
       stop
       ;;
    restart)
       stop
       start
       ;;
    status)
       # code to check status of app comes here 
       # example: status program_name
       ;;
    *)
       echo "Usage: $0 {start|stop|status|restart}"
esac

exit 0 

The format is pretty standard and you can view existing scripts in /etc/init.d. You can then use the script like so /etc/init.d/myscript start or chkconfig myscript start. The ckconfig man page explains the header of the script:

 > This says that the script should be started in levels 2,  3,  4, and
 > 5, that its start priority should be 20, and that its stop priority
 > should be 80.

The example start, stop and status code uses helper functions defined in /etc/init.d/functions

  1. Enable the script $ chkconfig --add myscript $ chkconfig --level 2345 myscript on
  2. Check the script is indeed enabled – you should see „on“ for the levels you selected. $ chkconfig --list | grep myscript

MariaDB installieren

sudo apt update
sudo apt install mariadb-server
sudo mysql_secure_installation

Wildcard SSL CSR mit OpenSSL

Für das Erstellen eines CSR benötigt man die folgenden Details:

  • Common Name Wildcard: Das ist der Domänenname (*.domäne.de)
  • Organization Name: Der offizielle Name des Unternehmens
  • Organizational Unit: Die Abteilung des Unternehmens, dem man angehört (IT)
  • Company Location: Die Adresse des unternehmens
  • E-Mail: Kontakt E-Mail Adresse
  • 2048 Bit Schlüssellänge
  • SHA-2 Signaturalgorythmus

Windows nicht löschbare Datei löschen

Manchmal erlebt man mit Windows kuriose Dinge. Admins die schon länger dabei sind kennen es noch von früher. Eine Datei lässt sich nicht löschen. Meistens liegt das daran, das sich die Datei durch einen Prozess im Zugriff befindet.

Es gibt aber auch den Fall, dass kein Prozess mehr auf die Datei zugreift. Irgendetwas im Dateisystem ist korrupt. Man erhält die Meldung die Datei wurde nicht gefunden oder bereits verschoben.

Früher konnte man sich über dir /X den 8.3 Namen der Datei anzeigen lassen und darüber die Datei löschen. Nun schalten Admins an Fileservern diese 8.3 Namen gerne ab.

HKLM\System\CurrentControlSet\Control\FileSystem\NtfsDisable8Dot3NameCreation=1 [DWORD] 

Weil das angeblich die Performance verbessert:

https://helgeklein.com/blog/why-disabling-the-creation-of-83-dos-file-names-will-not-improve-performance-or-will-it/

So und wie löscht man nun diese korrupten Dateien? So:

rd /s \\?\C:\Documents and Settings\User\Desktop\Annoying Folder.

AD Konto und Keytab für Single Sign On erzeugen

Eine KEYTAB-Datei wird verwendet, um einen Principal auf einem Host für Kerberos zu authentifizieren, ohne dass Benutzer eingreifen müssen (SSO). Die Datei ist verschlüsselt, sollte aber gut gesichert sein, da jeder, der Zugriff auf die Datei hat, als dieser Principal fungieren kann.

Mit einer solchen Datei kann also zum Beispiel der Zugang zu einem Webdienst über AD-Konten gesteuert werden. Sind die Brwoser entsprechend konfiguriert, können AD-Benutzer Webdienste sogar ohne die Eingabe von Zugangsdaten über Single Sign On (SSO) nutzen.

Raspi Notizen

Lichter Abschalten

sudo vi /boot/config.txt


#LinkLED 
dtparam=eth_led0=14
dtparam=eth_led1=14

#PiCam
disable_camera_led=1

Rote und Grüne LED ausschalten am Raspi

For the Raspberry Pi 3b you can add the following lines to /etc/rc.local:

sudo sh -c 'echo none > /sys/class/leds/led0/trigger'
sudo sh -c 'echo none > /sys/class/leds/led1/trigger'
sudo sh -c 'echo 0 > /sys/class/leds/led0/brightness'
sudo sh -c 'echo 0 > /sys/class/leds/led1/brightness'

Adminrechte trotz Point and Print nach Printingnightmare

Microsoft hat sich dazu endlich mal geäußert. Die Restriktionen fingen wegen der Printingnightmare-Lücke an. Microsoft hat einfach auch Adminrechte für die Treiberinstallation verlangt, obwohl Point and Print konfiguriert ist und die Treiberquellen damit auf die Druckserver beschränkt sind. Das kam mit dem 2. Sicherheitsupdate zu Printingnightmare. Dann haben die einen Registry-Wert eingeführt, mit dem man diese Einschränkung wieder aufheben kann. Und den Wert haben die nun endlich auch mal verraten.

Apache als SSL Reverse Proxy mit ModSecurity

Ein Reverse Proxy hat wesentliche Vorteile gegenüber direkt von außen erreichbaren Webseiten:

  1. Webserver sind nicht über IP Adresse erreichbar.
  2. Durch die Weiterleitung per Namensauflösung benötigt man nur eine externe IP und kann damit mehrere Webserver nach außen hin anbieten.
  3. Auf dem Reverse-Proxy können zerntral Sicherheitsfeatures implementiert werden.

Juniper CLI

https://www.juniper.net/documentation/us/en/software/junos/cli/index.html

show virtual-chassis
show virtual-chassis status
show virtual-chassis vc-port
show lacp interfaces

Interfaces Konfigurieren (eine Default Gruppe und eine für Trunk Ports)

#### DEFAULT CONFIG #####

set groups default-interface-config interfaces <*> apply-macro juniper-port-profile "Desktop and Phone"
set groups default-interface-config interfaces <*> speed auto
set groups default-interface-config interfaces <*> ether-options auto-negotiation
set groups default-interface-config interfaces <*> unit <*> family ethernet-switching interface-mode access
set groups default-interface-config interfaces <*> unit <*> family ethernet-switching vlan member default

#### WLAN CONFIG ####

set groups wifi-config interfaces <*> description WLAN
#set groups wifi-config interfaces <*> native-vlan-id 1
set groups wifi-config interfaces <*> speed auto
set groups wifi-config interfaces <*> ether-options auto-negotiation
set groups wifi-config interfaces <*> unit <*> family ethernet-switching interface-mode trunk
set groups wifi-config interfaces <*> unit <*> family ethernet-switching vlan members [default wifi_gast wifi_intern wifi_public]

#### Portzuweisungen ####

wildcard range delete interfaces ge-0/0/[0-23]
wildcard range set interfaces ge-0/0/[0-20] unit 0 family ethernet-switching interface-mode access # interface mode muss immer direkt gesetzt werden
wildcard range set interfaces ge-0/0/[0-20] apply-groups default-interface-config

wildcard range set interfaces ge-0/0/[21-23] unit 0 family ethernet-switching interface-mode trunk # interface mode muss immer direkt gesetzt werden
wildcard range set interfaces ge-0/0/[21-23] native-vlan-id 1 # wird über die group config nicht übernommen
wildcard range set interfaces ge-0/0/[21-23] apply-groups wifi-config

#show interfaces | display inheritance
# rollback # Änderungen verwerfen

commit check
commit



#### MAC Security ####
set switch-options interface ge-0/0/0 interface-mac-limit 7
set switch-options interface ge-0/0/0 interface-mac-limit packet-action drop


#### IPv6 Advertisement deaktivieren ####
# Die EX Serie Switches machen ein automatisches IPv6 Advertisement, auch wenn das nicht konfiguriert ist.

delete protocols router-advertisement

Support Logs erstellen

A) For standalone switch:

-issue the command #run request support information | save /var/tmp/RSI.txt

-issue the command #run file archive compress source /var/log/ destination /var/tmp/VARLOG

-do ftp or http to the switch in order to download the RSI.txt and the VARLOG files from the /var/tmp

directory then attach them to the case

B) For virtual-chassis:

-issue the command #run request support information all-members | save /var/tmp/RSI-All-Members.txt

-follow this KB in order to collect logs: https://kb.juniper.net/InfoCenter/index?page=content&id=KB15186

-do ftp or http to the switch in order to download the RSI-All-Members.txt and the VARLOG files from the /var/tmp directory then attach them to the case‘

Root Shell erlangen und Dateien runterladen

Follow the steps below to collect all the files from the /var/log directory of each member of a virtual chassis.

NOTE: You will need FTP, SSH, HTTP (JWEB) or USB access to the EX Switch to copy the logs from the Switch.

  1. Login to the EX Virtual Chassis (VC) using the management IP address or console. You will be logged into the primary switch of the EX Virtual Chassis. In this example, member 0 is the primary switch. {master:0} user@router>
  2. Login to the shell prompt as the root user. user@router> start shell user root
  3. Use the „tar“ command to compress the folder /var/log and its contents.  The file will be saved to /var/tmp directory root% tar -zcvf /var/tmp/varlog-mem0.tar.gz /var/log/*
  4. Verify whether the tar.gz file has been created root% ls /var/tmp
    .ssh varlog-mem0.tar.gz
  5. Exit from the shell prompt using the command „exit“ and you will be placed on the CLI prompt of Primary switch {master:0}
    root% exit
  6. Request a session to the next member of the virtual chassis using its member ID.  To verify which member you are connected to, use the „show virtual chassis“ command and it will display an asterisk * next to the member you are connected to. root> request session member 1
  7. Login to the shell as the root user root> start shell user root
  8. Use the „tar“ command to compress the folder /var/log and its contents. root% tar -zcvf /var/tmp/varlog-mem1.tar.gz /var/log/*
  9. Verify whether the tar.gz file has been created root% ls /var/tmp
    .ssh varlog-mem1.tar.gz
  10. Go to the CLI of current member to copy the member log files to primary. root% cli
  11. Execute the file copy command to copy the tar.gz file from the current member switch to the /var/tmp directory on primary switch root> file copy fpc1:/var/tmp/varlog-mem1.tar.gz fpc0:/var/tmp/
  12. Exit from the current member session. Now you will be logged back into the Primary switch. root> exit
  13. Repeat steps 6 through 12 by changing the member id until all the member logs are loaded to the primary switch. Be sure to name each file according the member id to easily identify.

Now the files can be directly copied from the EX Virtual Chassis primary to any local host using ftp, scp, JWEB, or mounted USB.

NOTE: FTP, SSH and HTTP are configured under the ’system services‘ stanza.  See Related Links below.

Kimchi

https://biancazapatka.com/de/wprm_print/36435

Zutaten

Kohl

  • 1,4 kg Chinakohl oder Spitzkohl, Wirsing, Weisskohl
  • 40 g Meersalz

Reis-Paste

  • 160 ml kalte Gemüsebrühe oder Wasser
  • 2-3 EL Reismehl
  • 2-3 EL Rohrohr-Zucker oder anderer Zucker

Gemüse

  • 200 g weißer Rettich geraspelt, oder Radieschen
  • 1 Karotte ca. 100g, geraspelt
  • 2 Frühlingszwiebeln in feinen Streifen geschnitten
  • 1 Schalotte gehackt
  • 6 große Knoblauchzehen gehackt
  • 3 cm Ingwer gerieben, oder Galgant/Kurkuma

Marinade

  • 30 ml Sojasauce oder Tamari (glutenfrei)
  • 50 g Chilliflocken z.B. Gochugaru
  • 40 g rotes Paprikapulver
  • 1 Nashi Birne oder Apfel, gerieben

Anleitungen 

  • *Hinweis: Siehe schritt-für-Schritt Bilder oben im Beitrag!

Kohl

  • Den Chinakohl teilen, vierteln und in mundgerechte Stücke schneiden. Dann in ein Küchensieb geben und gründlich unter fließendem kaltem Wasser auswaschen. Anschließend ein wenig abtropfen lassen und in eine große Schüssel/ Form geben. Mit dem Salz vermengen und für mindestens 30 Minuten bis zu 2 Stunden bei Raumtemperatur ruhen lassen, bis er weich ist.

Reis-Paste

  • In einem kleinen Topf, die kalte Gemüsebrühe und das Reismehl mit einem Schneebesen verquirlen. Das Reismehl-Brühe-Gemisch aufkochen und solange unter Rühren köcheln, bis es eindickt. Dann den Rohrohrzucker einrühren, sodass er sich auflöst. Anschließend beiseitestellen und abkühlen lassen.

Gemüse

  • Frühlingszwiebeln waschen, putzen und in feine Ringe schneiden. Karotte, Rettich und Apfel (optional) entweder in sehr feine Streifen schneiden oder mit einer Gemüseraspel fein reiben.

Marinade

  • Ingwer, Zwiebel und Knoblauch schälen. Dann mit der Nashi Birne, Chilliflocken, Paprikapulver, Sojasauce und Reis-Paste in einen Mixer geben und alles glatt pürieren.

Kimchi zubereiten

  • Sobald der Kohl weich ist, unter fließendem Wasser abspülen, in einem Sieb gut abtropfen lassen und ggf. in einer Salatschleuder vom Wasser befreien oder trocken tupfen.
  • Den Chinakohl zurück in die Schüssel/ Form geben. Das Gemüse und die Marinade hinzugeben und alles gut vermengen. Anschließend in saubere Einmachgläser füllen und fest an den Boden drücken, sodass das Kimchi ohne Luft verpackt ist. (Ggf. mit etwas Salzwasser auffüllen, da das Gemüse mit ausreichend Flüssigkeit bedeckt sein soll).

Fermentieren

  • Das Kimchi entweder sofort servieren oder für 2-3 Tage bei Zimmertemperatur luftdicht verschlossen fermentieren lassen. Danach in den Kühlschrank stellen. Dort ist er mindestens 2 Monate haltbar.
  • Guten Appetit!

Notizen

  • Dieses Rezept ergibt ca. 1,3 kg (1920 ml) Kimchi. Dies entspricht etwa 8 Tassen je 160 g.
  • Je nach Umgebungstemperatur verläuft die Fermentation schneller oder dauert länger. Wer das Kimchi etwas säuerlicher mag, lässt die Fermentation länger laufen. Für einen milden Geschmack, die Gärzeit verkürzen. Beachte, dass die Fermentation trotz Kühlung langsam weiterläuft.
  • Am besten schmeckt er in den ersten Tagen nach der Fermentation.
  • Weitere Informationen zur Fermentation und hilfreiche Tipps zum Rezept findest du oben im Blogbeitrag!

Seite 4 von 24

Präsentiert von WordPress & Theme erstellt von Anders Norén