JANUSEC应用网关使用教程
1. 项目介绍
JANUSEC应用网关是一个开源的应用程序网关,提供安全的接入服务,包括反向代理、K8S Ingress Controller、自动化ACME证书、WAF、5秒盾、CC防御、OAuth2身份认证、GSLB负载均衡与Cookie合规等功能。它旨在为Web应用提供统一的安全接入,确保应用的安全性和可靠性。
2. 项目快速启动
2.1 环境准备
在开始之前,请确保您的环境满足以下要求:
- SQLite3 或 PostgreSQL 10/11/12/13/14+
- Debian 9/10/11+ 或 CentOS/RHEL 7/8+
- systemd 和 nftables
- Golang 1.19+(仅开发环境需要)
2.2 下载项目
首先,从GitHub克隆JANUSEC应用网关的代码库:
git clone https://github.com/Janusec/janusec.git
2.3 配置文件
进入项目目录并编辑配置文件 config.json
:
{
"host": "127.0.0.1",
"port": "5432",
"user": "janusec",
"password": "123456",
"dbname": "janusec"
}
JANUSEC将自动加密数据库口令。
2.4 编译和运行
编译项目:
go build
切换到root用户并运行:
su
./janusec
2.5 访问管理界面
根据配置文件中的 listen
参数,访问管理界面:
-
当
listen=false
时:- 首次使用:
http://your_primary_node_ip_address/janusec-admin/
- 配置证书后:
https://your_application_domain_name/janusec-admin/
- 首次使用:
-
当
listen=true
时:- 首次使用:
http://your_primary_node_ip_address:9080/janusec-admin/
- 配置证书和应用后:
https://your_primary_node_domain_name:9443/janusec-admin/
- 首次使用:
3. 应用案例和最佳实践
3.1 Web应用安全接入
JANUSEC应用网关可以为Web应用提供统一的安全接入,包括HTTPS、身份认证和安全防御(WAF/CC)等功能。通过配置反向代理和K8S Ingress Controller,可以确保Web应用的安全性和可靠性。
3.2 K8S集群安全接入
在K8S集群中,JANUSEC应用网关可以作为Ingress Controller使用,为Pods提供与普通Web应用相同的安全接入和特性。通过自动化ACME证书,可以确保HTTPS访问的安全性。
3.3 非Web应用的TCP/UDP路由转发
JANUSEC应用网关还支持非Web应用的四层TCP/UDP路由转发,适用于需要安全接入的非Web应用场景。
4. 典型生态项目
4.1 Kubernetes
JANUSEC应用网关可以与Kubernetes集成,作为Ingress Controller使用,提供安全接入和负载均衡功能。
4.2 PostgreSQL
JANUSEC应用网关使用PostgreSQL作为数据库,确保数据的安全性和可靠性。
4.3 OAuth2
JANUSEC应用网关支持OAuth2身份认证,可以与企业微信、钉钉、飞书等平台集成,提供安全的身份认证服务。
通过以上步骤,您可以快速启动并使用JANUSEC应用网关,确保您的应用安全接入和高效运行。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考