What ports are and how Linux services listen
A port is how a server sorts incoming traffic to the right service. Learn to read what is listening with ss, and tell a local port from a public one.
Locking down a server you can reach from anywhere: SSH keys, firewall rules, and which ports have any business being open.
Filtering by topic #security · clear
A port is how a server sorts incoming traffic to the right service. Learn to read what is listening with ss, and tell a local port from a public one.
OpenCode is the most starred open source coding agent. Install it on a VPS, run it in tmux as an unprivileged user, and keep its API key locked down.
OpenClaw runs shell commands and browses the web, so a careless setup is dangerous. Harden it on a VPS: unprivileged user, firewall, secrets, systemd.
A KVM VPS separates you from other customers at the hypervisor. The real risk is your own setup: open services, reused keys, unpatched packages, leaked secrets.
What nosuid, nodev and noexec really stop on a Linux VPS, the fstab and bind mount entries for /tmp, /var/tmp, /dev/shm and /home, and what breaks.
An agent proposes an action. A policy service and a person decide it. A sealed executor holds the only credentials. The design that survives prompt injection.
Run open-kritt on a VPS: Docker Compose setup, pinning a release, SSH tunnel to the UI on port 5173, and the provider budget to set before your first scan.
Dormice runs E2B-compatible agent sandboxes on one VPS you own. Install it, execute code in a sandbox, check the isolation, and size the host.
A Claude session key logs a stranger into your whole account. What they can read and spend, why an API key is safer, and how to make a leaked key stop working.
A coding agent runs on text an attacker can write. Map the real injection surfaces on a server, then rank the defences that actually shrink the damage.
Hash a file with sha256sum and verify it against a SHA256SUMS file. Then flip one byte and watch the check fail, so you learn what a checksum really proves.
Claude Code can run any command your user can. What the skip permissions flag changes, and how to contain the blast radius, from sandbox to disposable VPS.
Ubuntu Server 24.04 ships unattended-upgrades, but 20auto-upgrades turns it on. Automatic-Reboot stays false, and a dry run shows what it would install.
Your ssh client warns that the connection is not using a post-quantum key exchange. Find which algorithm you negotiate, and fix the right side.
The Ollama server ships with no authentication, so anything that reaches port 11434 can run your models and pull new ones. The three fixes, in order.
An agent holding your API keys can leak them in one tool call. Give it scoped short lived tokens behind a credential gateway, never the real keys.
A 1995 password sniffing attack in Helsinki produced SSH. Here is the verified timeline from telnet and rlogin to OpenSSH and post-quantum defaults.
Installing a dsh plugin runs someone else's code with your agent's permissions. What a plugin can reach, and how to check one before you install it.
Create a private CA with openssl, sign a leaf certificate, then install the root in /usr/local/share/ca-certificates so Ubuntu trusts your internal HTTPS.
Agent Zero runs code, a browser, and a shell from a Web UI, so exposing it carelessly is dangerous. Set it up on a VPS and lock the Web UI down.
nginx returns 403 and the permissions look fine. Read the SELinux denial, fix the label with semanage and restorecon, and leave enforcing on.
Perplexity open sourced Numbat, an endpoint monitor that records what AI coding agents really do on your servers. What it sees, and what it cannot stop.
Paperclip is the control plane over your AI coding agents. Install it on a VPS, then reach the UI over SSH or a tailnet instead of the public internet.
OpenClaw is a personal AI agent that runs commands on your own server. Here is how one is built, piece by piece, and why hardening comes first.
How npm supply-chain attacks reach a Node app on a VPS: malicious patch releases, postinstall scripts, typosquats, and the deploy practice that stops them.
On an ordinary VPS the host can read your guest memory. What AMD SEV-SNP and Intel TDX change, what attestation proves, and how to check the server you have.
On Ubuntu 24.04 a plain apt install already bans SSH brute force. The fail2ban-client status sshd output proves it, plus the fix when Total failed stays at 0.
Install Webmin on Ubuntu 24.04, then lock it down: SSH tunnel or IP allowlist, a real Let's Encrypt cert, two-factor, and Fail2ban on port 10000.
Which self-hosted secrets manager belongs on one VPS: OpenBao, Infisical, SOPS with age, systemd credentials, or a locked down env file, and what each costs.
Fifteen containers, 4 GiB of RAM minimum. Change the default passwords in .env before first boot, then claim the admin account at /install before anyone else.
Put sshd behind a Tor onion service so the VPS answers on no inbound port. Setup, v3 client authorisation, and the exact order that avoids a lockout.
Docker publishes container ports with iptables rules that skip UFW, so a denied port still answers the internet. See the mechanism and the fixes that work.
Auto mode is now the Claude Code default in terminal and VS Code sessions. What each permission mode does, and which one a server you cannot watch deserves.
List every known CVE affecting the packages on your Debian or Ubuntu VPS with debsecan and debvulns, then alert only on the ones that are worth a reboot.
Self-host a Bitwarden-compatible password manager with Vaultwarden and Docker on a VPS: HTTPS-first, admin token, Fail2ban, tested backups.
Copy a live Vaultwarden vault with sqlite3 .backup, keep the attachments, config.json and rsa_key files, then prove the restore works before you need it.
How SSH keys work and how to manage them: one ed25519 key per device, the permissions sshd demands, config Host blocks, and revoking a lost key.
Sonarr and Radarr warn that Allowed Hosts is not configured. Here is what to type in that field for your setup, and how to get back in if you are locked out.
Mint a self-signed TLS cert Chrome actually accepts on Ubuntu 24.04: one openssl command with SAN, nginx/Apache wiring, and trusting it without curl -k.
OpenHands is an AI agent that writes and runs code, so its setup needs care. Install it on a VPS with Docker and lock down the Web UI and its secrets.
Your VPS is compromised. Isolate it at the provider firewall, snapshot the disk as evidence, rotate every key it held, then rebuild from a clean image.
What a fresh k3s install leaves open on a VPS: port 6443, the kubelet on 10250, kubeconfig mode, NodePorts your firewall never sees, and privileged pods.
Your cloud firewall or handwritten iptables may only cover IPv4, leaving services wide open on IPv6. See why it happens on a VPS and how to close the gap.
Keep passwords and API tokens in a playbook repo safely: encrypt a vars file or one inline string, split staging from production, and rekey cleanly.
A new VPS is a target from its first minute. This ten-minute runbook creates a user, sets SSH keys, disables root, and turns on the firewall.
AI coding agents belong on a machine you can destroy. Blast radius, clean state per task, snapshots, and the VPS pattern that keeps it cheap.
Run Claude Code on an always-on Linux VPS inside tmux so agent sessions survive a dropped SSH connection. Install, harden, and the failure modes to expect.
Vaultwarden encrypts every vault item in the client, so the server holds no plaintext. The real risks are your admin token and your backup file.
Tailscale never holds the keys that encrypt your traffic. Its safety hinges on what a compromised coordination server or stolen identity account can do.
ProtectSystem, PrivateTmp, DynamicUser and NoNewPrivileges explained: what each directive blocks, what it breaks, and how to debug a unit that stops starting.
Six server jobs Claude does well: reading a failed unit's logs, drafting systemd units, reviewing nginx and Compose files, plus what you must never paste.
Hermes needs no GPU: the model runs elsewhere, so a small VPS is plenty. Run it as its own user with ProtectSystem=strict in systemd, and cover IPv6 in UFW.
Huntarr exposed every connected arr API key, then its repo was deleted. Remove it, rotate your keys, and replace it with Wanted searches or a guarded fork.
OpenClaw, Hermes, Dify, OpenHands, and Agent Zero compared: what each agent does best, what it needs, and how to run any of them safely on your own VPS.
A Claude Code mod runs TypeScript inside the agent with your credentials in reach. See what it can touch on a VPS and the checks to run before you install one.
Run Claude Code inside an NVIDIA OpenShell v0.1.2 sandbox on a Docker VPS. Read what the default policy blocks and which attacks it still lets through.
An air gap means no network path at all, and a rented VPS cannot give you one. Build egress-denied inference instead: default-deny outbound, staged weights.
Yes. The .pub file is meant to be shared. How to tell it from the private key in ten seconds, what a stranger can do with each half, and how to make one.
Tailnet lock stops a compromised Tailscale coordination server from adding a node to your tailnet. It also gives you ten secrets you must not lose.
FTP uses TCP 21 plus a separate data channel, FTPS adds TLS, SFTP rides SSH on port 22. Which ports to open, and why plain FTP leaks your password.
An AI agent using a copy of your API key is invisible in the audit log. Give it its own OIDC client in authentik, scope its token, and revoke only that one.
Prompt injection ends with the session. Memory poisoning does not. How hostile text becomes a stored fact, and how to isolate, expire and review it.
Change Linux permissions with chmod: the octal digits, the u/g/o symbolic form, why a recursive numeric mode breaks a tree, and what capital X fixes.
FreeBSD patches the base system with freebsd-update and finds vulnerable packages with pkg audit. Two separate tools, and two separate feeds to watch.
Open SSH, allow a web port, close one, and survive a reboot with firewalld on Rocky or AlmaLinux. Zones explained, plus the --permanent trap.
UFW is the simple way to run a firewall on a VPS. Set a default-deny policy, allow only the ports you need, and turn it on without locking out SSH.
Running a service as root turns one bug into full server access. Give each service its own unprivileged account, or let systemd do it with DynamicUser.
Lock down SSH on your VPS: switch to key-only login, disable root and passwords with a drop-in config, and layer Fail2ban and a VPN on top.