You find all my knowledge on GitHub in form of Bash and PHP scripts and Markdown documents.
Updated daily as I work.
- Too much of a website
- Web application development
- Setting up your infrastructure and your application
- All things WordPress
- WordPress Security
- Running Laravel
- Running Drupal
- Monitoring on paranoid level
- Continuous Integration and Continuous Delivery
- Debian setup on UpCloud server including Resize root filesystem during boot
- Live list of Hostile networks
- Bulk mail sending
- Csapatának tagja szeretnék lenni
- Ismerkedés Új ügyfelekkel
- Teljesítménycentrikus webhely tervezése
- Honlap jogi dolgai + GDPR
- Kézi Tesztelési Kézikönyv
- Képek életciklusa
- Magyar email szolgáltatók
(direct) / (none)
Google Analytics-ben- Google Analytics URL készítő
Install Debian on UpCloud
How UpCloud was chosen? Read https://github.com/szepeviktor/wordpress-speedtest/blob/master/README.md#how-to-choose-vps-provider
Richard Cook at Velocity NY 2013
- /debian-setup - Debian installation scripts including debian-setup.sh
- /backup - Tools related to archiving
- /image - Tools related to image optimization
- /input - Tools related to the terminal
- /mail - Tools related to email account management
- /monitoring - Tools related to server monitoring, alert and statistics emails
- /mysql - Tools related to database management
- /package - Tools related to Debian packages and general packaging
- /security - Security and SSL certificate related tools
- /tools - Various small tools
- /virtualization - Docker containers
- /webserver - Tools related to building webservers
Select Expert install.
- Check shell scripts: http://www.shellcheck.net/
- Code styling: https://github.com/git/git/blob/master/Documentation/CodingGuidelines
- Bashism: https://wiki.ubuntu.com/DashAsBinSh
checkbashisms -f bash-script.sh
S="${HOME}/.ssh";mkdir --mode 0700 "$S";editor "${S}/authorized_keys"
ssh-keygen -v -l -f "${S}/authorized_keys"
authorized_keys
parameters:
# restrict == no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty,no-user-rc
restrict,command="echo 'Please login as the user \"debian\" rather than the user \"root\".';echo;sleep 10" ssh-rsa AAAA...
u bash -c 'S="${HOME}/.ssh";mkdir --mode 0700 "$S";editor "${S}/authorized_keys"'
U="$(stat -c %U .)";S="$(getent passwd $U|cut -d: -f6)/.ssh";mkdir -m 0700 "$S";editor "${S}/authorized_keys";chown -R $U:$U "$S"
ssh-keygen -y -f ~/.ssh/id_ecdsa
printf 'host: %s\nport: %s\nuser: %s\n' "$(hostname)" "$(/usr/sbin/sshd -T|sed -ne 's/^port \([0-9]\+\)$/\1/p')" "$(ls -tr /home/|tail -n1)"
ls /etc/ssh/ssh_host_*_key.pub | xargs -n 1 ssh-keygen -l -f
script --timing=NAME.time --append NAME.script
scriptreplay --maxdelay 1 NAME.time NAME.script
Use magic-wormhole
cat $SCRIPT|xz -9|base64 -w $((COLUMNS-1))
# alias: cat $SCRIPT | transit
cat $PASTED_FILE|base64 -d|xz -d > $SCRIPT
# alias: cat $PASTED_FILE | transit-receive
git init --separate-git-dir=/home/user/gitdir
Produces:
/home/user/work-dir/.git: gitdir: /home/user/git
/home/user/gitdir/config: worktree = /home/user/work-dir
echo "- - -" > /sys/class/scsi_host/host0/scan
https://google-public-dns.appspot.com/cache
https://staticaly.com/ https://cdn.staticaly.com/gh/USER/REPO/TAG/FILE
whois -h whois.iana.org $TLD
https://www.iana.org/domains/root/dbdig _nicname._tcp.$TLD SRV
https://tools.ietf.org/html/draft-sanz-whois-srv-01- https://github.com/rfc1036/whois/blob/next/tld_serv_list
whois -h whois.radb.net -- "-i origin AS202053"
whois -h whois.bgpmon.net 94.237.81.0
.---------------- minute (0 - 59)
| .-------------- hour (0 - 23)
| | .----------- day of month (1 - 31)
| | | .--------- month (1 - 12)
| | | | .------- day of week (0 - 6)
| | | | |
* * * * * USER COMMAND
crontab -e -u USER
.---------------- minute (0 - 59)
| .-------------- hour (0 - 23)
| | .----------- day of month (1 - 31)
| | | .--------- month (1 - 12)
| | | | .------- day of week (0 - 6)
| | | | |
* * * * * COMMAND
# Well before the actual execution time!
00 06 * * * echo "/bin/ls -l" | at "$(date --date='TZ="Europe/Budapest" 10:30' "+\%H:\%M")" 2>/dev/null
Contact me: viktor@szepe.net