# fn-knock

> Self-hosted gateway that combines reverse proxy, authentication, WAF, SSL certificates, DDNS, and tunneling for home servers and NAS devices.

- **Category:** Security
- **Licence:** MIT
- **Latest version:** v2.5.7
- **Open source:** oss
- **Languages:** Typescript, Rust, Vue
- **Platforms:** Synology, Linux, Windows, macOS, OpenWrt
- **Tags:** SQLite, LDAP, Ssl, Home Server, Nas, TOTP, Zero Trust, OIDC, Reverse Proxy, Access Control, Authentication, Tunneling, WAF, Go, Rust, Golang, Passkey, Self Hosted, Cloudflare, Ddns, Frp, Fnos, Fn Knock

## Description

fn-knock is a high-performance secure gateway designed for NAS devices, software routers, and home servers. It uses a dual Rust (control plane) and Go (data plane) architecture with embedded SQLite storage, eliminating the need for external Redis or Node.js at runtime. The gateway consolidates reverse proxy, authentication (password, time-based one-time passwords, hardware security keys, OpenID Connect, and LDAP/Active Directory), SSL/ACME certificate management, multi-provider DDNS, WAF protection, IP allowlists, geo-blocking, and tunnel management (FRP and Cloudflared) into a single web console. It supports deployment on fnOS (FPK), OpenWrt (APK/IPK), Docker, Linux (systemd/OpenRC), macOS (launchd), Synology DSM 7 (SPK), and Windows (NSIS installer). The management UI runs on port 7991 and the gateway traffic port defaults to 7999. All configuration is managed through the web interface with optional environment variable overrides for container deployments.

## Links

- [Homepage](https://github.com/kci-lnk/fn-knock-turborepo)
- [Website](https://www.fnknock.cn/)
- [Docker](kcilnk/fn-knock)
- [GitHub Repository](https://github.com/kci-lnk/fn-knock-turborepo)
- [Documentation](https://docs.fnknock.cn/)
- [Changelog](https://www.fnknock.cn/changelog)

---
Source: https://selfhost.directory/project/fn-knock-turborepo