修改自定义端口
1、点击目标容器集群名称,进入集群详情页。
2、在菜单栏【插件】中选择【插件市场】,安装nginx-ingress-controller插件。
3、安装插件时指定Ingress-Controller插件http及https端口。
4、您也可通过查看插件详情,按需修改端口重新安装插件即可。
配置基础用户名和密码
步骤一:创建用户名和密码
1、使用htpasswd工具创建一个包含用户名和密码的文件auth,例如添加一个名为foo的用户,该用户的密码是123456。
2、输入 cat auth
查看文件auth,即可查看htpasswd工具生成的用户名和密码的加密形式。
步骤二:新增secret文件
1、点击目标容器集群名称,进入集群详情页。
2、在菜单栏【配置管理】中选择【保密字典】,点击【新增】。
3、创建一个名为“basic-auth”的Secret对象,将auth作为变量名,步骤一htpasswd工具生成的用户名和密码的加密形式作为变量值填入。
4、查看Secret的yaml文件,填入后变量值会自动进行Base64加密。
注:当使用这个Secret对象来进行身份验证时,Ingress控制器会解码这里的Base64字符串,使用其中的用户名和密码来验证用户的身份。如果提供的用户名和密码与这里存储的一致,用户将被允许访问相应的资源。
步骤三、Ingress配置
当用户访问这个Ingress路由时,Ingress控制器会要求用户提供之前创建的“basic-auth”Secret中存储的用户名和密码进行身份验证,只有成功验证的用户才能访问后端服务。
1、点击目标容器集群名称,进入集群详情页;
2、在菜单栏【网络】中选择【路由(Ingress)】,点击【新增】;
3、在新增页面添加以下注解:
身份验证类型:nginx.ingress.kubernetes.io/auth-type:basic
包含用户名和密码的Secret对象名:nginx.ingress.kubernetes.io/auth-secret: basic-auth
需要身份验证的提示信息:nginx.ingress.kubernetes.io/auth-realm:'Authentication Required - foo'
详情可参考社区官方的ingress-nginx controller介绍。