Author: Ifraaz

  • Things to Try in 2026 (Self-Hosted Edition)

    Things to Try in 2026 (Self-Hosted Edition)

    Own your digital life in 2026. Here are the projects I’m personally spinning up this year — all 100% self-hosted, open-source, and under full control.

    1. OpenClaw – Your Personal AI Agent That Actually Does Stuff

    OpenClaw (formerly Clawdbot/Moltbot) is the viral self-hosted autonomous AI assistant that exploded in early 2026. It lives on your machine, connects to WhatsApp, Telegram, Discord, Slack, Signal, iMessage and more, and can run shell commands, browse the web, manage files, calendars, emails, and act proactively via a heartbeat scheduler.

    Run it with local models (Ollama) or your own API keys — total privacy, no cloud middleman.

    2. FreePBX (Asterisk) – Your Own Private Phone System

    Full-featured open-source PBX. Create extensions, IVR menus, voicemail, call queues, conferencing, SIP trunking, and route calls exactly how you want. Works with any SIP phone or softphone (iOS/Android apps included). In 2026 the web UI is smoother than ever and Docker images are rock-solid.

    3. Matrix (Synapse + Element) – Private Encrypted Discord

    End-to-end encrypted chat with threads, spaces (like Discord servers), voice/video calls, file sharing, reactions, and bridges to other networks. Self-host the Synapse server and use the beautiful Element client (or any of the dozens of other clients). 100% private, no Discord telemetry.

    4. HumHub – Your Private Facebook

    Full-featured social network you host yourself. Profiles, posts, comments, groups, events, private messaging, file sharing, and activity streams — all behind your own login. Perfect for family, friends, community, or intranet. No ads, no data harvesting.

    5. qBittorrent + Gluetun – Private Seedbox with Built-in VPN

    Run qBittorrent (modern, fast, web UI) inside a Docker container forced through Gluetun (WireGuard/OpenVPN). All torrent traffic exits through your VPN provider. Add *arr stack (Sonarr, Radarr, etc.) for full automation. Zero ISP issues, zero logs.

    6. Webmin + Virtualmin – Self-Hosted cPanel Alternative

    For managing your full server like cPanel (domains, emails, databases, users, file manager, Apache/Nginx, SSL, backups, and more), go with **Webmin** (core system admin) + **Virtualmin** (hosting module). It’s 100% free/open-source, lightweight, runs on almost any Linux distro, and has been battle-tested for years. Great for personal VPS, multiple sites, or small hosting setups — no licensing fees, full control.

    Other strong options in 2026: aaPanel (super simple UI), CyberPanel (LiteSpeed optimized), or CloudPanel (modern PHP-focused). But Webmin/Virtualmin wins for flexibility and maturity.

    All of these run beautifully on a mini-PC, old desktop, or cheap VPS. Start with OpenClaw (it’s addictive) and build from there — you’ll be hooked.

    Happy self-hosting in 2026! 🦞

  • Linux OS Cheatsheet 2026

    Linux OS Cheatsheet 2026

    Linux OS Cheatsheet 2026: Top Distros, Servers & Privacy OS

    Top Distros, Servers & Privacy OS

    Beginner-friendly Most Popular LTS

    Ubuntu

    The go-to Linux distro with massive community support, excellent hardware compatibility, and regular LTS releases.

    • Pros: Easy installation, huge ecosystem, Snap/Flatpak support.
    • Cons: Some bloat, Canonical telemetry (can be disabled).
    • Key Features: GNOME desktop, 5-year LTS support (10+ with Pro), upcoming 26.04 LTS.
    Download Ubuntu
    Windows-like Stable Multimedia-ready

    Linux Mint

    Ubuntu-based with a polished, familiar interface — great transition from Windows.

    • Pros: Clean & elegant, very stable, out-of-box codecs.
    • Cons: Slightly behind Ubuntu on newest packages.
    • Key Features: Cinnamon desktop, Timeshift snapshots, easy updates.
    Download Linux Mint
    Cutting-edge Developer-focused Red Hat backed

    Fedora

    Leading-edge features with strong security — ideal for developers and modern hardware.

    • Pros: Latest software, excellent security (SELinux), great laptop support.
    • Cons: ~13 month support cycle per release.
    • Key Features: GNOME, DNF5 package manager, Workstation spins.
    Download Fedora
    Gaming-ready NVIDIA optimized Productivity

    Pop!_OS

    Ubuntu-based distro by System76, excellent for creators, gamers, and hybrid graphics. COSMIC desktop rising fast in 2026.

    • Pros: Built-in NVIDIA support, tiling, recovery tools.
    • Cons: Smaller community than plain Ubuntu.
    • Key Features: COSMIC desktop, power management, creator focus.
    Download Pop!_OS
    Rolling Release Arch-based Customizable

    Manjaro

    User-friendly Arch with hardware detection and easy installer.

    • Pros: Latest packages via AUR, multiple DEs, Pamac GUI.
    • Cons: Rolling updates can occasionally break things.
    • Key Features: Kernel manager, Timeshift-like snapshots.
    Download Manjaro

    More Good-Tier Linux Desktop Distros

    Highly regarded alternatives and rising stars in 2026 — excellent for specific needs like Windows transitions, lightweight use, or gaming.

    Rolling Release Minimalist DIY / Advanced Hyprland Popular

    Arch Linux

    The classic rolling-release distro — keeps it simple, bleeding-edge, and fully user-configurable. In 2026, Hyprland remains the go-to dynamic tiling Wayland compositor for stunning, performant desktop ricing (animations, blur, rounded corners).

    • Pros: Latest packages always, AUR for everything, ultimate customization, lightweight base.
    • Cons: Manual installation (though archinstall is excellent now), rolling updates can break things if not careful.
    • Key Features: Pacman package manager, Arch Wiki (best in the game), perfect base for Hyprland setups (Hyprland in official repos, auto-tiling, eye-candy).
    Download Arch Linux
    Windows-like Beginner Transition Polished

    Zorin OS

    Ubuntu-based with layouts mimicking Windows/macOS — exploded in popularity after Windows 10 EOL.

    • Pros: Beautiful & familiar, privacy-focused, easy for new users.
    • Cons: Slightly more opinionated layout choices.
    • Key Features: Zorin Appearance tool, Pro edition extras, strong migration tools.
    Download Zorin OS
    Stable + Modern KDE Powerhouse YaST Config

    openSUSE

    Excellent KDE integration with powerful tools — great balance of stability and features.

    • Pros: Tumbleweed rolling or Leap stable, YaST control center, strong community.
    • Cons: Slightly different package ecosystem.
    • Key Features: Btrfs snapshots by default, zypper package manager.
    Download openSUSE
    Lightweight Old Hardware User-friendly

    MX Linux

    Debian-based lightweight distro with excellent tools — perfect for reviving older machines.

    • Pros: Fast & stable, MX Tools suite, great for mid-range/old hardware.
    • Cons: Not as bleeding-edge as rolling distros.
    • Key Features: Xfce default, live USB persistence, antiX base options.
    Download MX Linux
    Gaming Optimized Fedora-based Tweaked

    Nobara

    Fedora spin focused on gaming & content creation — pre-tweaked for performance.

    • Pros: Out-of-box gaming setup, codecs, OBS, low-latency kernel.
    • Cons: Slightly more niche community.
    • Key Features: NVIDIA/AMD patches, Proton-GE, custom kernels.
    Download Nobara
    Atomic/Immutable SteamOS-like Gaming/Handheld

    Bazzite

    Fedora Atomic-based, Steam Deck-inspired — excellent for gaming rigs and handhelds in 2026.

    • Pros: Reliable updates, great Steam integration, immutable core.
    • Cons: Less flexible for heavy customization.
    • Key Features: Just like SteamOS, HDR support, easy rollback.
    Download Bazzite

    Linux Server Operating Systems

    Rock-solid options optimized for production servers, cloud, and long-term stability.

    Most Popular Server LTS Cloud-friendly

    Ubuntu Server

    Dominates web/cloud servers with easy management and massive support.

    • Pros: 10-year LTS, huge docs, LXD/MAAS.
    • Cons: Snap-heavy in some cases.
    • Key Features: Minimal install, security updates, cloud images.
    Download Ubuntu Server
    Ultra Stable Free Software Base for many

    Debian

    The foundation of stability — powers many servers worldwide.

    • Pros: Extremely reliable, vast repos, multi-arch.
    • Cons: Older packages in stable branch.
    • Key Features: APT, backports, long release cycles.
    Download Debian
    Enterprise Compatible RHEL Clone Free

    Rocky Linux

    Community RHEL replacement — bug-for-bug compatible with long support.

    • Pros: 10-year support, migration tools, stable.
    • Cons: Smaller community than Ubuntu.
    • Key Features: Enterprise-grade, security-focused.
    Download Rocky Linux
    RHEL Compatible Community Driven Migration Tools

    AlmaLinux

    Another strong RHEL fork with focus on stability and free updates.

    • Pros: 1:1 RHEL compatible, ELevate tool, secure.
    • Cons: Enterprise-oriented (less flashy).
    • Key Features: Long lifecycle, OpenSCAP.
    Download AlmaLinux

    Privacy-Focused Operating Systems

    Designed for maximum anonymity, security, and protection against surveillance.

    Amnesic Tor by Default Live USB

    Tails

    Leaves no trace — everything routed through Tor, perfect for sensitive work.

    • Pros: Maximum anonymity, forgets on shutdown.
    • Cons: Slower due to Tor, not for daily driver.
    • Key Features: Persistent storage option, metadata tools.
    Download Tails
    Compartmentalized VM Isolation High Security

    Qubes OS

    Security by isolation — runs apps in separate virtual machines.

    • Pros: Extremely secure against compromise.
    • Cons: Hardware demanding, learning curve.
    • Key Features: Xen-based, disposable VMs, templates.
    Download Qubes OS
    Tor Gateway Leak-proof VM-based

    Whonix

    All traffic forced through Tor — workstation + gateway architecture.

    • Pros: Excellent against IP/DNS leaks.
    • Cons: Requires host VM software, performance overhead.
    • Key Features: Kicksecure hardened base, anonymous updates.
    Download Whonix

    Specialized Linux Distributions

    Focused tools for penetration testing, virtualization, and network-attached storage (NAS) — popular in 2026 for security professionals, homelabbers, and enterprise use.

    Penetration Testing Security Tools Ethical Hacking

    Kali Linux

    Debian-based distro packed with hundreds of security and forensics tools — the standard for ethical hacking and pen-testing.

    • Pros: Vast pre-installed toolset, rolling release, live/forensic modes.
    • Cons: Not ideal as a daily driver, resource-intensive.
    • Key Features: Offensive Security backed, customizable, weekly builds available.
    Download Kali Linux
    Virtualization Hypervisor Homelab

    Proxmox VE

    Debian-based type-1 hypervisor platform for running VMs and containers with enterprise-grade features.

    • Pros: Powerful web UI, KVM + LXC, clustering/HA, backups.
    • Cons: Best on dedicated hardware, learning curve for advanced features.
    • Key Features: ZFS/CEPH storage, live migration, built-in firewall.
    Download Proxmox VE
    NAS Storage ZFS

    TrueNAS SCALE

    Linux (Debian)-based NAS operating system with scale-out storage, apps, and virtualization support.

    • Pros: OpenZFS, Docker/Kubernetes apps, TrueCharts ecosystem, snapshots.
    • Cons: More complex setup than consumer NAS, focused primarily on storage.
    • Key Features: Scale-out clustering, VM support, S3 object storage.
    Download TrueNAS SCALE

  • Hyprland Cheatsheet

    Hyprland Cheatsheet

    Dynamic tiling Wayland compositor – Highly customizable, performant, and animated
    Hyprland v0.45.0 (released Dec 2025): Kernel 6.12+ support, improved NVIDIA compatibility, new animations, and Rust-based plugins. Runs on Fedora Workstation/Server with Wayland.
    Install via COPR repo. Config in ~/.config/hypr/hyprland.conf. All commands run in terminal (Konsole on Fedora).


    1. Installation on Fedora

    TaskCommand / Action
    Enable COPR reposudo dnf copr enable solopasha/hyprland
    Install Hyprlandsudo dnf install hyprland hyprland-plugins
    Install dependencies (Wayland, audio, etc.)sudo dnf install wayland-devel mesa-libEGL-devel libseat-devel hwdata-devel libgbm-devel libsystemd-devel libdrm-devel mesa-libgbm-devel libxkbcommon-devel libxkbcommon-x11-devel pixman-devel libinput-devel libcap-devel libxml2-devel libpng-devel wayland-protocols-devel libliftoff-devel cairo-devel pango-devel vulkan-devel vulkan-validation-layers-devel mesa-vulkan-devel glslang-devel libdisplay-info-devel libdecor-devel pipewire-jack-audio-connection-kit-devel libva-devel ffmpeg-devel libvdpau-devel hwloc-devel mesa-libOpenCL-devel opencl-headers-devel mesa-libd3d-devel spirv-headers-devel spirv-tools-devel vulkan-headers-devel vulkan-loader-devel vulkan-tools-devel vulkan-validation-layers-devel glslang-devel libva-devel libvdpau-devel hwloc-devel libX11-devel libxcb-devel libXext-devel libXrender-devel xcb-proto-devel libXfixes-devel libxkbfile-devel libXfont2-devel libXres-devel libXtst-devel libXdamage-devel libXrandr-devel libXi-devel libXcomposite-devel libXcursor-devel libXmu-devel libXpm-devel libXt-devel libXaw-devel libXmuu-devel libXScrnSaver-devel libXv-devel libXinerama-devel libXxf86vm-devel libXvMC-devel libXdmcp-devel libXau-devel xorg-x11-proto-devel libICE-devel libSM-devel libXtst-devel libXScrnSaver-devel libXvMC-devel libXinerama-devel libXxf86vm-devel libXdmcp-devel libXau-devel xorg-x11-proto-devel libICE-devel libSM-devel libXtst-devel libXScrnSaver-devel libXvMC-devel libXinerama-devel libXxf86vm-devel (long, but essential for full features)
    Install extras (clipboard, portal)sudo dnf install wl-clipboard xdg-desktop-portal-hyprland
    Start HyprlandLogout → Select “Hyprland” session in GDM/Sway login manager
    First runHyprland auto-creates ~/.config/hypr/hyprland.conf – edit as needed

    Note: For NVIDIA: Install proprietary drivers first (sudo dnf install akmod-nvidia). Fedora 43+ has better Wayland support. If issues, add exec-once = hyprctl setcursor Adwaita 24 to config.


    2. Updating Hyprland

    TaskCommand
    Update system & Hyprlandsudo dnf upgrade --refresh (includes COPR packages)
    Check current versionhyprctl version
    Rebuild if needed (plugins)sudo dnf reinstall hyprland-plugins
    Clean cachesudo dnf clean all
    Rollback (if broken)sudo dnf history undo last

    Pro Tip: Subscribe to COPR notifications or check GitHub releases. For bleeding-edge: Build from source (clone repo, sudo dnf install cmake gcc-c++ libstdc++-devel pkgconfig dbus-devel libevdev-devel libev-devel hidapi-devel libgbm-devel libxkbcommon-devel libGLESv2-devel vulkan-headers seatd-devel systemd-devel libdrm-devel wayland-devel wayland-protocols-devel cairo-devel pango-devel libjpeg-turbo-devel libwebp-devel, then make all && sudo make install).


    3. Configuration Basics

    TaskCommand / Action
    Edit confignano ~/.config/hypr/hyprland.conf (or vim/emacs)
    Reload confighyprctl reload (or Super + Shift + R)
    Set monitorAdd to config: monitor=DP-1,1920x1080@144,0x0,1 (resolution@refresh,xpos ypos,scale)
    Set wallpaperAdd: exec-once = hyprpaper & (install hyprpaper first) → Edit ~/.config/hypr/hyprpaper.conf
    Add keybindExample: bind = SUPER, T, exec, kitty
    Environment varsAdd to config: env = XCURSOR_SIZE,24 (for cursor size)
    Gestures (touchpad)Add: gestures { workspace_swipe = on }
    Backup configcp ~/.config/hypr/hyprland.conf ~/hypr-backup.conf

    Config Structure: Sections like general {}, input {}, binds {}, animations {}, decoration {}. Use # for comments. Full template on GitHub wiki.


    4. Default Shortcuts (Super Key = Windows Key)

    Window Management

    ActionShortcut
    Open terminalSuper + Return
    Close windowSuper + Q
    Toggle fullscreenSuper + F
    Toggle floatingSuper + Space
    Move focusSuper + Arrow Keys (or HJKL)
    Resize windowSuper + Ctrl + Arrow Keys
    Switch workspaceSuper + 1-0 (workspaces 1-10)
    Move window to workspaceSuper + Shift + 1-0
    Cycle windowsSuper + Tab

    System

    ActionShortcut
    Reload configSuper + Shift + R
    Lock screenSuper + L (if hyprlock installed)
    LogoutSuper + Shift + E
    Screenshot (region)Super + Shift + S (with grim/slurp)
    Toggle touchpadSuper + Shift + T

    Mouse

    ActionShortcut
    Move windowSuper + Left Click Drag
    Resize windowSuper + Right Click Drag

    Customize: Edit binds {} in config. Example: bind = SUPER, P, exec, rofi -show drun for app launcher.


    5. Adding Waybar (Status Bar)

    TaskCommand / Action
    Install Waybarsudo dnf install waybar
    Config Waybarmkdir -p ~/.config/waybar → cp /etc/xdg/waybar/* ~/.config/waybar/ → Edit ~/.config/waybar/config.jsonc and style.css
    Auto-start in HyprlandAdd to hyprland.conf: exec-once = waybar
    Reload Waybarpkill waybar && waybar &
    Modules (example)In config.jsonc: "modules-left": ["hyprland/workspaces", "cpu", "memory"]
    ThemesInstall fonts: sudo dnf install fontawesome-fonts → Customize CSS

    Waybar Tips: For Hyprland integration, add "hyprland/window" module. Use waybar --bar main-bar for testing.


    6. Plugins & Extensions

    ActionCommand
    Install official pluginssudo dnf install hyprland-plugins
    Enable plugin (e.g., hyprbars)Add to config: plugin { hyprbars { bar_height = 30 } }
    List loaded pluginshyprctl plugins
    Third-party (Rust)Clone repo → cargo build --release → Add path to config: plugin = /path/to/libplugin.so

    7. Troubleshooting

    IssueCommand
    No audiosudo dnf install pipewire-pulse → Restart
    Cursor invisibleAdd to config: env = XCURSOR_THEME,Adwaita → env = XCURSOR_SIZE,24
    NVIDIA flickeringAdd: env = WLR_NO_GPU,1 (disable hardware cursors)
    Log errorsjournalctl -u hyprland or Hyprland (debug mode)
    Reset configrm ~/.config/hypr/hyprland.conf → Restart

    8. One-Liners

    # Quick update
    sudo dnf upgrade hyprland --refresh && hyprctl reload
    
    # Backup & edit config
    cp ~/.config/hypr/hyprland.conf{,.bak} && nano ~/.config/hypr/hyprland.conf
    
    # Test Waybar
    waybar -c ~/.config/waybar/config.jsonc -s ~/.config/waybar/style.css
    
    # Screenshot full screen
    grim ~/Pictures/screenshot-$(date +%Y%m%d-%H%M%S).png
    
    # Toggle animations off
    hyprctl keyword animations:enabled 0

    9. Useful Tools to Install

    sudo dnf install waybar hyprpaper hyprlock grim slurp rofi-wayland wl-clipboard pavucontrol

    10. Hyprland Resources

    Official Docs: https://wiki.hyprland.org
    GitHub: https://github.com/hyprwm/Hyprland
    Fedora COPR: https://copr.fedorainfracloud.org/coprs/solopasha/hyprland

    # Check COPR status
    dnf copr list | grep hyprland

    Pro Tip: For Fedora, use xdg-desktop-portal-hyprland for screen sharing. Customize animations in animations {} for buttery smooth UX. Join r/hyprland for configs.



  • Top Self-Hosting App Directories

    Top Self-Hosting App Directories

    1. selfh.st

    Clean, searchable directory with one-click install support.

    Visit selfh.st

    2. Awesome Selfhosted

    1,000+ apps, 100+ categories, Docker tags, licenses.

    GitHub Web Version

    3. OpenAlternative Self-Hosted

    150+ open-source SaaS replacements with comparisons.

    Explore

    4. Dockerholics

    100+ vetted apps with ready-to-use docker-compose files.

    Open

    5. Awesome Self-Host Docker

    Docker-first list with instant-deployment YAML snippets.

    View Repo
    Bonus one-click catalogs:

    YunoHost Apps • Cloudron Store
    ifraaz.com • November 24, 2025

  • Ubuntu Server CLI Cheatsheet

    Ubuntu Server CLI Cheatsheet

    The world’s most popular server OS – CLI essentials for daily administration
    Ubuntu Server 25.10 (Questing Quokka) released October 2025: Kernel 6.17, OpenJDK 25, Python 3.14 RC3, Golang 1.25, Rust 1.85. LTS: 24.04 (Noble Numbat) with 12 years support via Ubuntu Pro.
    Debian-based with apt package manager. All privileged commands require sudo. Access via SSH (port 22) or console.

    1. Installation & Initial Setup

    TaskCommand / Action
    Download ISOubuntu.com/download/server → 25.10 (latest) or 24.04 LTS
    Boot & InstallUSB boot → Language → Install Ubuntu Server → Set hostname, user, SSH key (recommended)
    Enable SSHDuring install: Check Install OpenSSH server Post-install: sudo apt install openssh-server
    Update systemsudo apt update && sudo apt upgrade -y
    Set timezonesudo timedatectl set-timezone America/New_York (or your region)
    Configure firewall (UFW)sudo ufw allow OpenSSH sudo ufw enable
    Add user to sudosudo usermod -aG sudo username

    Cloud Images: For AWS/GCP/Azure: Use official AMIs. Minimal install: ~300MB RAM. Pro Tip: Enable unattended upgrades: sudo apt install unattended-upgrades → sudo dpkg-reconfigure unattended-upgrades.

    2. Navigation & File Management

    TaskCommand
    Show current directorypwd
    List files (detailed)ls -la
    List by time (newest first)ls -lht
    List with human-readable sizesls -lh
    Change directorycd /var/www
    Go homecd ~
    Go up one levelcd ..
    Go to previous directorycd –
    Show directory treetree -L 2 (install: sudo apt install tree)

    3. Create, Copy, Move & Delete

    ActionCommand
    Create directorymkdir foldername
    Create nested directoriesmkdir -p /path/to/nested/folder
    Create empty filetouch filename.txt
    Create multiple filestouch file1.txt file2.txt file3.txt
    Edit/create with nanonano filename.txt (Ctrl+O save, Ctrl+X exit)
    Copy filecp file.txt /backup/
    Copy directory recursivelycp -r folder /backup/
    Move/rename filemv old.txt new.txt
    Move filemv file.txt /new/location/
    Delete filerm file.txt
    Delete directoryrm -r folder (empty) rm -rf folder (with contents, dangerous!) rm -ri folder (with prompts)

    4. Disk & Storage

    TaskCommand
    Disk usage (human-readable)df -h
    Detailed disk outputdf -h –output=source,fstype,size,used,avail,pcentused,target
    Folder sizedu -sh /path
    Current directory sizes (largest first)du -sh * | sort -hr
    List block deviceslsblk
    List all diskssudo fdisk -l
    Interactive disk explorerncdu / (install: sudo apt install ncdu)

    5. Search & Find

    TaskCommand
    Find files by namefind /var/www -name “*.log”
    Find large files (>100MB)find / -type f -size +100M 2>/dev/null
    Search text in filesgrep -r “search term” /var/www
    Case-insensitive filenames onlygrep -ril “text” /etc

    6. Permissions & Ownership

    ActionCommand
    Set file permissions (644)chmod 644 file.txt
    Make executable (755)chmod 755 script.sh
    Recursive permissionschmod -R 755 folder
    Change ownerchown www-data:www-data file.txt
    Recursive ownershipchown -R www-data:www-data /var/www
    Take ownershipchown -R $USER:$USER folder

    7. System Monitoring & Info

    TaskCommand
    Kernel & system infouname -a
    Ubuntu versionlsb_release -a
    Uptime & loaduptime
    Memory usagefree -h
    Process monitortop or htop (install: sudo apt install htop)
    Recent logsjournalctl -xe
    Kernel messagesdmesg | tail

    8. Package Management (APT)

    ActionCommand
    Update package listsudo apt update
    Upgrade packagessudo apt upgrade -y
    Full upgrade (with deps)sudo apt full-upgrade -y
    Remove unusedsudo apt autoremove
    Clean cachesudo apt clean
    Install toolssudo apt install tree htop ncdu
    Search packageapt search keyword
    Show package infoapt show package

    9. Networking & Users

    Networking

    TaskCommand
    Show IP addressesip a
    Listening portsss -tulnp
    Public IPcurl ifconfig.me
    Test connectivityping -c 4 google.com
    Firewall statussudo ufw status
    Allow SSHsudo ufw allow 22/tcp

    Users

    ActionCommand
    Add usersudo adduser username
    Add to sudo groupsudo usermod -aG sudo username
    Change passwordsudo passwd username
    Edit sudoerssudo visudo

    10. Troubleshooting

    IssueCommand
    Fix broken packagessudo apt install -f
    Check servicessudo systemctl status service
    View full logsjournalctl -u service -f
    Boot to recoveryGRUB → Advanced → Recovery Mode
    Clear old logssudo journalctl –vacuum-time=30d
    Reinstall packagesudo apt install –reinstall package

    11. One-Liners

    # Full update + clean

    sudo apt update && sudo apt full-upgrade -y && sudo apt autoremove && sudo apt clean

    # Clean disk view (hide snaps)

    df -h | grep -v snap

    # 10 largest items in current dir

    du -sh * | sort -hr | head -10

    # Delete logs older than 30 days

    find /var/log -type f -mtime +30 -delete

    # Newest files in /var/log

    ls -lht /var/log | head

    # Quick web server (Python)

    cd /var/www && python3 -m http.server 8000

    12. Useful Tools to Install

    sudo apt install htop tree ncdu curl wget vim git ufw unattended-upgrades

    13. Ubuntu Resources

    Official Docs: https://ubuntu.com/server/docs
    Ask Ubuntu: https://askubuntu.com
    Cloud/Server Guide: https://ubuntu.com/server

    # Check for updates offline

    apt list –upgradable

  • Docker Cheatsheet

    Docker Cheatsheet

    Container runtime essentials – build, run, manage, and orchestrate
    All commands assume Docker Engine is installed and running.
    Use sudo if not in docker group: sudo usermod -aG docker $USER → relogin.


    1. Setup & Info

    TaskCommand
    Check versiondocker --version
    Docker infodocker info
    Test installationdocker run hello-world
    Enable/start Dockersudo systemctl enable --now docker
    Add user to docker groupsudo usermod -aG docker $USER
    View Docker disk usagedocker system df

    2. Images

    ActionCommand
    Search imagedocker search nginx
    Pull imagedocker pull nginx:latest
    List imagesdocker images or docker image ls
    Remove imagedocker rmi nginx
    Remove danglingdocker image prune
    Remove all unuseddocker image prune -a
    Build from Dockerfiledocker build -t myapp:1.0 .
    Tag imagedocker tag myapp:1.0 username/myapp:1.0
    Push to registrydocker push username/myapp:1.0
    Inspect imagedocker image inspect nginx

    3. Containers

    ActionCommand
    Run containerdocker run nginx
    Run detacheddocker run -d --name web nginx
    Run with portdocker run -d -p 8080:80 --name web nginx
    Run interactivedocker run -it ubuntu bash
    List runningdocker ps
    List all (incl. stopped)docker ps -a
    Stop containerdocker stop web
    Start stoppeddocker start web
    Restartdocker restart web
    Remove containerdocker rm web
    Remove all stoppeddocker container prune
    Attach to runningdocker attach web
    Exec into containerdocker exec -it web bash
    View logsdocker logs web
    Follow logsdocker logs -f web
    Stats (CPU/RAM)docker stats
    Inspect containerdocker inspect web

    4. Volumes & Bind Mounts

    TypeCommand
    Volume (managed)docker run -v myvol:/data ubuntu
    Create volumedocker volume create myvol
    List volumesdocker volume ls
    Inspect volumedocker volume inspect myvol
    Remove volumedocker volume rm myvol
    Bind mountdocker run -v /host/path:/container/path ubuntu
    Read-onlydocker run -v /data:/app:ro nginx

    5. Networks

    ActionCommand
    List networksdocker network ls
    Create bridgedocker network create mynet
    Run in networkdocker run --network mynet --name db -d mysql
    Connect containerdocker network connect mynet web
    Disconnectdocker network disconnect mynet web
    Inspectdocker network inspect bridge

    6. Dockerfile Essentials

    # syntax: docker/dockerfile:1
    FROM ubuntu:22.04
    LABEL maintainer="you@example.com"
    
    # Update & install
    RUN apt update && apt install -y curl vim
    
    # Copy files
    COPY app.py /app/
    ADD https://example.com/file.tar.gz /tmp/
    
    # Set workdir
    WORKDIR /app
    
    # Expose port
    EXPOSE 8000
    
    # Environment
    ENV DEBUG=true
    
    # Run command
    CMD ["python3", "app.py"]

    Build: docker build -t myapp .
    Run: docker run -p 8000:8000 myapp


    7. Docker Compose (v2+)

    Install: sudo apt install docker-compose-plugin or download binary

    # docker-compose.yml
    version: '3.8'
    services:
      web:
        image: nginx:latest
        ports:
          - "8080:80"
        volumes:
          - ./html:/usr/share/nginx/html
        depends_on:
          - db
      db:
        image: mysql:8
        environment:
          MYSQL_ROOT_PASSWORD: secret
        volumes:
          - db-data:/var/lib/mysql
    volumes:
      db-data:
    CommandAction
    docker compose up -dStart in background
    docker compose downStop & remove
    docker compose logs -fFollow logs
    docker compose psList services
    docker compose buildBuild images
    docker compose exec web bashShell into service

    8. Resource Management

    TaskCommand
    Limit CPUdocker run --cpus="1.5" ubuntu
    Limit memorydocker run -m 512m ubuntu
    Restart policydocker run --restart=unless-stopped nginx
    HealthcheckAdd HEALTHCHECK CMD curl -f http://localhost/ || exit 1 in Dockerfile

    9. Cleanup & Prune

    # Remove all stopped containers, unused networks, dangling images
    docker system prune -a
    
    # Remove all containers
    docker rm -f $(docker ps -aq)
    
    # Remove all images
    docker rmi -f $(docker images -q)
    
    # Remove all volumes
    docker volume prune

    10. Docker Hub & Registry

    ActionCommand
    Logindocker login
    Logoutdocker logout
    Pushdocker push username/app:tag
    Run from privatedocker run username/app:tag

    11. Debug & Inspect

    ToolCommand
    Container processesdocker top web
    Resource usagedocker stats
    Events streamdocker events
    Image historydocker history nginx
    Diff (changed files)docker diff web
    Export containerdocker export web > web.tar
    Import as imagecat web.tar | docker import - newimage

    12. One-Liners

    # Run Ubuntu with bash
    docker run -it --rm ubuntu bash
    
    # Quick web server
    docker run -d -p 80:80 --name web --restart always nginx
    
    # Shell into running container
    docker exec -it web sh
    
    # Build and run in one line
    docker build -t myapp . && docker run -p 5000:5000 myapp
    
    # Cleanup everything
    docker system prune -a --volumes
    
    # Monitor logs + stats
    docker stats & docker logs -f web

    13. Best Practices

    • Use official images when possible
    • Use specific tags (nginx:1.25), avoid :latest in prod
    • Multi-stage builds for smaller images
    • .dockerignore to speed up builds
    • Non-root user in Dockerfile:
      RUN useradd -m appuser
      USER appuser
    • Scan images: trivy image nginx

    14. Useful Tools

    # Install
    sudo apt install docker-compose-plugin trivy
    
    # Scan for vulnerabilities
    trivy image python:3.11
    
    # Dive into image layers
    dive nginx:latest

    15. Docker Desktop (GUI)

    • Linux: Install via docs.docker.com
    • Features: GUI, Kubernetes, Compose, Volume management

    16. Kubernetes Quick Start (kind)

    # Install kind
    curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.20.0/kind-linux-amd64
    chmod +x kind && sudo mv kind /usr/local/bin/
    
    # Create cluster
    kind create cluster --name mycluster
    
    # Use kubectl
    kubectl get nodes

    Resources


  • Ubuntu Linux Cheatsheet

    Ubuntu Linux Cheatsheet

    The world’s most popular desktop & server Linux
    Uses apt (Debian-based). All privileged commands require sudo.
    Covers Ubuntu Desktop, Server, LTS, and Snaps.


    1. Installation (Live USB / Server ISO)

    TaskCommand / Action
    Boot Live USBTry Ubuntu → Install Ubuntu
    Disk setupUse Eraser or Something Else (manual: /, /boot, swap)
    Server installBoot ISO → Language → Minimal or Standard
    Enable SSH (server)sudo apt install openssh-server
    Update on first bootsudo apt update && sudo apt upgrade -y

    2. APT (Package Management)

    ActionCommand
    Update package listssudo apt update
    Upgrade all packagessudo apt upgrade -y
    Full upgrade (new deps)sudo apt full-upgrade -y
    Install packagesudo apt install package
    Remove packagesudo apt remove package
    Purge (with config)sudo apt purge package
    Autoremove unusedsudo apt autoremove
    Clean cachesudo apt clean
    Search packageapt search keyword
    List installeddpkg -l | grep ^ii
    Show infoapt show package
    Fix broken installssudo apt install -f
    Which package owns filedpkg -S /path/to/file

    3. Snaps (Universal Packages)

    ActionCommand
    Install snapsudo snap install package
    Update all snapssudo snap refresh
    List installedsnap list
    Remove snapsudo snap remove package
    Classic confinementsudo snap install --classic code
    Find in storesnap find keyword

    Common Snaps: code, discord, spotify, slack, postman, chromium


    4. System Administration

    TaskCommand
    List servicessystemctl list-unit-files --type=service
    Enable servicesudo systemctl enable service
    Start servicesudo systemctl start service
    Statussystemctl status service
    View logsjournalctl -u service
    Rebootsudo reboot
    Shutdownsudo poweroff
    Disk usagedf -h
    Memoryfree -h
    Processeshtop or top
    Kill processkill PID or pkill name
    Check Ubuntu versionlsb_release -a or cat /etc/os-release

    5. Users & Permissions

    ActionCommand
    Add usersudo adduser username
    Add to sudo groupsudo usermod -aG sudo username
    Change passwordsudo passwd username
    Change ownersudo chown user:group file
    Change permissionschmod 755 file
    Switch usersu - username

    6. Networking

    TaskCommand
    Check IPip a or nmcli device show
    List Wi-Finmcli device wifi list
    Connect Wi-Finmcli device wifi connect SSID password "pass"
    Restart NetworkManagersudo systemctl restart NetworkManager
    Check DNScat /etc/resolv.conf
    Test connectionping -c 4 google.com
    Firewall (UFW)sudo ufw status
    sudo ufw allow 22/tcp
    sudo ufw enable

    7. Filesystem & Storage

    TaskCommand
    Mount USBsudo mount /dev/sdb1 /mnt/usb
    Unmountsudo umount /mnt/usb
    Format ext4sudo mkfs.ext4 /dev/sdX1
    Check disksudo fsck /dev/sdX1
    Find large filesdu -ah / | sort -rh | head -n 20
    Search filesfind / -name "filename" 2>/dev/null
    Disk analyzer (GUI)baobab

    8. Server-Specific

    ServiceInstall & Enable
    LAMP Stacksudo apt install apache2 mysql-server php libapache2-mod-php
    Nginx + PHPsudo apt install nginx php-fpm
    Dockersudo apt install docker.io
    sudo usermod -aG docker $USER
    Node.jscurl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
    sudo apt install nodejs
    PostgreSQLsudo apt install postgresql

    9. Troubleshooting

    IssueCommand
    Boot to recoveryGRUB → Advanced → Recovery Mode
    Fix broken packagessudo dpkg --configure -a
    sudo apt install -f
    Reinstall GRUB (UEFI)sudo grub-install /dev/sdX
    sudo update-grub
    Clear journal logssudo journalctl --vacuum-time=2weeks
    Boot errorsjournalctl -b -p err
    Regenerate initramfssudo update-initramfs -u
    Check hardwarelscpu, lsblk, lspci, lsusb

    10. Useful Tools to Install

    sudo apt install \
        vim htop git curl wget unzip tree \
        net-tools ufw gnome-tweaks \
        build-essential dkms linux-headers-$(uname -r)

    11. One-Liners

    # Full system update + clean
    sudo apt update && sudo apt full-upgrade -y && sudo apt autoremove && sudo apt clean
    
    # Enable UFW with SSH allowed
    sudo ufw allow OpenSSH && sudo ufw enable
    
    # Show Ubuntu version
    lsb_release -a
    
    # Update snaps
    sudo snap refresh
    
    # Backup apt sources
    cp /etc/apt/sources.list ~/sources.list.bak
    
    # List all PPAs
    grep ^deb /etc/apt/sources.list /etc/apt/sources.list.d/*
    
    # Reboot into recovery
    sudo systemctl reboot --firmware-setup  # (UEFI)

    12. Ubuntu Flavors & Resources

    FlavorCommand / Note
    Ubuntu ServerMinimal CLI install
    Ubuntu DesktopFull GNOME experience
    KubuntuKDE Plasma
    XubuntuXFCE (lightweight)
    LubuntuLXQt
    Ubuntu MATEClassic desktop

    Official Docs: https://ubuntu.com/tutorials
    Ask Ubuntu: https://askubuntu.com


    13. Pro Tips

    • Use ubuntu-drivers autoinstall for NVIDIA/AMD drivers
    • Enable Minimized Updates in Software & Updates
    • Use apt-mark hold package to prevent updates
    • Backup with deja-dup (GUI) or rsync
    • Enable Firewall: sudo ufw enable
    # Auto-accept reboots after updates (server)
    sudo needrestart -a
  • Kali Linux Cheatsheet

    Kali Linux Cheatsheet

    Offensive Security Toolkit – Penetration Testing & Ethical Hacking
    Pre-installed tools, apt package manager. Never use on production systems!
    All privileged commands require sudo or root shell.


    1. First Boot & Setup

    TaskCommand
    Start as root (default)Login: root / toor (change immediately!)
    Change root passwordpasswd
    Create normal user (recommended)useradd -m -G sudo hacker && passwd hacker
    Update & upgradesudo apt update && sudo apt full-upgrade -y
    Install Kali metapackagessudo apt install kali-linux-default (or kali-linux-everything)
    Enable SSH (remote access)sudo systemctl enable --now ssh
    Fix locale warningsexport LC_ALL=C or sudo dpkg-reconfigure locales

    2. APT (Package Management)

    ActionCommand
    Update repossudo apt update
    Full upgradesudo apt full-upgrade -y
    Install packagesudo apt install tool
    Remove packagesudo apt remove tool
    Purge (with config)sudo apt purge tool
    Clean unusedsudo apt autoremove
    Search toolapt search keyword
    List installeddpkg -l | grep ^ii
    Show tool infoapt show tool
    Fix broken depssudo apt install -f

    Kali Repos (in /etc/apt/sources.list):

    deb http://http.kali.org/kali kali-rolling main contrib non-free non-free-firmware

    3. Essential Tools by Category

    Information Gathering

    nmap -sV -O target
    dnsenum domain.com
    theharvester -d domain.com -b all
    amass enum -d domain.com

    Web Vulnerability

    nikto -h http://site.com
    dirb http://site.com /usr/share/wordlists/dirb/common.txt
    gobuster dir -u http://site.com -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt
    sqlmap -u "http://site.com/page.php?id=1" --dbs

    Password Attacks

    hydra -l user -P /usr/share/wordlists/rockyou.txt ssh://target
    john hash.txt --wordlist=/usr/share/wordlists/rockyou.txt
    hashcat -m 0 hash.txt /usr/share/wordlists/rockyou.txt

    Wireless

    airmon-ng start wlan0
    airodump-ng wlan0mon
    aireplay-ng --deauth 10 -a BSSID wlan0mon

    Exploitation

    msfconsole
    search eternalblue
    use exploit/windows/smb/ms17_010_eternalblue
    set RHOSTS target
    exploit

    Post-Exploitation

    meterpreter > shell
    whoami && id
    getuid
    sysinfo

    4. System Administration

    TaskCommand
    List servicessystemctl list-units --type=service
    Start PostgreSQL (Metasploit)sudo systemctl start postgresql
    Enable Metasploit DBsudo msfdb init
    View logsjournalctl -u service
    Check IPip a
    Rebootreboot
    Shutdownpoweroff
    Disk usagedf -h
    Memoryfree -h
    Processeshtop

    5. Networking

    TaskCommand
    Scan networknmap -sn 192.168.1.0/24
    Spoof MACmacchanger -r wlan0
    Start monitor modeairmon-ng start wlan0
    Stop monitorairmon-ng stop wlan0mon
    Tunnel trafficproxychains nmap -sT target
    Sniff packetstcpdump -i eth0 -w capture.pcap

    6. Metasploit Quick Start

    msfdb init
    msfconsole
    db_status
    workspace -a pentest1
    search smb
    use exploit/multi/handler
    set payload windows/meterpreter/reverse_tcp
    set LHOST your_ip
    exploit -j

    7. Wordlists & Configs

    PathPurpose
    /usr/share/wordlists/RockYou, dirb, dirbuster
    /etc/proxychains.confEdit for TOR/anonsurf
    /usr/share/nmap/scripts/Custom NSE scripts
    ~/.msf4/Metasploit config & loot

    8. Stealth & Anonymity

    ToolCommand
    TOR routingsudo anonsurf start
    MAC spoofsudo macchanger -r wlan0
    Clean logssudo journalctl --vacuum-time=1d
    Disable historyset +o history

    9. Troubleshooting

    IssueCommand
    Fix APT errorssudo apt update --fix-missing
    Reinstall Kali toolssudo apt install --reinstall kali-linux-default
    Reset Metasploit DBmsfdb reinit
    Check boot issuesjournalctl -b -p err
    Regenerate initramfssudo update-initramfs -u
    Update GRUBsudo update-grub

    10. One-Liners

    # Full update + clean
    sudo apt update && sudo apt full-upgrade -y && sudo apt autoremove && sudo apt clean
    
    # Quick Nmap scan
    nmap -T4 -A -p- 192.168.1.100
    
    # Start all Kali services
    sudo systemctl start postgresql redis-server
    
    # Clone common wordlists
    git clone https://github.com/danielmiessler/SecLists.git /usr/share/wordlists/seclists
    
    # Run Nikto + save output
    nikto -h http://site.com -output nikto.txt
    
    # Start anonymous mode
    sudo anonsurf start && proxychains curl ifconfig.me

    11. Useful Tools to Install

    sudo apt install \
        metasploit-framework \
        burpsuite \
        sqlmap \
        hydra \
        john \
        hashcat \
        aircrack-ng \
        wireshark \
        bloodhound \
        impacket \
        responder \
        evil-winrm

    12. Kali Resources

    # Search tools offline
    kali-tweaks
    apt search kali-

    13. Pro Tips

    • Use Kali in VM or USB persistence – never bare metal
    • Run kali-tweaks for GUI customization
    • Use cherrytree or keepnote for engagement notes
    • Enable undercover mode: kali-undercover
    # Toggle Windows-like UI
    kali-undercover

  • Fedora Linux Cheatsheet

    Fedora Linux Cheatsheet

    Essential commands for installation, package management, system administration, and troubleshooting
    Uses dnf (primary) and flatpak/rpm-ostree (for Silverblue/Atomic). All privileged commands require sudo.


    1. Installation (Live USB / Anaconda)

    TaskCommand / Action
    Boot live ISOSelect “Start Fedora-Workstation”
    Launch installerClick “Install to Hard Drive”
    Disk partitioningUse Blivet-GUI or manual (/boot/efi, /, swap)
    Post-install (first boot)Complete user setup via GNOME Initial Setup
    Manual install (netinstall)Boot netinstall ISO → dnf install @base-x (or minimal)
    Enable RPM Fusion (Free & Nonfree)sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
    sudo dnf install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
    Update systemsudo dnf upgrade --refresh

    2. DNF (Package Management)

    ActionCommand
    Update systemsudo dnf upgrade --refresh
    Install packagesudo dnf install package
    Remove packagesudo dnf remove package
    Search packagednf search keyword
    List installeddnf list installed
    Autoremove unusedsudo dnf autoremove
    Clean cachesudo dnf clean all
    View package infodnf info package
    List files in packagerpm -ql package
    Which package owns filednf provides /path/to/file
    Enable COPR reposudo dnf copr enable user/repo
    History (undo/redo)dnf history
    sudo dnf history undo ID

    Flatpak (GUI & CLI)
    flatpak install flathub org.mozilla.firefox
    flatpak update
    flatpak uninstall package


    3. System Administration (systemd)

    TaskCommand
    List servicessystemctl list-unit-files --type=service
    Enable servicesudo systemctl enable service
    Start servicesudo systemctl start service
    Statussystemctl status service
    View logsjournalctl -u service
    Rebootreboot
    Shutdownpoweroff
    View kernel messagesdmesg | less
    Disk usagedf -h
    Memoryfree -h
    Processeshtop or top
    Kill processkill PID or pkill name

    4. Users & Permissions

    ActionCommand
    Add usersudo useradd -m username
    Set passwordsudo passwd username
    Add to wheel (sudo)sudo usermod -aG wheel username
    Change ownersudo chown user:group file
    Change permissionschmod 755 file

    5. Networking

    TaskCommand
    Check IPip a or nmcli device show
    List Wi-Finmcli device wifi list
    Connect Wi-Finmcli device wifi connect SSID password "pass"
    Restart NetworkManagersudo systemctl restart NetworkManager
    Check DNScat /etc/resolv.conf
    Firewall (firewalld)sudo firewall-cmd --list-all
    sudo firewall-cmd --add-service=http --permanent

    6. Filesystem & Storage

    TaskCommand
    Mount USBsudo mount /dev/sdb1 /mnt/usb
    Unmountumount /mnt/usb
    Format ext4sudo mkfs.ext4 /dev/sdX1
    Check disksudo fsck /dev/sdX1
    Find large filesdu -ah / | sort -rh | head -n 20
    Search filesfind / -name "filename" 2>/dev/null

    7. Fedora Variants

    Fedora Silverblue / Kinoite (Immutable)

    TaskCommand
    Rebase to new versionrpm-ostree upgrade
    rpm-ostree rebase fedora:fedora/40/x86_64/silverblue
    Layer packagerpm-ostree install package
    Remove layeredrpm-ostree override remove package
    Rollbackrpm-ostree rollback
    Check statusrpm-ostree status
    Boot into previousSelect from GRUB

    Toolbox (containerized dev)
    toolbox create
    toolbox enter


    8. Troubleshooting

    IssueCommand
    Boot to recoveryGRUB → e → add systemd.unit=rescue.target → Ctrl+X
    Fix broken depssudo dnf distro-sync
    Reinstall all packagessudo dnf reinstall $(dnf list installed | awk '{print $1}')
    Clear journalsudo journalctl --vacuum-time=2weeks
    Boot errorsjournalctl -b -p err
    Regenerate initramfssudo dracut -f
    Update GRUBsudo grub2-mkconfig -o /boot/grub2/grub.cfg (BIOS)
    sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg (UEFI)

    9. Useful Tools to Install

    sudo dnf install vim htop git curl wget unzip tree dnf-automatic firewall-config

    10. One-Liners

    # Full update + clean
    sudo dnf upgrade --refresh && sudo dnf autoremove && sudo dnf clean all
    
    # Enable fastest mirrors
    sudo dnf install dnf-plugins-core
    sudo dnf config-manager --set-enabled fedora-cisco-openh264
    echo "fastestmirror=True" | sudo tee -a /etc/dnf/dnf.conf
    
    # Show orphan packages
    dnf leaves
    
    # Update Flatpaks
    flatpak update
    
    # Rebase Silverblue to latest
    rpm-ostree update && reboot

    11. Fedora Docs & Resources

    Official Docs: https://docs.fedoraproject.org
    Ask Fedora: https://ask.fedoraproject.org

    # Install offline docs
    sudo dnf install fedora-docs

    12. Quick Install Scripts

    # Post-install script (Workstation)
    sudo dnf install https://rpmfusion.org/... (both repos)
    sudo dnf upgrade --refresh
    sudo dnf install vim htop git @development-tools

    Pro Tip: Use gnome-software or dnfdragora for GUI package management.
    For immutability: Silverblue + Toolbox + Flatpak = future-proof desktop