• 7 Posts
  • 143 Comments
Joined 6 months ago
cake
Cake day: February 8th, 2025

help-circle

  • This really isn’t viable as WireGuard clients are just that, single device per client connection, what if someone started watching/listening content on their phone then all of sudden wanted to switch over to their TV or streaming device without having to go through a lot of hoops?

    I opted to reverse proxy Jellyfin with Traefik however have fail2ban setup blocking every IP and only whitelisting the known users, added bonus of hiding Jellyfin’s default login form and required Keycloak for SSO.


  • ohshit604@sh.itjust.workstolinuxmemes@lemmy.worldGoodbye, Comrade
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    2 days ago

    Some distros come with it pre-installed some have to do it manually, if you’re trying make your operating system have more pizzaz then small things like this spice it up.

    Fastfetch is actually quite customizable yet most people leave it on the defaults since it adopts the theme of each distro.










  • Okay so going at it again, i think i now understand the reason for the Docker label now, here is my current docker-compose.yml i made some tweaks to the one from your github but i can’t seem to get a log file to generate.

    I suspected it was a permissions issue on the volume mount so i ran chmod 777 on the ./config/csp directory but still wont get a log file.

    Volume directory permissions:

    user@debian:~/compose$ ls config/ | grep csp; ls config/csp/; ls config/csp/logs/
    drwxrwxrwx  3 user user 4096 Aug  9 09:11 csp
    total 12
    drwxrwxrwx  3 user user 4096 Aug  9 09:11 .
    drwxr-xr-x 44 user user 4096 Aug  8 16:41 ..
    drwxrwxrwx  2 user user 4096 Aug  9 09:04 logs
    total 8
    drwxrwxrwx 2 user user 4096 Aug  9 09:04 .
    drwxrwxrwx 3 user user 4096 Aug  9 09:11 ..
    

    docker-compose.yml:

      csp-report:
        image: mhzawadi/csp-report
        networks:
          main:
            ipv4_address: 172.18.0.38
        #ports:
         # - "8432:8080"
        ports:
          - target: 8080
            published: 8432
            mode: host
        container_name: csp-report
        environment:
          - TZ=America/Vancouver
        labels:
          - "csp_report.url=192.168.1.199:3000"
        volumes:
          - ./config/csp/logs:/var/www/html/logs
    

    Logs from the docker container:

    user@debian:~/compose$ sudo docker compose up -d csp-report --force-recreate; sudo docker logs csp-report -f
    WARN[0000] The "POSTGRES_DB" variable is not set. Defaulting to a blank string. 
    [+] Running 1/1
      Container csp-report  Started                                                                                                             0.5s 
    /config/start.sh: Launching Unit daemon to perform initial configuration...
    2025/08/09 16:21:18 [info] 12#12 unit 1.34.1 started
    2025/08/09 16:21:18 [info] 14#14 discovery started
    BusyBox v1.37.0 (2025-08-05 16:42:11 UTC) multi-call binary.
    
    Usage: seq [-w] [-s SEP] [FIRST [INC]] LAST
    
    Print numbers from FIRST to LAST, in steps of INC.
    FIRST, INC default to 1.
    
            -w      Pad with leading zeros
            -s SEP  String separator
    2025/08/09 16:21:18 [notice] 14#14 module: php 8.4.2 "/usr/lib/unit/modules/php84.unit.so"
    2025/08/09 16:21:18 [info] 13#13 controller started
    2025/08/09 16:21:18 [notice] 13#13 process 14 exited with code 0
    2025/08/09 16:21:18 [info] 18#18 router started
    2025/08/09 16:21:18 [info] 18#18 OpenSSL 3.3.4 1 Jul 2025, 30300040
    {
            "certificates": {},
            "config": {
                    "listeners": {},
                    "routes": [],
                    "applications": {}
            },
    
            "status": {
                    "modules": {
                            "php": {
                                    "version": "8.4.2",
                                    "lib": "/usr/lib/unit/modules/php84.unit.so"
                            }
                    },
    
                    "connections": {
                            "accepted": 0,
                            "active": 0,
                            "idle": 0,
                            "closed": 0
                    },
    
                    "requests": {
                            "total": 0
                    },
    
                    "applications": {}
            }
    }
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
    2025/08/09 16:21:18 [info] 20#20 "csp_report" prototype started
    2025/08/09 16:21:18 [info] 21#21 "csp_report" application started
    {
            "success": "Reconfiguration done."
    }
    100   413  100    43  100   370   2808  24162 --:--:-- --:--:-- --:--:-- 27533
    /config/start.sh: Stopping Unit daemon after initial configuration...
    2025/08/09 16:21:18 [notice] 13#13 process 17 exited with code 0
    2025/08/09 16:21:18 [notice] 20#20 app process 21 exited with code 0
    2025/08/09 16:21:18 [alert] 20#20 sendmsg(13, -1, -1, 2) failed (32: Broken pipe)
    2025/08/09 16:21:18 [notice] 13#13 process 18 exited with code 0
    2025/08/09 16:21:18 [notice] 13#13 process 20 exited with code 0
    BusyBox v1.37.0 (2025-08-05 16:42:11 UTC) multi-call binary.
    
    Usage: seq [-w] [-s SEP] [FIRST [INC]] LAST
    
    Print numbers from FIRST to LAST, in steps of INC.
    FIRST, INC default to 1.
    
    
    /config/start.sh: Unit initial configuration complete; ready for start up...
    
            -w      Pad with leading zeros
            -s SEP  String separator
    2025/08/09 16:21:18 [info] 1#1 unit 1.34.1 started
    2025/08/09 16:21:18 [info] 31#31 discovery started
    2025/08/09 16:21:18 [notice] 31#31 module: php 8.4.2 "/usr/lib/unit/modules/php84.unit.so"
    2025/08/09 16:21:18 [info] 1#1 controller started
    2025/08/09 16:21:18 [notice] 1#1 process 31 exited with code 0
    2025/08/09 16:21:18 [info] 33#33 router started
    2025/08/09 16:21:18 [info] 33#33 OpenSSL 3.3.4 1 Jul 2025, 30300040
    2025/08/09 16:21:18 [info] 34#34 "csp_report" prototype started
    2025/08/09 16:21:18 [info] 35#35 "csp_report" application started
    127.0.0.1 - - [09/Aug/2025:16:21:23 +0000] "POST / HTTP/1.1" 200 7 "-" "curl/8.12.1"
    




  • Debian - I’ve put Debian with KDE on the mini PC server.

    Save your resources on the mini pc by getting rid of KDE, desktops can take quite a lot of resources to run!

    If you aren’t familiar with the BASH shell it’s essentially the heart of every Linux/GNU based operating systems, no need for a clunky GUi on a server.

    Key commands:

    • cd == Change Directory

    • sudo == Root privileges

    • mkdir == Make directory

    • rm -f == Remove file/directory with force

    • touch == Make a new file

    • nano == Text/File editor

    • cat == Read file contents and print to shell

    Commands don’t need to be complicated! For example nano /home/SomeUser/Downloads/SomeRandom.txt will open the text editor to SomeRandom.txt in the /Downloads directory of SomeUser





  • (It’s an Asus RT-AX86U Pro - so fairly chunky in terms of spec)

    I have your exact router make and model! I self host my own server with a domain on my home network and make use of the built in DDNS feature.

    My domain registrar is Cloudflare so I have to use a custom script for DDNS, if you’re in the same boat I can provide the script.

    I would suggest looking into Asus WRT Merlin Firmware, the custom firmware enables more functionality to your router.

    Docker containers for

    1. Ghost
    2. Nginx Proxy Manager

    When hosting a reverse proxy like Nginx, Traefik, SWAG, Pangolin, etc keep in mind you 80:80 and 443:443 ports need to be exposed to the host machine then you will forward those ports on your router. This will allow your reverse proxy to communicate with Lets Encrypt generating and verifying your SSL certificates.



  • First have a look at the report header Content-Security-Policy-Report-Only add things you know about, as that will allow you to log what you need to have setup. Then once you have a list of things you know you need, add them and what the logs again. adding in things as you see and verify them.

    Thank you for this! I feel as if I got the idea however, failed on the execution. I added this to my routers.yml -

            contentSecurityPolicyReportOnly: "child-src; connect-src; default-src; font-src; frame-src; img-src; manifest-src; media-src; object-src; script-src; script-src-elem; script-src-attr; style-src; style-src-elem; style-src-attr; worker-src; report-to csp-report"
    
    

    To my understanding the report-to directive at the end adds a endpoint called /csp-report yet in my testing it doesn’t appear to exist and just leads to 403, I’m likely doing something totally wrong but I appreciate you pointing me in the right direction!

    Also dont just add things in without checking that its in your code, you dont want to add hack-me.com by mistake.

    That’s fair, I’m certainly no wiz at programming and this is just self-hosted docker applications that I’ve jerry-rigged to work with one another.