|
Install » LXD
|
cat << EXE | sudo bash
snap install lxd --channel=6/stable
usermod -aG lxd shahed
EXE
echo 'id -nG' | sudo -i -u shahed bash
systemctl status ufw
sudo iptables -S
sudo ufw status
sudo ufw enable
cat << EXE | sudo bash
ufw allow OpenSSH
ufw allow in on lxdbr0
ufw route allow in on lxdbr0
ufw route allow out on lxdbr0
EXE
sudo ufw status numbered
sudo iptables -S
cat << EXE | sudo bash
snap restart lxd
snap services lxd
EXE
lxc image ls images:alpine
lxc launch images:alpine/3.23 academia
lxc exec academia -- sh -c 'ping -c5 chorke.org'
lxc exec academia -- sh -c 'ping -c5 shahed.biz'
|
cat <<'YML' | sudo lxd init --preseed
---
config: {}
networks:
- config:
ipv4.address: 10.20.0.1/24
ipv4.nat: "true"
ipv6.address: auto
description: ""
name: lxdbr0
type: ""
project: default
storage_pools:
- config:
size: 5GiB
description: ""
name: lxd-zfs-pool-aa
driver: zfs
storage_volumes: []
profiles:
- config: {}
description: ""
devices:
eth0:
name: eth0
network: lxdbr0
type: nic
root:
path: /
pool: lxd-zfs-pool-aa
type: disk
name: default
projects: []
cluster: null
YML
|
|
Install » Docker
|
curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
| sudo tee /etc/apt/keyrings/docker.asc >/dev/null
DISTRIBUTION=$(. /etc/os-release && echo "${VERSION_CODENAME}")
cat << SRC | sudo tee /etc/apt/sources.list.d/docker.list >/dev/null
deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu ${DISTRIBUTION} stable
SRC
|
cat << EXE | sudo bash
apt-get update;echo
apt-cache policy docker-ce
apt list -a --upgradable;apt-get upgrade -y;echo
apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
apt-get clean cache && find /tmp -type f,s -atime +10 -delete
EXE
|
cat << EOF | sudo tee /etc/docker/daemon.json >/dev/null
{
"bip" : "10.20.13.1/24",
"mtu" : 1500,
"dns" : [
"1.1.1.1",
"8.8.8.8"
],
"debug": true
}
EOF
|
|
cat << EXE | sudo bash
systemctl stop docker.socket
systemctl stop docker.service
systemctl start docker.service
usermod -aG docker shahed
EXE
|
docker network ls
echo 'id -nG' | sudo -i -u shahed bash
cat <<'EXE' | docker run --rm -i alpine sh
echo
cat /etc/resolv.conf ;echo
ping -c3 chorke.org ;echo
EXE
|
|
Install » Pi-hole
|
ssh -i ~/.ssh/cid.chorke.org_ed25519 -qt shahed@192.168.10.2 bash
sudo su
cd /opt/ && wget -O basic-install.sh https://install.pi-hole.net
sudo bash basic-install.sh
ls -ahl /opt/pihole/
pihole setpassword
|
cat << EXE | sudo bash
ufw allow 53
ufw allow 80/tcp
ufw allow 443/tcp
ufw status numbered
EXE
|
|
Pi-hole » Config
|
echo ;\
sudo pihole-FTL --config dns.upstreams
# pihole-FTL --config dns.upstreams '[]'
sudo pihole-FTL --config dns.upstreams '[
"1.1.1.1",
"8.8.8.8"
]'
|
echo ;\
sudo pihole-FTL --config dns.revServers
# pihole-FTL --config dns.revServers '[]'
sudo pihole-FTL --config dns.revServers '[
"true,192.168.10.0/24,192.168.10.2,biz.otg",
"true,192.168.49.0/24,192.168.49.110,biz.ops"
]'
|
echo ;\
sudo pihole-FTL --config dns.hosts
# pihole-FTL --config dns.hosts '[]'
sudo pihole-FTL --config dns.hosts '[
"10.20.40.1 aa.shahed.shahed.biz.otg",
"10.20.40.2 aa.shahed.shahed.biz.otg",
"10.20.41.1 aa.hetzner.shahed.biz.otg",
"10.20.41.2 ab.hetzner.shahed.biz.otg",
"192.168.10.1 gw.shahed.biz.otg",
"192.168.10.3 ab.shahed.biz.otg",
"192.168.10.4 ac.shahed.biz.otg",
"192.168.10.2 ns0.shahed.biz.otg",
"192.168.49.110 ns0.shahed.biz.ops",
"192.168.49.102 pgsql.shahed.biz.ops",
"192.168.49.100 kafka.shahed.biz.ops",
"192.168.49.101 mariadb.shahed.biz.ops"
]'
|
echo ;\
sudo pihole-FTL --config misc.dnsmasq_lines
# pihole-FTL --config misc.dnsmasq_lines '[]'
sudo pihole-FTL --config misc.dnsmasq_lines '[
"address=/biz.otg/192.168.10.2",
"address=/com.otg/192.168.10.2",
"address=/org.otg/192.168.10.2",
"address=/bd.ops/192.168.49.110",
"address=/io.ops/192.168.49.110",
"address=/my.ops/192.168.49.110",
"address=/biz.ops/192.168.49.110",
"address=/com.ops/192.168.49.110",
"address=/k8s.ops/192.168.49.110",
"address=/org.ops/192.168.49.110",
"address=/group.ops/192.168.49.110",
"dhcp-option=6,192.168.10.1"
]'
|
echo ;\
sudo pihole-FTL --config dns.cnameRecords
# pihole-FTL --config dns.cnameRecords '[]'
sudo pihole-FTL --config dns.cnameRecords '[
"bd.ops,ns0.shahed.biz.ops",
"io.ops,ns0.shahed.biz.ops",
"my.ops,ns0.shahed.biz.ops",
"biz.ops,ns0.shahed.biz.ops",
"com.ops,ns0.shahed.biz.ops",
"k8s.ops,ns0.shahed.biz.ops",
"org.ops,ns0.shahed.biz.ops",
"biz.otg,ns0.shahed.biz.otg",
"group.ops,ns0.shahed.biz.ops",
"k8s.shahed.biz.ops,www.k8s.ops",
"host.shahed.biz.ops,host.k8s.ops",
"dev.shahed.biz,ns0.shahed.biz.ops",
"pihole.shahed.biz.ops,ns0.shahed.biz.ops",
"psql.shahed.biz.ops,pgsql.shahed.biz.ops",
"mysql.shahed.biz.ops,mariadb.shahed.biz.ops"
]'
|
printf '\n\e[1;37mCompatibility:\e[0m\n:'
sudo pihole-FTL --config misc.etc_dnsmasq_d
sudo pihole-FTL --config misc.etc_dnsmasq_d false
nslookup ab.shahed.biz.otg
nslookup kafka.shahed.biz.ops
nslookup mariadb.shahed.biz.ops
ping -c3 192.168.10.1
ping -c3 192.168.10.2
dig +short @192.168.10.2 -x 192.168.10.1
dig +short @192.168.10.2 gw.shahed.biz.otg
ping -c3 192.168.49.110
dig +short @192.168.49.110 -x 192.168.49.110
dig +short @192.168.49.110 pihole.shahed.biz.ops
ping -c3 192.168.49.100
dig +short @192.168.49.110 -x 192.168.49.100
dig +short @192.168.49.110 kafka.shahed.biz.ops
|
|
Pi-hole » Config » Legacy
|
echo;\
sudo cat /etc/addn-hosts;
cat <<'INI' | \
sudo tee /etc/addn-hosts >/dev/null
10.20.40.1 aa.shahed.shahed.biz.otg
10.20.40.2 aa.shahed.shahed.biz.otg
10.20.41.1 aa.hetzner.shahed.biz.otg
10.20.41.2 ab.hetzner.shahed.biz.otg
192.168.10.1 gw.shahed.biz.otg
192.168.10.3 ab.shahed.biz.otg
192.168.10.4 ac.shahed.biz.otg
192.168.10.2 ns0.shahed.biz.otg
192.168.49.110 ns0.shahed.biz.ops
192.168.49.102 pgsql.shahed.biz.ops
192.168.49.100 kafka.shahed.biz.ops
192.168.49.101 mariadb.shahed.biz.ops
192.168.49.103 pgbouncer.shahed.biz.ops
INI
|
echo;\
sudo cat /etc/dnsmasq.d/02-custom.conf;
cat <<'INI' | \
sudo tee /etc/dnsmasq.d/02-custom.conf >/dev/null
addn-hosts=/etc/addn-hosts
address=/biz.otg/192.168.10.2
address=/com.otg/192.168.10.2
address=/org.otg/192.168.10.2
address=/bd.ops/192.168.49.110
address=/io.ops/192.168.49.110
address=/my.ops/192.168.49.110
address=/biz.ops/192.168.49.110
address=/com.ops/192.168.49.110
address=/k8s.ops/192.168.49.110
address=/org.ops/192.168.49.110
address=/group.ops/192.168.49.110
dhcp-option=6,192.168.10.1
INI
|
echo;\
sudo cat /etc/dnsmasq.d/05-pihole-custom-cname.conf;
cat <<'INI' | \
sudo tee /etc/dnsmasq.d/05-pihole-custom-cname.conf >/dev/null
cname=bd.ops,ns0.shahed.biz.ops
cname=io.ops,ns0.shahed.biz.ops
cname=my.ops,ns0.shahed.biz.ops
cname=biz.ops,ns0.shahed.biz.ops
cname=com.ops,ns0.shahed.biz.ops
cname=k8s.ops,ns0.shahed.biz.ops
cname=org.ops,ns0.shahed.biz.ops
cname=biz.otg,ns0.shahed.biz.otg
cname=group.ops,ns0.shahed.biz.ops
cname=k8s.shahed.biz.ops,www.k8s.ops
cname=host.shahed.biz.ops,host.k8s.ops
cname=dev.shahed.biz,ns0.shahed.biz.ops
cname=pihole.shahed.biz.ops,ns0.shahed.biz.ops
cname=psql.shahed.biz.ops,pgsql.shahed.biz.ops
cname=mysql.shahed.biz.ops,mariadb.shahed.biz.ops
INI
|
printf '\n\e[1;37mCompatibility:\e[0m\n:'
sudo pihole-FTL --config misc.etc_dnsmasq_d
sudo pihole-FTL --config misc.etc_dnsmasq_d true
nslookup ab.shahed.biz.otg
nslookup kafka.shahed.biz.ops
nslookup mariadb.shahed.biz.ops
ping -c3 192.168.10.1
ping -c3 192.168.10.2
dig +short @192.168.10.2 -x 192.168.10.1
dig +short @192.168.10.2 gw.shahed.biz.otg
ping -c3 192.168.49.110
dig +short @192.168.49.110 -x 192.168.49.110
dig +short @192.168.49.110 pihole.shahed.biz.ops
ping -c3 192.168.49.100
dig +short @192.168.49.110 -x 192.168.49.100
dig +short @192.168.49.110 kafka.shahed.biz.ops
|
|
|