Posts Taged self-hosting

My Top Technologies of 2025: A Year in Review and a Look to the Future

My Top Technologies of 2025: A Year in Review and a Look to the Future

Good morning everyone, and welcome back to Quadrata! It’s Dimitri Bellini, and as we stand at the threshold of a new year, it’s the perfect time to look back. I hope you all had a wonderful Christmas, filled with good company and great gifts. Now, let’s dive into the technologies that truly impressed me in 2025. This is my personal highlight reel of the year, and I’m eager to hear what you think about these game-changers.

The Open-Source Powerhouses of 2025

This year, several open-source projects took massive leaps forward, solidifying their place as essential tools for professionals and hobbyists alike. Here are the ones that stood out to me.

Proxmox: The Evolution of Virtualization

We all know and love Proxmox, but in 2025, it became an even more dominant force in the virtualization space. The most significant update was the introduction of OCI standard container functionality. This means we can now run containers with some initial limitations, but it’s a massive step forward. When you combine this with its already powerful features like distributed storage with Ceph and ZFS, plus its flexible native backup solution, you have a suite that, in my opinion, covers about 85% of the needs of any medium-sized company. It might still be a bit tight for the largest enterprises, but the direction is incredibly promising.

Komodo: Simplified Container Management

For a while, the container management space felt like it was missing something. Portainer is great, but it can be a bit over-the-top or limited in certain areas. Komodo stepped in to fill that gap beautifully. As its name suggests, it’s a comfortable, convenient solution. It handles all the classic functionalities you’d expect, allowing you to run containers using Docker Compose syntax. But its real power lies in managing automation pipelines—taking code from Git, building a container, and deploying it to a specific node. It’s sophisticated enough for complex environments but simple enough for a homelab, which makes it a real winner in my book.

Pangolin VPN: Secure and Granular Access

Pangolin VPN is another solution that has made incredible progress. It allows you to securely expose services from your local lab to the internet using a reverse proxy. What’s truly impressive, especially in the latest versions, is the ability to create highly specific rules to make individual hosts or services visible only to certain people connected via the VPN. You can manage authentication through an external Identity Provider (IDP), allowing for simple or complex setups. Instead of a standard WireGuard setup that’s open to everyone, Pangolin lets you grant granular permissions to specific users or groups. The software is evolving every month, and it’s definitely one to watch.

Copyparty: The Geek’s File Server

We talked about this a while back, and the video was a huge success for a reason. CopyParty is a fantastic file-serving solution that feels like it was written by a true geek. It’s a more versatile and fun alternative to a standard FTP server, allowing access to your files via HTTP, WebDAV, Samba, and more. It’s packed with clever shortcuts and unique features that give you maximum flexibility for sharing files with others. If you haven’t checked it out, I highly recommend you do.

Navigating the AI Landscape of 2025

Of course, no 2025 review would be complete without talking about artificial intelligence. While I haven’t made a video on it in a while, AI is something I use daily, and a couple of tools have become indispensable.

My Go-To AI Tools

  • Google Gemini 3.0: In my opinion, Gemini has reached a new level this year with its 3.0 version. While other models might be better for pure code generation, Gemini excels at reasoning and analysis. When I have a doubt or need analysis on a document or topic, it consistently outperforms others like ChatGPT and Claude. It gets straight to the point and provides clear, focused answers that feel like they were written by a subject matter expert. Since it’s often free to use, I absolutely recommend trying it.
  • NanoBanana: This AI image generator has been a revelation. It makes creating highly realistic images incredibly easy. It’s not just for making jokes; it has practical applications too. For example, it helped me create the infographic for this very discussion! For creating block schemes, specific images, or just visualizing an idea, it’s a powerful and useful tool.

A Broader Reflection: AI, Society, and Open Source

The rise of AI prompts a larger reflection. We’ve seen massive technological shifts before—the calculator changed how we do math, and the transition from books to TV to social media has fundamentally altered our attention spans. AI is another such shift. Used wisely, it’s an incredible tool to shorten tasks and deepen our understanding of topics we couldn’t otherwise explore. It allows us to have in-depth dialogues on complex subjects, almost like having an expert by our side.

However, we must also consider the role of multinationals in AI development. When these tools are controlled by publicly traded companies, there’s always the question of bias. How much does their training data—and their shareholders’ interests—affect the information we receive? Giving anyone the “keys to knowledge” is a risky proposition.

This is where open source could be our salvation. Having open-source AI models and search engines that we can run on our own hardware gives us a sense of freedom and control. Tools like the ones we’ve discussed—Proxmox, Komodo, Pangolin—are vital because they are transparent. We can know them, try them, and even improve them. They allow us to build our own solutions without being beholden to the opaque promises of the outside world.

Looking Ahead: Stay Curious

My final thought for the year is this: we must not be afraid to try new things, whether they are open source or not. The greatest risk we face is becoming atrophied, mindlessly sliding our thumbs on a phone screen. Let’s stay curious, keep learning, and continue to build a better technological future.

That’s all from me. What were your favorite technologies of 2025? What are you excited about for the new year? Drop a comment below and let’s discuss!

A big greeting from me, Dimitri, and I’ll see you next year. Happy New Year to everyone!


Connect with me and the community:

Read More
Copyparty: The Lightweight, Powerful File Server You Didn’t Know You Needed

Copyparty: The Lightweight, Powerful File Server You Didn’t Know You Needed

Good morning, everyone, and welcome back to Quadrata! This is my corner of the internet dedicated to the open-source world and the IT solutions that I—and hopefully you—find exciting. If you enjoy this kind of content, don’t forget to leave a like on the video and subscribe to the channel!

This week, we’re diving back into the world of open-source solutions. I stumbled upon a truly stunning tool in the file-sharing space that has a wonderful nostalgic feel, reminiscent of the BBS days of the 90s. It’s called Copyparty, and its charm lies not just in its retro vibe but in its incredible versatility. You can install it almost anywhere, making it a fantastic utility to have in your toolkit.

So, let’s take a closer look together.

What Exactly is Copyparty?

At its core, Copyparty is a web file server that allows you to share and exchange files. What makes it special is that it’s all contained within a single Python file. This makes it incredibly lightweight and portable. While you can run it directly, I prefer using it inside a Docker container for easier management and deployment.

But why use it? The answer is simplicity and performance. If you’ve ever needed to quickly move files between your PC and your NAS, or share a large file with a friend without jumping through hoops, Copyparty could be the perfect, high-performing solution for you.

A Surprising Number of Features in a Tiny Package

I was genuinely impressed by the sheer number of features packed into this tool. It’s highly customizable and offers much more than simple file transfers. Here’s a condensed list of its most interesting capabilities:

  • Smart Uploads & Downloads: When you upload a large file, Copyparty can intelligently split it into smaller chunks. This maximizes your bandwidth and, more importantly, allows for resumable transfers. If your connection drops halfway through, you can pick up right where you left off.
  • File Deduplication: To save precious disk space, Copyparty uses file hashes to identify and avoid storing duplicate files.
  • On-the-fly Compression: You can have files automatically zipped and compressed on the fly, which is another great space-saving feature.
  • Batch Renaming & Tagging: If you have a large collection of photos or, like in the old days, a folder full of MP3s, you can quickly rename them based on a specific pattern.
  • Extensive Protocol Support: It’s not just limited to HTTP. Copyparty supports a whole suite of protocols, including WebDAV, FTPS, TFTP, and Samba, making it a complete hub for file communication.
  • Truly Cross-Platform: It runs virtually everywhere: Linux, macOS, Windows, Android, and even on a Raspberry Pi, thanks to its optimized nature. Yes, you can install it directly on your phone!
  • Built-in Media Tools: Copyparty includes a surprisingly nice music player that can read metadata from your audio files (like BPM and duration) and a compact image browser for viewing your photos.
  • Powerful Command Line (CLI): For those who need to automate or optimize file transfers, there’s a full-featured command-line interface.

Tailor It to Your Needs: Configuration and Security

One of Copyparty’s greatest strengths is its customizability via a single configuration file, copyparty.conf. Here, you can enable or disable features, block connections from specific IP ranges, set upload limits based on disk space, and even change the UI theme.

For user management, you have a couple of options. You can use a simple user/password file or integrate with an external Identity Provider (IDP). The permission system is also very granular. Using a system of flags (like RW for read/write, MDA, etc.), you can define exactly what each user can do on specific paths. It might seem a bit “primordial” compared to modern web GUIs, but for a compact solution, it’s incredibly fast and effective to manage.

How to Install Copyparty with Docker

As I mentioned, my preferred method is using Docker. Copyparty’s developers provide a straightforward Docker Compose file that makes getting started a breeze. I use a GUI tool like Portainer to manage my containers, which simplifies the process even further.

Here’s a look at a basic docker-compose.yml structure:


services:
copyparty:
image: 9001/copyparty
ports:
- "3923:3923"
volumes:
# Volume for configuration file (copyparty.conf)
- /path/to/your/config:/cfg
# Volume for the files you want to share
- /path/to/your/data:/mnt
# ... other docker-specific configurations

In this setup, I’ve defined two key volumes:

  1. A volume for the configuration, where the copyparty.conf file lives.
  2. A mount point for the actual data I want to share or upload to.

Once you run docker-compose up -d, your service will be up and running!

A Walkthrough of the Web Interface

The official GitHub page has a wealth of information and even a live demo, but let me show you my installation. The interface has a fantastic vintage feel, but it’s packed with functionality.

Uploading and Sharing

Uploading a file is as simple as dragging and dropping. First, Copyparty hashes the file to check for duplicates. Then, it begins streaming the upload in a highly optimized way. Once uploaded, you’ll see details like the IP address it was uploaded from and the timestamp.

Sharing is just as easy. You can select a file, create a share link with a custom name, set a password, and even define an expiration date. It generates both a URL and a QR code, making it incredibly convenient to share with others.

Management and Media

The UI includes several helpful tools:

  • Control Center: See active clients, current uploads/downloads, and active shares.
  • Recent Uploads (Extinguisher Icon): Quickly view the latest files added to your share, which is useful for moderation in a multi-user environment.
  • Advanced Search (Lens Icon): A powerful search tool with a wide array of filters to find exactly what you’re looking for.
  • Settings (Gear Icon): Customize the UI, change the language, and tweak how files are displayed.

And don’t forget the built-in media player and image gallery, which turn your file share into a simple media server.

Monitoring

For advanced users, Copyparty can even export its metrics, allowing you to monitor its performance and status with tools like Zabbix. This is a testament to its professional-grade design.

Final Thoughts: Is Copyparty Right for You?

I think Copyparty is a fantastic and interesting product. It’s a very nice solution to try, especially because it’s so lightweight and can be installed almost anywhere. There are many situations where a fast, simple, and self-hosted file-sharing tool is exactly what you need.

Its blend of retro simplicity and modern, powerful features makes it a unique and valuable tool in the open-source world.

That’s all for this week! I’m always eager to hear your thoughts. Have you used Copyparty before? Or do you use another solution that you find more interesting? Let me know in the comments below—perhaps we can discuss it in a future video!

A big greeting from me, Dimitri, and see you next week. Bye everyone!


Follow my work and join the community:

Read More
Unlock Your Servers from Anywhere: A Deep Dive into Apache Guacamole

Unlock Your Servers from Anywhere: A Deep Dive into Apache Guacamole

Good morning everyone, Dimitri Bellini here! Welcome back to Quadrata, my channel dedicated to the open-source world and the IT that I love—and that you, my viewers, clearly enjoy too.

In this post, we’re diving into a tool that’s a bit esoteric but incredibly powerful, something I first used years ago and have recently had the chance to rediscover: Apache Guacamole. No, it’s not a recipe for your next party; it’s a fantastic open-source tool that allows you to connect to your applications, shells, and servers using nothing more than a web browser.

What is Apache Guacamole?

At its core, Guacamole is a clientless remote desktop gateway. This means you can access your remote machines—whether they use RDP, SSH, VNC, or even Telnet—directly from Chrome, Firefox, or any modern HTML5 browser. Imagine needing to access a server while you’re away from your primary workstation. Instead of fumbling with VPNs and installing specific client software, you can just open a browser on your laptop, tablet, or even your phone and get full access. It’s a game-changer for convenience and accessibility.

The architecture is straightforward but robust. Your browser communicates with a web application (running on Tomcat), which in turn talks to the Guacamole daemon (`guacd`). This daemon acts as a translator, establishing the connection to your target machine using its native protocol (like RDP or SSH) and streaming the display back to your browser as simple HTML5.

Key Features That Make Guacamole Stand Out

Guacamole isn’t just a simple proxy; it’s packed with enterprise-grade features that make it suitable for a wide range of use cases:

  • Broad Protocol Support: It natively supports VNC, RDP, SSH, and Telnet, covering most of your remote access needs.
  • Advanced Authentication: You can integrate it with various authentication systems, including Active Directory, LDAP, and even Two-Factor Authentication (2FA), to secure access.
  • Granular Permissions: As an administrator, you can define exactly which users or groups can access which connections.
  • Centralized Logging & Screen Recording: This is a huge feature for security and compliance. Guacamole can log all activity and even record entire user sessions as videos, providing a complete audit trail of who did what and when.
  • Screen Sharing: Need to collaborate on a problem? You can share your active session with a colleague by simply sending them a link. You can both work in the same shell or desktop environment simultaneously.

Surprising Powerhouse: Where You’ve Already Seen Guacamole

While it might not be a household name, you’ve likely used Guacamole without even realizing it. It’s the powerful engine behind several major commercial products, including:

  • Microsoft Azure Bastion
  • FortiGate SSL Web VPN
  • CyberArk PSM Gateway

The fact that these major security and cloud companies build their products on top of Guacamole is a massive testament to its stability and power.

Getting Started: Installation with Docker

The easiest and most recommended way to get Guacamole up and running is with Docker. In the past, this meant compiling various components, but today, it’s a much simpler process. You’ll need three containers:

  1. guacamole/guacd: The native daemon that handles the protocol translations.
  2. guacamole/guacamole: The web application front-end.
  3. A Database: PostgreSQL or MySQL to store user and connection configurations.

Important Note: I found that the official docker-compose.yml file in the documentation can be problematic. The following method is based on a community-provided configuration that works flawlessly with the latest versions.

Step 1: Create a Directory and Initialize the Database

First, create a directory for your Guacamole configuration and data. Then, run the following command to have Guacamole’s container initialize the database schema for you. This script will pull the necessary SQL files and set up the initial database structure.


mkdir guacamole-data
docker run --rm guacamole/guacamole /opt/guacamole/bin/initdb.sh --postgres > guacamole-data/initdb.sql

Step 2: Create Your Docker Compose File

Inside your main directory, create a file named docker-compose.yml. This file will define the three services we need to run.


services:
guacd:
container_name: guacd
image: guacamole/guacd
volumes:
- /opt/guacamole/drive:/drive:rw
- /opt/guacamole/record:/record:rw
networks:
- guacamole
restart: always

guacdb:
container_name: guacdb
image: postgres:15.2-alpine
environment:
PGDATA: /var/lib/postgresql/data/guacamole
POSTGRES_DB: guacamole_db
POSTGRES_USER: guacamole_user
POSTGRES_PASSWORD: guacpass
volumes:
- /opt/guacamole/db-init:/docker-entrypoint-initdb.d:z
- /opt/guacamole/data:/var/lib/postgresql/data:Z
networks:
- guacamole
restart: always

guacamole:
container_name: guac-guacamole
image: guacamole/guacamole
depends_on:
- guacd
- guacdb
environment:
GUACD_HOSTNAME: guacd
POSTGRESQL_HOSTNAME: guacdb
POSTGRESQL_DATABASE: guacamole_db
POSTGRESQL_USER: guacamole_user
POSTGRESQL_PASSWORD: guacpass
RECORDING_SEARCH_PATH: /record
# uncomment if you're behind a reverse proxy
# REMOTE_IP_VALVE_ENABLED: true
# uncomment to disable brute-force protection entirely
# BAN_ENABLED: false
# https://guacamole.apache.org/doc/gug/guacamole-docker.html#running-guacamole-behind-a-proxy
volumes:
- /opt/guacamole/record:/record:rw
networks:
- guacamole
ports:
- 8080:8080/tcp
restart: always

networks:
guacamole:
name: guacamole

Be sure to change YourStrongPasswordHere to a secure password!

Step 3: Launch Guacamole

Now, from your terminal in the same directory, simply run:


docker-compose up -d

Docker will pull the images and start the three containers. In a minute or two, your Guacamole instance will be ready!

Your First Connection: A Quick Walkthrough

Once it’s running, open your browser and navigate to http://YOUR_SERVER_IP:8080/guacamole/.

The default login credentials are:

  • Username: guacadmin
  • Password: guacadmin

After logging in, head to Settings > Connections to add your first remote machine. Click “New Connection” and fill out the details. For an SSH connection, you’ll set the protocol to SSH and enter the hostname/IP, username, and password. For Windows RDP, you’ll do the same but may also need to check the “Ignore Server Certificate” box under the Parameters section if you’re using a self-signed certificate.

Once saved, your new connection will appear on your home screen. Just click it, and you’ll be dropped right into your remote session, all within your browser tab. You can have multiple sessions open at once and switch between them like browser tabs. To access features like the clipboard or file transfers, use the Ctrl+Alt+Shift key combination to open the Guacamole side menu.

A True Game-Changer for Remote Access

As you can see, Apache Guacamole is an incredibly versatile and powerful tool. Whether you’re a system administrator who needs a centralized access point, a developer working remotely, or a company looking to enhance security with a bastion host and session recording, it’s a solution that is both elegant and effective.

I highly recommend giving it a try. It’s one of those open-source gems that can fundamentally improve your workflow.

What are your thoughts? Have you used Guacamole or a similar tool before? Let me know in the comments below! And if you found this guide helpful, don’t forget to share it.


Thank you for reading! For more content on open-source and IT, make sure to subscribe to the channel.

YouTube Channel: Quadrata

Join our community on Telegram: ZabbixItalia Telegram Channel

See you in the next one!

Read More