<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/ufw-made-easy-complete-getting-started-guide-mlwl28t5x" -->

---
title: UFW Made Easy: Complete Getting Started Guide | daily.dev
description: A comprehensive hands-on guide to UFW (Uncomplicated Firewall) on Linux. Covers installation, configuring default deny/allow policies, creating rules for SSH...
canonical: https://daily.dev/posts/ufw-made-easy-complete-getting-started-guide-mlwl28t5x
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: UFW Made Easy: Complete Getting Started Guide | daily.dev
og:description: A comprehensive hands-on guide to UFW (Uncomplicated Firewall) on Linux. Covers installation, configuring default deny/allow policies, creating rules for SSH...
og:url: https://daily.dev/posts/ufw-made-easy-complete-getting-started-guide-mlwl28t5x
og:image: https://api.daily.dev/og/posts/MLwl28T5x.png
og:image:alt: UFW Made Easy: Complete Getting Started Guide
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# UFW Made Easy: Complete Getting Started Guide

**[Learn Linux TV](https://daily.dev/sources/learnlinuxtv)** · 29 min read · 1 upvotes · 0 comments

## Summary

A comprehensive hands-on guide to UFW (Uncomplicated Firewall) on Linux. Covers installation, configuring default deny/allow policies, creating rules for SSH and web server ports (80/443), restricting SSH access to specific IPs, deleting rules by number, rate limiting connection attempts, port ranges, logging levels, and viewing logs with journalctl. Also demonstrates GUFW, the graphical frontend for UFW, for desktop and laptop users.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.youtube.com/watch?v=F-ubkT1WNFk>

## Questions this post answers

### How do I restrict SSH access to a specific IP address using UFW?

Use the command 'sudo ufw allow from <IP_ADDRESS> to any port 22' to permit SSH only from that address. Afterward, delete any existing rule that allows port 22 from anywhere (found via 'sudo ufw status numbered' and 'sudo ufw delete <number>') so the restrictive rule is the only one governing SSH access, for both IPv4 and IPv6.

_Developers hardening SSH access can find configuration walkthroughs like this one through daily.dev._

### What is the difference between deny and reject in UFW firewall rules?

Deny silently drops blocked traffic so the remote system receives no response and the connection times out, while reject actively sends a notification back that the connection was refused. Deny is generally preferred for security because a silent timeout reveals less information to a potential attacker than an explicit rejection response.

_Anyone weighing firewall policy tradeoffs can dig into comparisons like this via daily.dev._

### How do I rate limit SSH connection attempts with UFW to prevent brute force attacks?

Run 'sudo ufw limit ssh' to enable UFW's built-in rate limiting for SSH. This causes repeated connection attempts from the same IP address to trigger temporary blocking, which helps mitigate brute force attacks without requiring a separate tool like fail2ban.

_daily.dev surfaces practical hardening tips like this for developers securing their own servers._

## Similar posts on daily.dev

- [Getting started with UFW: The Uncomplicated Firewall strategy](https://daily.dev/posts/getting-started-with-ufw-the-uncomplicated-firewall-strategy-jijztmtg9) · All Things Open · 1 upvotes · 0 comments
- [How to Set Up a Firewall with UFW on Ubuntu](https://daily.dev/posts/how-to-set-up-a-firewall-with-ufw-on-ubuntu-ajo0bz0wd) · DigitalOcean Community · 0 upvotes · 0 comments
- [Iptables Essentials: Common Firewall Rules and Commands](https://daily.dev/posts/iptables-essentials-common-firewall-rules-and-commands-bsbmrphdb) · DigitalOcean Community · 0 upvotes · 0 comments

---

Tags: [#security](https://daily.dev/tags/security), [#linux](https://daily.dev/tags/linux), [#firewall](https://daily.dev/tags/firewall)

[View this post on daily.dev](https://daily.dev/posts/ufw-made-easy-complete-getting-started-guide-mlwl28t5x)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"UFW Made Easy: Complete Getting Started Guide","url":"https://daily.dev/posts/ufw-made-easy-complete-getting-started-guide-mlwl28t5x","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/ufw-made-easy-complete-getting-started-guide-mlwl28t5x"},"datePublished":"2026-07-23T14:00:37.544Z","dateModified":"2026-07-23T14:00:55.306Z","description":"A comprehensive hands-on guide to UFW (Uncomplicated Firewall) on Linux. Covers installation, configuring default deny/allow policies, creating rules for SSH...","image":"https://i.ytimg.com/vi/F-ubkT1WNFk/sddefault.jpg","thumbnailUrl":"https://i.ytimg.com/vi/F-ubkT1WNFk/sddefault.jpg","isAccessibleForFree":true,"articleSection":"Learn Linux TV","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Learn Linux TV","logo":"https://media.daily.dev/image/upload/s--9jdbhQUw--/f_auto/v1743317312/logos/learnlinuxtv","url":"https://daily.dev/sources/learnlinuxtv"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/ufw-made-easy-complete-getting-started-guide-mlwl28t5x","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":1},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"security,linux,firewall","timeRequired":"PT29M","video":{"@type":"VideoObject","name":"UFW Made Easy: Complete Getting Started Guide","description":"A comprehensive hands-on guide to UFW (Uncomplicated Firewall) on Linux. Covers installation, configuring default deny/allow policies, creating rules for SSH...","thumbnailUrl":"https://i.ytimg.com/vi/F-ubkT1WNFk/sddefault.jpg","uploadDate":"2026-07-23T14:00:37.544Z","duration":"PT29M","url":"https://api.daily.dev/r/MLwl28T5x","embedUrl":"https://www.youtube.com/embed/F-ubkT1WNFk"}}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Learn Linux TV","item":"https://daily.dev/sources/learnlinuxtv"},{"@type":"ListItem","position":3,"name":"UFW Made Easy: Complete Getting Started Guide"}]}
```

