Skip to content

使用ztapp安全便捷的访问内网WEB应用

CaiShu edited this page Jun 8, 2024 · 3 revisions

概述

中小组织和家庭网络里有很多局域网的WEB应用,比如家庭路由器WEB管理控制台,小企业使用的redmine项目管理软件等。这些软件设计初衷是在安全可控的局域网内使用。但很多时候我们需要在局域网之外,通过互联网来访问这些WEB应用。对于这种场景,大企业通常会采用VPN叠加一些安全设备来解决这个问题,包括建设vpn系统,部署防火墙,WAF,IPS等。对于中小组织和家庭用户,这种方案不仅成本高,而且管理运维复杂,需要专业人员和服务。针对这种情况,ZTM提供ztapp软件,ztapp提供安全、高效、简单易用的内网WEB应用访问能力。

ztapp在ztm网络基础上,提供了内置的客户端浏览器和简化的配置管理。该客户端一方面简化了接入和使用ztm的方式,一方面提供了最简且有效的浏览器能力。用户在ztapp客户端上,导入预先配置的“应用”定义文件,就可以通过互联网远程访问内网里的WEB应用。一起看个例子。这个例子中,运行于组织内部的chatgpt被注册成一个ztapp上的app,用户在ztapp客户端上通过导入app定义文件chatgpt.json后,就可以通过互联网在任意位置访问该内网chatgpt。

演示过程

  1. 下载ztapp。这里我们使用M1的MacBook,目前我们把ztapp作为一个ztm的fork,在ztapp成熟后会合并到ztm中。下载链接是:https://github.com/flomesh-io/ztapp/releases/download/pre-release/ztapp-0.0.3.1-macos-aa64.dmg

  2. 安装后启动ztapp。如果遇到如下图的错误:

ztapp-start-error

可以执行这个命令:

sudo xattr -rd com.apple.quarantine /Applications/ZTAPP.app
  1. 启动后的ztapp如图所示:

ztapp-step1

  1. 点击图中的加号,选择需要导入的app配置文件,在这个例子中就是chatgpt.json。这个文件由管理员生成,其格式也非常简单,我们在附录里会介绍这个配置文件。导入后界面是这样的:

ztapp-step2

  1. 到这里,'chatgpt' app就安装成功了。点击ChatGPT图标,就启动了该应用,显示如下:

ztapp-step3

在用户侧,所有的操作就是这些了~

管理员操作

在管理员侧,需要部署ztm hub,在内网注册chatgpt作为一个“服务”,并且为用户生成这个chatgpt.json的配置文件用于导入app。这里解释一下chatgpt.json文件,这个文件非常简单,内容如下:

{
	"name": "ChatGPT",
	"icon": "data:image/png;base64,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",
	"url": "https://chatgpt.com/",
	"ca":"-----BEGIN CERTIFICATE-----\nMIICoTCCAYkCFGzttH4XK5x78yr0a8N9EKvR4E45MA0GCSqGSIb3DQEBCwUAMA0x\nCzAJBgNVBAMMAmNhMB4XDTI0MDUyMTAyNDMyN1oXDTI1MDUyMTAyNDMyN1owDTEL\nMAkGA1UEAwwCY2EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDPdBnZ\nXEI493HA5JsTW9PFt5HG8zA9XhWEV1P+6ROuh0KXzeVcbuweoHQcU5hAomEdXU02\n0Q8WaYlm4c+ZkG99LFx0943LdpVDsD8jM34OkikuvaYCXOh8Zuapdkhxx409M8YX\nNVqO0GUzSWLza6S7OfHl+FatDrckNrhkxQrvzXDlzK0bmvpi5pzLkkPylm1lVdTI\n9Nhtnk1WubRs2w85WyIbFdHYDCCRCmDdIFhO0NaZaTk0KXs/LEIP0lrFuD6hEENB\n2gS4tzYabf/WzSSIdkLIBC85cqP6fvYCzlBVNnuMuAb2lNIYhlzOUgsfvHsU+H6K\nPilgM3z0HIxAJq4zAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAAnCBGo6tZdK5syN\nN1wFjmzc2kelWU6M2qOn46TV7CEgLmRKHr1+9bXWcXDD3lHgcgXlIhN0/FyhNURF\nInC9PVLwnrJ4BQSsX3Lu4/PrMFsm1A1ECdfeDv2+1TwBnHOr+ZHggWKlxvppin46\nkqZuVyk1tYHVmDSQ5jCvgjhjbOgADgybjRJld5LUMQ97n/SHt4YkIdVo/HidArql\nLHioFbPsiLBos/1kvAUzK6LcSSY93rnygk0aMVCRvg1GavByxQv55mApP9m/TOC6\nDmqg1HjbK+8VXzk8TEq37QY8Iz6crWH0ipVPANw/uFTu8QEsF3Ko8XFmiO1QXfPY\n+NDp8aM=\n-----END CERTIFICATE-----\n",
	"agent":{
		"certificate":"-----BEGIN CERTIFICATE-----\nMIICozCCAYsCFEQKonlZGXxHyR8nMD4ll+8bCZ6EMA0GCSqGSIb3DQEBCwUAMA0x\nCzAJBgNVBAMMAmNhMB4XDTI0MDUyMTAyNDQwOVoXDTI1MDUyMTAyNDQwOVowDzEN\nMAsGA1UEAwwEcm9vdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANLc\nPPH/iDscxogh6E0qFnNqWDatKoX1IER+Fz1JzEoC2sH35P6jirvqlAXb7W3URlCF\nZ+FcYgjYYUmwf6/+ELsNn9Dg1uLFjapY/wxa4ioT7cR+eHgtCmFs8UkmAdLJ++p3\ng6rEoC2PYUxfZQ5TKx8veiYi0r/Fb3YaI4UOe2H5VzxCaibq2jNweIHwiXFiYy6t\nVE+dS3zrxHT7KlTlTr2Y7/ykeBKPA8WC+GoLRfJ1Xl99GVvh/8OAoWA5wrmCvbp3\naNdcgrTbb4EKnoEP3vcIprimGA0fCcPQkT6bxOi1iaaypyzdBcuaeKODT0RohTW7\nxgXXnybjIa8cTpbUIR0CAwEAATANBgkqhkiG9w0BAQsFAAOCAQEAVdyEK8n7oqkV\n+/tRfZnQivP07ozOrzVqdhvZWkkNI3sYk6kpNyIXPqXteJQMW1YLOyua6+2UKRpP\nr76w/biwsSNAhb1yBwcjhP3Wcwb+YJYiivFJD6IlRP9/6qstKNKul3A5rixm9FOJ\nevrqceg6FcFphk3MvqkCNbrRFY5nD1B0ZtOoT0fRIOQuIbQm3F3lrnAZ7AlQDYiB\n0BuXAldh+i9duPZq6JFFRpOySF8jPHL0nWbTNZULQovD+d8lO7/l+nBvNGqzTlQo\nwqrrAiMm0DsRJ+9PHWwmeBRu/+YNqVelT8ECoZCAMWpEE68MafytNWKWMMCzfcGU\n9pZhXiAbKA==\n-----END CERTIFICATE-----\n",
		"privateKey":"-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDS3Dzx/4g7HMaI\nIehNKhZzalg2rSqF9SBEfhc9ScxKAtrB9+T+o4q76pQF2+1t1EZQhWfhXGII2GFJ\nsH+v/hC7DZ/Q4NbixY2qWP8MWuIqE+3Efnh4LQphbPFJJgHSyfvqd4OqxKAtj2FM\nX2UOUysfL3omItK/xW92GiOFDnth+Vc8Qmom6tozcHiB8IlxYmMurVRPnUt868R0\n+ypU5U69mO/8pHgSjwPFgvhqC0XydV5ffRlb4f/DgKFgOcK5gr26d2jXXIK022+B\nCp6BD973CKa4phgNHwnD0JE+m8TotYmmsqcs3QXLmnijg09EaIU1u8YF158m4yGv\nHE6W1CEdAgMBAAECggEAL+5Gv0az/6XkniTBAqtew5kImNMnn6AvF8qmuzSHhspb\n0iwoplZkDp+9ypApyiWu3xZYHPLsSPDwunivqcCBqpdn/OnjBtTbxT1qKnONRf3W\nNix+c2jfm3JRbayBTRpDVJKawCpmc7zMI/lqRgWTP4lCBaG0UMnPMqQx70ixtLz4\nfDbrTOXB3yko0QmnbRuSNKbgrhtOoCm8yLMQKwqDYq/Ek8UuMQUBdB9bsfo1MpmB\n8lYos4U51skA/qJFDwnUzz88KaZHa5NPedw6OIOORn70XMgIcJGOedUIRoquYIcY\nghROkqZDgtBHOuybkEWlps/K0eoMXY8m86qbLBJt0QKBgQD0S+yOq46NUkSHfZOU\n5MnYkuw/RkZMDAF4z2Ap+Ht8Q4pk2LMqqmkAPdsNxlnBuUf8QzJZKDjXa6Dz6suj\nfdy0uPf7DpyHPWKsNGADgTQULt3ZFwgzweTjsm/iDOEVlb18lJX5BUZFlJ8fZqxf\n2C9SquDb3lvMfIXzW3/Rn6AmLQKBgQDc9j+ac2PqvbGnTR9NeU+MuPmOpo4+82Tu\nx3//mUpLXY7ktpxza2bLiWUQWV0yxc+K+BQRxvq63razbqV5UAFfbdX/KEzltZ+o\nqkDcKJFiEWhJfx70nx8QuyjBhSbMJ+jfUZGLWkxpqhCgWySKRNrM91u3yZ3EDpHy\nBoM3jPIssQKBgQDx7urj0+SF8k4pvGRWlUmMMNzEQQ1HLLCcewrqJcntI1pASxcM\njt0Tvy5b8u5a2un+WnHXN+0q8czhIsrvK6tSUshLGopLqLA6iFf5wI/Z2RwdbSDT\nWRcbpFAHFugmHzgb026+wcl5CRmY2G6nMIqVHOM4+3oABeYGPrxT1fidNQKBgGbO\nO7GE1ow1Th7lBxdoxdZXieURIUWwwNlIAQnPLH38Pau0Ov6Ijf9NIbSFn5Mr7fBe\nlBfhWG7xiFfbtynGS5024UYiXgTSiEJVVHAaf+n852SqvKBcGHwUWFYRuYdrWjHt\nJaaMkNjow2uYfFvIxXRv8kCEkd7SWJ0e4pZKAbNBAoGAO9q/3Uq2QepLZs9huaBD\nos3+4IZXd3PAJMRcAL2WPCYMzwhg7eh6ZqQPgQk9yW9uUggXFwaz+Dqfg5BRKqSm\ns9wb2ymFEvk28IBp1EWaZBCEVQDS/dPOZZi73WzI2DIKthFq7fA0hi4R6JqBXyN5\nwYChh3iAufRFj6dINN/4AP0=\n-----END PRIVATE KEY-----\n"
	},
	"bootstraps":["127.0.0.1:8888"],
        "service": "chatgpt",
	"endpoint": "ced79856-c554-409a-bfcd-02ffc6e50aec"
}

这里每个参数的语义如下:

  1. name。这个是app的名称
  2. icon。这个是app在ztapp上显示的图标,是一个base64编码后的png图片
  3. url。这个是用户需要访问的地址。如果没有这个参数,ztapp客户端会访问127.0.0.1:[localport]的地址。这里的差别在于,当声明了该参数,ztapp客户端会配置socks代理来访问这个url;否则ztapp客户端会直接访问该url。这里的localport是一个ztapp内部随机分配的本地端口,该端口映射到远程服务的端口
  4. ca。该参数是访问ztm hub所必需的证书
  5. agent。该参数把用户的ztapp客户端注册成一个ztm agent
  6. bootstrap。该参数是ztm hub的地址
  7. service。该参数表示把ztm上的这个service映射到本地
  8. endpoint。该参数是service提供者的endpoint

总结

通过引入ztapp,最重要的是在ztm基础上引入了两个能力:

  1. app.json,应用配置文件。这个配置文件的引入,简化了ztm的客户端配置过程
  2. 客户端内置浏览器。通过引入内置浏览器,用户通过内置浏览器访问ztapp,因此具有更好安全性和用户体验。当用户使用系统浏览器访问应用时候,通常系统浏览器会带有额外的行为,如一些特定插件访问特定的地址,这些操作往往是信息泄漏的源头。并且不同的用户在不同系统上,可能会使用不同品牌和版本的浏览器访问应用,针对这些差异化的兼容工作往往并不轻松。

ztapp以ztm为基础,为最终用户提供了便捷、安全、统一的跨互联网访问内网WEB应用的能力。