| verwirrend | cool | verwirrend | cool | |
| <# | |
| .SYNOPSIS | |
| Outputs to a UTF-8-encoded file *without a BOM* (byte-order mark). | |
| .DESCRIPTION | |
| Mimics the most important aspects of Out-File: | |
| * Input objects are sent to Out-String first. | |
| * - Append allows you to append to an existing file, -NoClobber prevents | |
| overwriting of an existing file. | |
| * - Width allows you to specify the line width for the text representations |
| #!/usr/bin/env bash | |
| # | |
| # vserver-setup-debian.sh | |
| # Initial hardening/setup script for a fresh Debian 12/13 VPS. | |
| # | |
| # USAGE: | |
| # 1. Edit the CONFIG section below (username, SSH port, timezone, hostname). | |
| # 2. Put your SSH public key in SSH_PUBKEY, or have it in root's | |
| # authorized_keys already; the script refuses to run without one. | |
| # 3. Run as root: bash vserver-setup-debian.sh |
I hereby claim:
- I am dargmuesli on github.
- I am dargmuesli (https://keybase.io/dargmuesli) on keybase.
- I have a public key ASBwtIR5hr5ptYEqz_iJX0sDfbTEhLvlcPoJ_SncMQsojgo
To claim this, I am signing this object:
| #!/bin/bash | |
| # default | |
| sudo docker run -d -p 8000:8000 -p 9443:9443 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce | |
| # rootless | |
| docker run -d -p 8000:8000 -p 9443:9443 --name=portainer --restart=always -v "$XDG_RUNTIME_DIR/docker.sock:/var/run/docker.sock" -v portainer_data:/data portainer/portainer-ce |
| #!/bin/bash | |
| # Use evtest on last "Genius Wireless Mouse" device. | |
| cat >"/etc/udev/hwdb.d/90-custom-presenter.hwdb" <<EOL | |
| evdev:input:b0003v0458p0189* | |
| KEYBOARD_KEY_70051=space | |
| KEYBOARD_KEY_70052=p | |
| EOL | |
| sudo systemd-hwdb update | |
| sudo udevadm trigger |
Source: https://wiki.archlinux.org/title/Solid_state_drive/Memory_cell_clearing
Make sure SSD is not frozen.
sudo hdparm -I /dev/sdX | grep frozen
Enable security by setting a user password.
- https://csp-evaluator.withgoogle.com
- https://www.debugbear.com/resource-hint-validator
- https://developers.google.com/speed/pagespeed/insights
- https://observatory.mozilla.org
- https://realfavicongenerator.net
- https://search.google.com/search-console
- https://search.google.com/test/mobile-friendly
- https://securityheaders.com/
- https://tagassistant.google.com
- https://thinkwithgoogle.com/intl/de-de/feature/testmysite/
Within development of a DargStack, access to the web apps should be routed via the locally resolved domain [project_name].test and its subdomains.
Therefore one needs to configure the local DNS resolution to make this address resolvable.
This can either be done by simply adding this domain and all subdomains to the operation system's hosts file or by setting up a local DNS server.
An advantage of the latter method is that subdomain wildcards can be used and thus not every subdomain needs to be defined separately.
Here is an example configuration for dnsmasq that uses the local DNS server on top of the router's advertised DNS server:
Details
| #!/bin/bash | |
| # Dumps every swarm secret into a tar by mounting them all into a throwaway service. | |
| # The tar holds plaintext secrets: encrypt it before moving it off this host. | |
| set -euo pipefail | |
| umask 077 | |
| service_name="backup-all-secrets" | |
| out_dir="${1:-.}" | |
| tar_file="backup_$(date +"%Y%m%d-%H%M%S").tar" |