- [[English Lesson]]
	- https://www.reuters.com/world/china/china-warns-us-suffer-consequences-if-it-escalates-balloon-incident-2023-02-19/
	- https://uk.news.yahoo.com/ohio-derailment-live-train-broke-091235747.html
		- https://www.truthorfiction.com/trump-ohio-train-breaks-and-deregulation/
		- I find it quite disturbing that news about the "weather" balloon seem to be more important then the toxic train crash catastrophe in Ohio. Animals dropping dead as this ecological disaster unfolds really makes you feel sad. Regarding the train infrastructure in the U.S. the build back plan should be imposed and the reverted legaslation regarding brakes reinstated.
- Spotify #Software
	- Patching for Windows: https://github.com/amd64fox/SpotX
	- Android: https://github.com/xManager-App/xManager
- https://github.com/alex/what-happens-when
	- Interview Frage zu was passiert wenn man google.com in den Browser eingibt.
		- Frage wird auf mehreren Leveln beantwortet.
- Simplelogin
	- Use to create temporary email adresses
	  collapsed:: true
		- https://github.com/simple-login/app
			- ``` bash
			  #  generate a private and public key for DKIM:
			  openssl genrsa -out dkim.key 1024
			  openssl rsa -in dkim.key -pubout -out dkim.pub.key
			  ```
		- Set A-Record to IP of Oracle Instance ``152.67.84.147`` [[Cloud]]
		- Create MX-Record simplelogin.mexl.de
			- ![image.png](../assets/image_1676897492484_0.png)
			- ```bash
			  dig mexl.de mx
			  ```
			  ```
			  ;; ANSWER SECTION:
			  mexl.de.                18      IN      MX      10 simplelogin.mexl.de.
			  ```
		- DKIM - TXT Record
			- ```  bash
			  sed "s/-----BEGIN PUBLIC KEY-----/v=DKIM1; k=rsa; p=/g" $(pwd)/dkim.pub.key | sed 's/-----END PUBLIC KEY-----//g' |tr -d '\n' | awk 1
			  ``` 
			  ``` 
			  v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDKMSgDGFeKXZgLyUI/paUXvWNhFywntJov4xR1bATzY35Ys1OX2yVPhAkGzAbMW3t792gw3RqfMDXsj7nydaz2zPzoW7w7qMGOJKpg/NFTdM2FUm0UZNeL+EazJqcgRthwqBYpebYbpUaKYK/ZtpQeN1HMKQqBs7RI+i4Hwp3+zQIDAQAB
			  ```
			- ![image.png](../assets/image_1676897892931_0.png)
			- ```  bash
			  dig @1.1.1.1 dkim._domainkey.mexl.de txt
			  ```
			  ```
			  ;; ANSWER SECTION:
			  dkim._domainkey.mexl.de. 150    IN      TXT     "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDKMSgDGFeKXZgLyUI/paUXvWNhFywntJov4xR1bATzY35Ys1OX2yVPhAkGzAbMW3t792gw3RqfMDXsj7nydaz2zPzoW7w7qMGOJKpg/NFTdM2FUm0UZNeL+EazJqcgRthwqBYpebYbpUaKYK/ZtpQeN1HMKQqBs7RI+i4Hwp3+zQIDAQAB"
			  ```
		- SPF - TXT Record
		  collapsed:: true
			- ``` 
			  mexl.de
			  v=spf1 mx ~all
			  ```
		- DMARC - TXT Record
		  collapsed:: true
			- ``` 
			  _dmarc.mexl.de
			  v=DMARC1; p=quarantine; adkim=r; aspf=r
			  ```
		- Create Docker network
			- ``` bash
			  sudo docker network create -d bridge \
			      --subnet=10.0.0.0/24 \
			      --gateway=10.0.0.1 \
			      sl-network
			  ```
		- Postgress
			- docker-compose.yml
			  ``` yml
			  version: "3"
			  services:
			      sl-db:
			          image: postgres:12.1
			          container_name: sl-db
			          ports:
			              - "127.0.0.1:5432:5432"
			          volumes:
			              - ./sl/db:/var/lib/postgresql/data
			          environment:
			              - POSTGRES_PASSWORD=!oG3^fx!UMn%bazokfs9MSJoiD
			              - POSTGRES_USER=simplelogin
			              - POSTGRES_DB=simplelogin
			          restart: unless-stopped
			  networks:
			      default:
			          name: sl-network
			          external: true
			  ```
			- Test postgres
			  collapsed:: true
				- ``docker compose up -d``
				- ``docker compose run sl-db psql -U simplelogin simplelogin``
			- ``sudo apt-get install -y postfix postfix-pgsql -y``
			- /etc/postfix/main.cf
			  ``` 
			  # POSTFIX config file, adapted for SimpleLogin
			  smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
			  biff = no
			  
			  # appending .domain is the MUA's job.
			  append_dot_mydomain = no
			  
			  # Uncomment the next line to generate "delayed mail" warnings
			  #delay_warning_time = 4h
			  
			  readme_directory = no
			  
			  # See http://www.postfix.org/COMPATIBILITY_README.html -- default to 2 on
			  # fresh installs.
			  compatibility_level = 2
			  
			  # TLS parameters
			  smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
			  smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
			  smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
			  smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
			  smtp_tls_security_level = may
			  smtpd_tls_security_level = may
			  
			  # See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
			  # information on enabling SSL in the smtp client.
			  
			  alias_maps = hash:/etc/aliases
			  mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 10.0.0.0/24
			  
			  # Set your domain here
			  mydestination =
			  myhostname = simplelogin.mexl.de
			  mydomain = mexl.de
			  myorigin = mexl.de
			  
			  relay_domains = pgsql:/etc/postfix/pgsql-relay-domains.cf
			  transport_maps = pgsql:/etc/postfix/pgsql-transport-maps.cf
			  
			  # HELO restrictions
			  smtpd_delay_reject = yes
			  smtpd_helo_required = yes
			  smtpd_helo_restrictions =
			      permit_mynetworks,
			      reject_non_fqdn_helo_hostname,
			      reject_invalid_helo_hostname,
			      permit
			  
			  # Sender restrictions:
			  smtpd_sender_restrictions =
			      permit_mynetworks,
			      reject_non_fqdn_sender,
			      reject_unknown_sender_domain,
			      permit
			  
			  # Recipient restrictions:
			  smtpd_recipient_restrictions =
			     reject_unauth_pipelining,
			     reject_non_fqdn_recipient,
			     reject_unknown_recipient_domain,
			     permit_mynetworks,
			     reject_unauth_destination,
			     reject_rbl_client zen.spamhaus.org,
			     reject_rbl_client bl.spamcop.net,
			     permit
			  ```
			- /etc/postfix/pgsql-relay-domains.cf
			  
			  ``` 
			  # postgres config
			  hosts = localhost
			  user = simplelogin
			  password = !oG3^fx!UMn%bazokfs9MSJoiD
			  dbname = simplelogin
			  
			  query = SELECT domain FROM custom_domain WHERE domain='%s' AND verified=true
			      UNION SELECT '%s' WHERE '%s' = 'mydomain.com' LIMIT 1;
			  ```