6 Commits
Author SHA1 Message Date
andonome ed9ef924d3 note recutils example command 2025-03-21 01:51:31 +01:00
andonome e0be97277a fix container and host names 2025-03-20 23:38:11 +01:00
andonome 13253824c6 rework routers 2025-03-20 22:35:49 +01:00
andonome 26ffee17be names and places 2025-03-20 22:29:28 +01:00
andonome f60153aca6 expand network db 2025-03-20 22:20:14 +01:00
andonome 7d66d5c55e basic network db 2025-03-20 22:05:41 +01:00
57 changed files with 111 additions and 756 deletions
+34 -53
View File
@@ -1,77 +1,58 @@
ignore_file = .git/info/exclude
.PHONY: help .PHONY: help
help: ## Print the help message help: ## Print the help message
@awk 'BEGIN {FS = ":.*?## "} /^[0-9a-zA-Z._-]+:.*?## / {printf "\033[36m%s\033[0m : %s\n", $$1, $$2}' $(MAKEFILE_LIST) | \ @awk 'BEGIN {FS = ":.*?## "} /^[0-9a-zA-Z._-]+:.*?## / {printf "\033[36m%s\033[0m : %s\n", $$1, $$2}' $(MAKEFILE_LIST) | \
sort | \ sort | \
column -s ':' -t column -s ':' -t
.PHONY: check map.txt: map.ge ## Making map.txt
check: ## Check you have all dependencies grep -v '# unimportant' $< | graph-easy --boxart > $@
@command -v graph-easy >/dev/null || { echo "Install perl-graph-easy" && exit 1 ;} cat $@
@command -v recsel >/dev/null || { echo "Install recutils" && exit 1 ;}
@command -v lowdown >/dev/null || { echo "Install lowdown" && exit 1 ;}
@echo "All dependencies installed"
########## Network Map ########## full_map.txt: map.ge ## Generating full_map.txt with graph-easy
graph-easy --boxart < $< > $@
cat $@
graph_program != type graph-easy > /dev/null && printf graph-easy || printf dot ########## Man Pages ##########
graph_cmd = graph-easy --boxart mandir = $(HOME)/.local/man/man6
queries = queries authqueries kralizec_docs != grep -rl "^section:" kralizec
kralmans = $(kralizec_docs:kralizec/%/README.md=$(mandir)/%.6)
query_formats = $(patsubst %, .dbs/%.txt, $(queries)) $(mandir)/%.6: kralizec/%/README.md
lowdown -stman $< > $@
dotquery_formats = $(patsubst %, .dbs/%.dot, $(queries)) krov_docs != grep -rl "^section:" krov
krovmans = $(krov_docs:krov/%/README.md=$(mandir)/%.6)
.dbs/: | $(ignore_file) $(mandir)/%.6: krov/%/README.md
mkdir $@ lowdown -stman $< > $@
ignored += .dbs/ splint_docs != grep -rl "^section:" splintrs
splintmans = $(splint_docs:splintrs/%/README.md=$(mandir)/%.6)
$(query_formats): .dbs/%.txt: | .dbs/ $(mandir)/%.6: splintrs/%/README.md
echo "[ {{name}} ] -- $(basename $(@F)) --> [ {{$(basename $(@F))}} ]" > $@ lowdown -stman $< > $@
$(dotquery_formats): .dbs/%.dot: | .dbs/ setup_docs != grep -rl "^section:" setup
echo '{{name}} -> {{$(basename $(@F))}} [ label="$(basename $(@F))" ];' > $@ setupmans = $(setup_docs:setup/%.md=$(mandir)/%.6)
ifeq ($(graph_program),dot) $(mandir)/%.6: setup/%.md
map_file = network.png lowdown -stman $< > $@
else
map_file = network.txt
endif
ignored += $(map_file) $(mandir):
mkdir -p $@
.PHONY: map $(kralmans) $(krovmans) $(splintmans) $(setupmans) :| $(mandir)
map: $(map_file) ## Generate a network map
network.txt: .dbs/network.txt .PHONY: pages
$(graph_cmd) < $< pages: $(kralmans) $(krovmans) $(setupmans) $(splintmans)
$(info $(kralmans))
.dbs/network.txt: network.rec $(query_formats) @test ! $(command -v mandb) || mandb --user-db
$(RM) $@ $(info Open DMZ's man pages with 'man 6 <tab>')
$(foreach relation, $(queries), \
recsel $< -t lxc -e "$(relation) != ''" -p name,$(relation) | recfmt -f .dbs/$(relation).txt >> $@ ;\
)
.dbs/network.dot: network.rec $(dotquery_formats)
echo 'digraph network {' > $@
$(foreach relation, $(queries), \
recsel $< -t lxc -e "$(relation) != ''" -p name,$(relation) | recfmt -f .dbs/$(relation).dot >> $@ ;\
)
echo '}' >> $@
network.png: .dbs/network.dot $(ignore_file)
dot -T png < $< > $@
########## ##########
$(ignore_file): $(MAKEFILE_LIST)
echo $(ignored) | tr ' ' '\n' > $@
clean: clean:
$(RM) -r $(ignored) $(RM) $(kralmans) $(krovmans)
+8 -39
View File
@@ -2,11 +2,6 @@ These setup files provide the text-only configurations for DMZ.
*It should not contain private data.* *It should not contain private data.*
# Dependencies
- `recutils`
- (optional) `graph-easy` (the package may be called `perl-graph-easy`)
# Aspirations # Aspirations
- Each service should reside in its own directory. - Each service should reside in its own directory.
@@ -27,53 +22,27 @@ Try these commands:
Ask what types of _rec_ords it contains: Ask what types of _rec_ords it contains:
## Database
```sh ```sh
recinf network.rec recinf network.rec
``` ```
### Select queries
Select with `recsel`, then specify the database (.rec) and type of record (like table in db).
- `--include-descriptors` or `-d`
- `--type` or `-t`
- `--expression` or `-e`
- `--quick` or `-q`
```sh ```sh
recsel network.rec --type router recsel network.rec --type router
recsel network.rec --include-descriptors --type lxc
recsel network.rec -d -t lxc recsel network.rec -d -t lxc
recsel network.rec -d -t lxc --expression
recsel network.rec -t lxc --expression "name ~ 'nginx'"
recsel network.rec -t lxc --expression "name = 'nginx12'"
``` ```
User `-q` for a `--quick` selection, or `-e` for more precise selections.
```sh
recsel network.rec --type lxc --quick wiki
recsel network.rec -t lxc -q nginx
recsel network.rec -t lxc -e "name ~ 'nginx'"
recsel network.rec -t lxc -e "name = 'nginx12'"
```
### Insert queries
Insert a new record with `recins`.
```sh
recins network.rec -t lxc -r "name: bob" -r "service: bob" -r "host: moxx"
```
### Update queries
If you can select something, you can also set its fields with `recset`. If you can select something, you can also set its fields with `recset`.
Use `-f` to set the `--field`, and `-a` to `--add`, or `-s` to `--set`. Use `-f` to set the field, and `-a` to add, or `-s` to set.
```sh ```sh
recset network.rec -t lxc -e "name = 'nginx12'" -f proxies -a soft-serve recset network.rec -t lxc --expression "name = 'nginx12'" -f proxies --add soft-serve
recsel network.rec -t lxc -e "name = 'nginx11'" -p proxies[0] recsel network.rec -t lxc --expression "name = 'nginx11'" -p proxies[0]
recset network.rec -t lxc -e" name = 'nginx11'" -f proxies[0] -s wiki9 recset network.rec -t lxc --expression "name = 'nginx11'" -f proxies[0] -s wiki9
``` ```
-34
View File
@@ -1,37 +1,3 @@
--- ---
VMID: 109 VMID: 109
--- ---
[project git](https://gitea.dmz.rs/Decentrala/luser)
runs on OpenBSD 71
make
- all:
- man:
- deb:
- clean:
## SYNOPSIS
**python3 run.py**
## Login - Register
Web app for adding,delating and modifying users using LDAP called `luser` - LdapUser
website redirects to those web pages
```sh
service luser restart
```
## Capcha script
...
## COPYRIGHT
**AGPLv3+**: GNU AGPL version 3 or later <https://gnu.org/licenses/agpl.html>
This is *free* software: you are free to change and redistribute it.
There is **NO WARRANTY**, to the extent permitted by law.
-30
View File
@@ -1,30 +0,0 @@
---
VMID: 119
---
## Data
`/var/discourse/shared/web_only/`
## Web
`/var/discourse_docker/`
## Help
`/var/discourse_docker/discourse_doctor`
Latest update:
- The forum has been restored; images should load when clicked but may not display immediately.
- Resolved several problems sequentially: admin panel and updates were failing, Docker builds failed due to PostgreSQL 13, upgraded to 15.
- Restored from backup and created a new backup from the old SQL server, transferring data via PostgreSQL 15.
- Manually enabled the required vector extension on the new database because Discourse could not do it automatically.
- Docker container rebuild succeeded only after disabling the SSL template in the Docker configuration.
- After rebuild, the forum returned with new posts but login failed and media/files were missing.
- Uploaded files after May 1 were lost; database and uploads backups were found in the shared folder.
- Login issue was caused by a missing SSL template; resolved by setting up an Nginx reverseproxy with a selfsigned certificate on the forum VM, allowing SSL access through the main HTTP VM.
-3
View File
@@ -1,6 +1,3 @@
--- ---
VMID: 104 VMID: 104
--- ---
nginx server
-17
View File
@@ -1,17 +0,0 @@
---
VMID: 109
---
OpenBSD with ldap service
192.168.1.15
Restart the service
```sh
rcctl check ldapd
rcctl stop ldapd
rcctl start ldapd
```
-11
View File
@@ -1,14 +1,3 @@
--- ---
VMID: 105 VMID: 105
--- ---
Posgresql v13
- ejabberd (xmpp)
- discourse (forum)
root@192.168.1.28
other databases are migrated to posgresql12
-54
View File
@@ -1,54 +0,0 @@
---
VMID: 121
---
PostgreSql v15
port 5432
[installation wiki](https://wiki.debian.org/PostgreSql)
## Users
- ejabberd
- discorse
- gitea
- wiki
- replication
- xmppsqlkrov (not created)
- dmzrsflask (not created)
## Config for databases
- ejabberddb - `/etc/ejabberd/ejabberd.yml`
- discorsedb (forum11) `/etc/discorse_docker/containers/web_only.yml` and `-||-/data.yml`
- giteadb `/etc/gitea/app.ini`
- wikidb `/root/wiki/config.yml`
- replication
```sh
pg_dump -d <database> -f <file>
psql -U <user> -d <dababase> -f <dump.psql>
```
## Config file
`/etc/postresql/15main/postresql.conf`
changed listening_address from localhost to *
`/etc/postresql/15main/pg_hba.conf`
host all all all md5
add `/etc/ssl/certs/ssl-cert-snakeoil.pem` to `/etc/ssl/` on every service
## SSL
For wiki machine certificate pinging is setup
In config.yml on wiki machine, the certificate path for new sql server should be added
-2
View File
@@ -1,5 +1,3 @@
--- ---
VMID: 114 VMID: 114
--- ---
[wiki page](https://wiki.dmz.rs/en/sysadmin/ssh)
-56
View File
@@ -1,56 +0,0 @@
---
VMID: 103
---
[Wireguard VPN quickstart](https://www.wireguard.com/quickstart)
Check `dmzadmin` for `wireguard.gpg` to know who to contact for access
---
### Client config
Client config example
`x` is the assigned on the server as peer:
```conf
[Interface]
Address = 192.168.164.x/32
DNS = 1.1.1.1
MTU = 1420
SaveConfig = true
ListenPort = 51820
FwMark = 0xca6c
PrivateKey = <your_private_wg_key>
[Peer]
PublicKey = JP2FTHLUujkevz1kUymciLImsx1OX9ViUko7oPAIoiA=
AllowedIPs = 192.168.164.0/24, 192.168.1.0/24
Endpoint = 77.105.27.232:51820
PersistentKeepalive = 21
```
---
### Server config
New user/client needs to provide their wireguard `publickey` and new ip on the network needs to be assigned (`x`)
check the server config file `/etc/wireguard/wg0.conf` to find free address
```sh
sudo wg set wg0 peer <client_public_key> allowed-ips 192.168.164.x/32
```
---
Command to resolve IP clashing with current and wireguard network, if needed
```shell
ip route add <ip> dev <wg0>
```
- `ip` you want to resolve -> for wireguard VM 192.168.1.10
- `wg0` name of the wireguard config
-3
View File
@@ -17,6 +17,3 @@ VMID Name
111 taskmanager12 111 taskmanager12
112 stopreklamama12 112 stopreklamama12
##### Legend
12 -> debian 12
-2
View File
@@ -1,5 +1,3 @@
--- ---
VMID: 109 VMID: 109
--- ---
XMPP server, used for future decentralization
-23
View File
@@ -1,26 +1,3 @@
--- ---
VMID: 100 VMID: 100
--- ---
This VM is a reverse proxy, all serveces go through it and get their SSL certificates
## Creating new record
```sh
cd /etc/nginx/sites-available/ # configs are located here
vim.tiny pastebin.dmz.rs # using pastebin as example, copy existing one and edit it
ln -s /etc/nginx/sites-available/pastebin.dmz.rs /etc/nging/sites-enabled/pastebin.dmz.rs # creating link since file is the same
mkdir /var/www/pastebindmzrs # new dir where certificate will be validated
nginx -t # checking for errors
systemctl reload nginx.service # reloading the service for changes to apply, reset will work too
service nginx reload # alternative server reload
certbot certonly --webroot -w /var/www/pastebindmzrs -d pastebin.dmz.rs -d pastebin.decentrala.org # requesting the certificates
```
## renewal
```sh
ls /var/www/
cd /etc/letsencrypt/renewal
certbot renew
```
-3
View File
@@ -1,6 +1,3 @@
--- ---
VMID: 112 VMID: 112
--- ---
This container is for hosting the [website](https://gitea.dmz.rs/svitvojimilioni/stopreklamama)
hosted on domen `stopreklamama.dmz.rs`
-5
View File
@@ -1,8 +1,3 @@
--- ---
VMID: 111 VMID: 111
--- ---
Old app for group task managment, [gitea project](https://gitea.dmz.rs/Decentrala/taskmanager)
Hosted on [todo.dmz.rs](https://todo.dmz.rs/)
Now using soft.dmz.rs/fixme instead
-2
View File
@@ -1,5 +1,3 @@
--- ---
VMID: 103 VMID: 103
--- ---
In this container hosts the tor onion service, used for remote access to the proxmox, through tor.
-2
View File
@@ -1,5 +1,3 @@
--- ---
VMID: 105 VMID: 105
--- ---
Wireguard server for VPN access to krov network
+11 -35
View File
@@ -1,39 +1,15 @@
# List of containers # List of containers
# srv1 ## srv1
VMID Name VMID Name
100 ssh12 102 tor12
101 vukbox 103 dendrite
102 mad3v-container-postgresql 106 icecast12
103 nextcloud1 107 mariadb12
104 pentest 108 mpd12
105 dns12 109 ympd
106 cryptpad 111 sshfs11
107 cryptpad12 113 ollama12
108 ejabberd12 114 chatbot12
109 dante12 115 goodvibes12
111 postgresql12
112 gitea12
113 game12
114 coja-nginx
115 mad3v-container-1
116 hugo12
118 mumble
119 netstat-game12
120 privatebin12
121 searxng12
122 alpine-it-tools
123 test
124 jitsi12
---
### Hardware
Dell enterprise server
##### Legend
12 -> debian 12 lxc
-7
View File
@@ -1,7 +0,0 @@
---
VMID: 122
---
Installed with [proxmox helper scripts](https://community-scripts.github.io/ProxmoxVE/scripts?id=alpine-it-tools)
Plan to host it on tools.dmz.rs
+3
View File
@@ -0,0 +1,3 @@
---
VMID: 114
---
-13
View File
@@ -1,13 +0,0 @@
---
VMID: 106
---
Installed with [proxmox helper scripts](https://community-scripts.github.io/ProxmoxVE/scripts?id=cryptpad)
[Project page](https://cryptpad.org/)
Plan to host it on cryptpad.dmz.rs
cryptpad (106) is already on that subdomain, but it doesnt work
-5
View File
@@ -1,5 +0,0 @@
---
VMID: 108
---
XMPP server, practice for future decentralization of the service
@@ -1,9 +0,0 @@
---
VMID: 117
---
Installed with [proxmox helper scripts](https://community-scripts.github.io/ProxmoxVE/scripts?id=haos-vm)
[Forum descussion](https://forum.dmz.rs/t/automatizacija-krova/469)
+3
View File
@@ -0,0 +1,3 @@
---
VMID: 106
---
-9
View File
@@ -1,9 +0,0 @@
---
VMID: 124
---
Video converencing server. Zoom alternative.
[website](https://jitsi.org/)
Plan to host it on jitsi.dmz.rs, video.dmz.rs or else
-9
View File
@@ -1,9 +0,0 @@
---
VMID: 118
---
VOIP server, hosted on krov.dmz.rs
[website](https://www.mumble.info/)
-6
View File
@@ -1,6 +0,0 @@
---
VMID: 119
---
Open arena server, free clone of FPS Quake III Arena
Hosted on krov.dmz.rs:27960 for LAN Parties
-9
View File
@@ -1,9 +0,0 @@
---
VMID: 103
---
Plan for this services was to use the shared callendar with members of DC Krov
Register as a user is disabled, only admins can create the accounts
LDAP is not connected
-1
View File
@@ -1 +0,0 @@
Those serveces are not on the server
@@ -1,5 +0,0 @@
---
VMID: 114
---
[Forum discussion](https://forum.dmz.rs/t/jel-neko-u-krovu-bot/779)
-32
View File
@@ -1,32 +0,0 @@
Here should be the list of other containers on the server
## "Personal containers"
created on some of the sysadmin workshops, used for learning and practice, usually named by the nickname
- vukbox
- hugo12
- malin
- mad3v-container-postresql
- mad3v-container-1
- coja-nginx hosting [coja.krov.dmz.rs](https://coja.krov.dmz.rs/)
-
---
## Other
- pentest - created by fleka for CTF challange
---
## Containers with no info
Feel free to add info
- dante12
- dns12
- gitea12
- test
- game12
-5
View File
@@ -1,5 +0,0 @@
---
VMID: 111
---
Probably used as a testing ground for syncing the database, for future decentralization.
-10
View File
@@ -1,10 +0,0 @@
---
VMID: 120
---
Installed with [proxmox helper scripts](https://community-scripts.github.io/ProxmoxVE/scripts?id=privatebin)
[Project page](https://privatebin.info/)
Hosted on [subdomain on dmz](https://pastebin.dmz.rs/)
-10
View File
@@ -1,10 +0,0 @@
---
VMID: 121
---
Installed with [proxmox helper scripts](https://community-scripts.github.io/ProxmoxVE/scripts?id=searxng)
[Project git repo](https://github.com/searxng/searxng)
Hosted on [subdomain on dmz](https://search.dmz.rs/)
-8
View File
@@ -1,8 +0,0 @@
---
VMID: 100
---
SSH port from this container is forwarded on krov.dmz.rs
SSH access to other containers is done through this one with ssh jump, passwords are disabled, so only keys verification is used.
[wiki page](https://wiki.dmz.rs/en/sysadmin/ssh)
+3
View File
@@ -0,0 +1,3 @@
---
VMID: 111
---
+39
View File
@@ -0,0 +1,39 @@
# Network map of Decentrala. Use with:
# graph-easy --boxart < netmap.txt
(Mox
[ m_router ]{label: router ;}
[ wireguard ] --> [ m_nginx ]{label: nginx-11 ;}
[ wiki ] --> [ m_nginx ]
[ gitea ] --> [ m_nginx ]
[ tor11 ] --> [ m_nginx ] --> [ m_router ]
[ smtp ]
)
(Serverko
[ s_nginx ]{label: nginx-12 ;}
[ s_router ]{label: router ;}
[ s_nginx ] --> [ nextcloud ]
[ s_nginx ] --> [ tor12 ]
[ s_nginx ] --> [ s_router ]
)
(splint.rs # unimportant
[ soft-serve ] # unimportant
[ mail-cache ]# unimportant
) # unimportant
[ tor12 ] <..> [ onions ] <..> [ tor11 ]
[ m_router ] <..> [ BGP ] <..> [ madness ] <..> [ s_router ]
[ smtp ] <..> [ madness ]
[ madness ] <..> [ mail-cache ]# unimportant
[ A ]{label: "" ;}
[ B ]{label: "" ;}
[ C ]{label: "" ;}
[ D ]{label: "" ;}
[ onions ] <..> [ A ]
[ onions ] <..> [ B ]
[ A ] <..> [ C ]
[ B ] <..> [ D ]
(Sharks! [ D ])
+9 -12
View File
@@ -1,25 +1,25 @@
%rec: router %rec: router
%doc: Routers, or possibly modems?
name: ISP Router name: ISP Router
location: kralizec location: kralizec
ISP: Orion ISP: Orion
name: ISP Router
location: krov
ISP: Yettel
%rec: host %rec: host
%doc: These are the real machines, most of which run VMs or containters. %doc: These are the real machines, most of which virtualise.
%key: name %key: name
name: moxx name: moxx
location: kralizec location: kralizec
local_access: 192.168.1.200:8006
name: nimbus name: Serverko
location: xecut location: krov
description: raspberry pi
os: Arch Linux Aarm
%rec: lxc %rec: lxc
%doc: A container, usually on a Proxmox host. %doc: A container, usually on a Proxmox host
%type: host rec host %type: host rec host
name: nginx11 name: nginx11
@@ -34,10 +34,6 @@ proxies: dmzrs
name: LDAP name: LDAP
host: moxx host: moxx
name: dmzrs
host: moxx
note: hosts the dmz.rs website
name: website name: website
host: moxx host: moxx
authqueries: LDAP authqueries: LDAP
@@ -88,3 +84,4 @@ host: Serverko
name: tor12 name: tor12
host: nginx host: nginx
-5
View File
@@ -1,5 +0,0 @@
#!/bin/bash
echo $(shuf shared/english.txt | head) | sed "s/ //g"
+1
View File
@@ -56,6 +56,7 @@ Now all the files have 'read, write, and execute', but only for `$USER`.
Host soft Host soft
HostName soft.dmz.rs HostName soft.dmz.rs
Port 2222 Port 2222
User ghost
IdentityFile ~/.ssh/id rsa IdentityFile ~/.ssh/id rsa
Host dmz Host dmz
HostName dmz.rs HostName dmz.rs
-36
View File
@@ -1,36 +0,0 @@
---
volume: Decentrala
section: 6
title: Access Linux Containers in Moxx over `ssh`
author: Malin
source: dmz.rs
---
Access `moxx`, the Proxmox machine:
1. Check you can access the creds in `dmzadmin`: `gpg -d credentials/kralizec/ssh11.gpg`.
2. Check the creds work: `ssh dmz.rs ls`.
3. Copy your ssh keys across: `ssh-copy-id -i ~/id_selected dmz.rs`.
4. Check that works: `test $(ssh dmz.rs hostname) = ssh11`
5. Find `moxx`' IP address in its credentials: `moxxIP=[ user ]@[ local ip ]`
6. Jump through `ssh11` to access `moxx`: `ssh -J user@dmz.rs $moxx_ip`
# Enter Containers
Use `pct` to find and access containers:
```sh
pct list | grep -v stopped
pct enter 112
```
- Don't tell people to type 'pct enter', or they will type `pct`, and hit the enter key I TOLD YOU ALL THE KEY SHOULD BE CALLED RETURN.
- Now you're in the container.
## Just for Fun
```sh
pct list | grep -v VMID |\
column -J -N vmid,state,current,name | less -R
```
-35
View File
@@ -1,35 +0,0 @@
# Service Catalog: sumadijamoxx
## 🛠️ Overview
IP addresses follow the container ID pattern:
`101 ssh12` -> `192.168.7.101`
| VMID | Name | OS | Notes |
| :--- | :--- | :--- | :--- |
| [101](./ssh12/) | [ssh12](./ssh12/) | 12 | SSH Jump host |
| [102](./nginxproxymanager12/) | [nginxproxymanager12](./nginxproxymanager12/) | 12 | Proxy |
| [103](./searxng12/) | [searxng12](./searxng12/) | 12 | Search |
| [104](./homepage12/) | [homepage12](./homepage12/) | 12 | Dashboard |
| [105](./pastebin13/) | [pastebin13](./pastebin13/) | 13 | Pastebin |
| [106](./librespeed-rust12/) | [librespeed-rust12](./librespeed-rust12/) | 12 | Speedtest |
| [107](./tor13/) | [tor13](./tor13/) | 13 | Tor Onion Service |
| [200](./wireguard12/) | [wireguard12](./wireguard12/) | 12 | VPN |
##### Legend
- `12` -> Debian 12
- `13` -> Debian 13
## 🌐 Forwarded Ports
- `192.168.7.243:443` -> `80`
- `192.168.7.101:22` -> `22`
## 🌐 Public URLs
- Website: https://sumadija.dmz.rs
- Pastebin: https://pastebin.dmz.rs
-21
View File
@@ -1,21 +0,0 @@
---
VMID: 109
---
# Nginx
**VMID:** 102
**OS/Version:** Debian 13
## 🌐 Connectivity
- **Local IP:** `192.168.7.109`
- **Internal Port:** `80`
- **External/Proxy URL:** `https://sumadija.dmz.rs`
- **Access Type:** Local / Public (via proxy)
## 🛠️ Details
- **Dependencies:** None
## 📝 Notes
- Forwarded to port 80 and 443.
@@ -1,20 +0,0 @@
---
VMID: 105
---
# PrivateBin
**VMID:** 105
**OS/Version:** Debian 13
## 🌐 Connectivity
- **Local IP:** `192.168.7.105`
- **Internal Port:** `[N/A]`
- **External/Proxy URL:** `https://pastebin.dmz.rs`
- **Access Type:** Forwarded
## 🛠️ Details
- **Built with:** [PrivateBin Proxmox Script](https://community-scripts.github.io/ProxmoxVE/scripts?id=privatebin)
- **Dependencies:** None
## 📝 Notes
- Not yet public/forwarded.
-17
View File
@@ -1,17 +0,0 @@
# Router
**VMID:** [N/A]
**OS/Version:** TPLink (Hopefully OpenWRT in future)
## 🌐 Connectivity
- **Local IP:** 192.168.7.1
- **Internal Port:** `[N/A]`
- **External/Proxy URL:** `[N/A]`
- **Access Type:** Local
## 🛠️ Details
- **Built with:** N/A
## 📝 Notes
- Router is inside the existing network for further forwarding.
- Contact coja (best on xmpp) for access/info.
-20
View File
@@ -1,20 +0,0 @@
---
VMID: 102
---
# SearXNG
**VMID:** 103
**OS/Version:** Debian 12
## 🌐 Connectivity
- **Local IP:** `192.168.7.103`
- **Internal Port:** `[N/A]`
- **External/Proxy URL:** `https://search.dmz.rs`
- **Access Type:** Local (Not yet public/forwarded)
## 🛠️ Details
- **Built with:** [SearXNG Proxmox Script](https://community-scripts.github.io/ProxmoxVE/scripts?id=searxng)
- **Dependencies:** None
## 📝 Notes
- Not yet public/forwarded.
-24
View File
@@ -1,24 +0,0 @@
---
VMID: 101
---
# SSH Gateway
**VMID:** 101
**OS/Version:** Debian 12
## 🌐 Connectivity
- **Local IP:** `192.168.7.101`
- **Internal Port:** `22`
- **External/Proxy URL:** `https://sumadija.dmz.rs`
- **Access Type:** Public (via SSH forwarding)
## 🛠️ Details
- **Built with:** N/A
- **Dependencies:** None
## 📝 Notes
- SSH port from this container should be forwarded to `sumadija.dmz.rs`.
- SSH access to other containers is done through this one with SSH jump.
- **Security:** Passwords are disabled; only key verification is used.
- [Wiki Guide](https://wiki.dmz.rs/en/sysadmin/ssh)
-24
View File
@@ -1,24 +0,0 @@
---
VMID: 107
---
# Tor Onion Service
**VMID:** 107
**OS/Version:** Debian 13
## 🌐 Connectivity
- **Local IP:** `192.168.7.107`
- **Internal Port:** `[N/A]`
- **External/Proxy URL:** `[Tor Onion Address]`
- **Access Type:** Public (via Tor)
## 🛠️ Details
- **Built with:** N/A
- **Dependencies:** None
## 📝 Notes
- This container hosts the Tor onion service, used for remote access to Proxmox through Tor.
- **Credentials:** Stored in **dmzadmin** (password manager).
- **Remote access targets:**
- `ssh12` -> port 22
- `smoxx` -> port 8006
@@ -1,5 +0,0 @@
---
VMID: 200
---
Wireguard server for VPN access to sumadija network
-25
View File
@@ -1,25 +0,0 @@
---
source: Decentrala
section: 6
title: Nimbus
---
Nimbus is a raspberry pi.
Somehow, nimbus has two ip addresses.
They're not yet static, or available from outside.
```
IP = 192.168.0.93
192.168.0.94
```
Plan (tentative)
----------------
1. Set Pi up with Wireguard.
1. Possibly create a separate network for Decentrala services.
1. Ansible.
1. ... ?
1. Profit.