mpaas框架中的kylin-H5中的https本地代理的配置

本文详细介绍了如何在Kylin-H5项目中配置HTTPS代理,包括生成p12证书文件的过程,以及在plugin.js中添加HTTPS代理的步骤,适用于需要将HTTP请求转发到HTTPS服务的场景。

本地配置HTTPS的代理时一般都需要把本地项目启动成HTTPS 

vue-cli2框架可以参考文章:

https://blog.youkuaiyun.com/qq_34707038/article/details/83374209

vue-cli 3就更简单了直接在vue.config.js直接添加 https:true 就可以。

但是kylin-H5这个和他们都不一样,他们的转发用的是var proxy = require('http-proxy-middleware');

这个是可以http->https的,所以解决方法如下:

一,其中需要生成一个p12文件

在cmd中执行如下命令:

1,openssl genrsa -out privatekey.pem 1024
2,openssl req -new -key privatekey.pem -out certrequest.csr
直接回车就可以
3,openssl x509 -req -in certrequest.csr -signkey privatekey.pem -out certificate.pem
4,openssl pkcs12 -export -inkey privatekey.pem -in certificate.pem -out certificate.p12

需要输入一下密码,我用的是abc123

二、在plugin.js中添加

var fs = require('fs');

本地代理如下:

// 接入 express 插件, 依赖 build@ 0.1.49+ 及以上版本

express: function modifyExpress(expressInstance) {

// 如果要使用 http-proxy-middleware, cnpm i --save-dev http-proxy-middleware 安装该模块并取消下面的注释

expressInstance.use(

proxy('/imp', {

target:{

protocol: 'https:',

host: 'IP地址',

port: 8443,

pfx: fs.readFileSync('cert/certificate1.p12'),

passphrase: 'abc123',

},

secure: false,

changeOrigin: true

})

);

 

}

};

 

 

<think>好的,我现在需要解决用户在Kylin-Server-10-SP2中root用户无法本地登录的问题。首先,我需要回忆一下常见的Linux系统中root登录限制的可能原因。通常,Linux系统出于安全考虑,默认禁止root用户通过SSH直接登录,但用户提到的是本地登录,所以可能情况不同。 首先,用户的问题可能涉及PAM(Pluggable Authentication Modules)配置。PAM负责系统的认证流程,如果相关配置文件中限制了root用户的访问,就会导致登录失败。常见的配置文件是/etc/pam.d/login和/etc/securetty。我需要检查这些文件是否存在对root用户的限制。 其次,/etc/securetty文件列出了允许root用户登录的终端设备。如果该文件中没有对应的终端(比如tty1),那么root用户将无法通过本地控制台登录。用户应该检查这个文件,确保所需的终端设备(如tty1到tty6)都在列表中。 另外,SELinux或安全加固策略也可能限制root登录。Kylin系统可能启用了SELinux或其他安全模块,需要检查当前状态,并临时禁用或调整策略以测试是否解决问题。 然后,系统可能修改了某些认证日志,查看日志文件(如/var/log/auth.log或/var/log/secure)可以帮助定位问题。通过日志中的错误信息,可以更准确地判断是哪一步认证失败。 还有可能涉及账户锁定策略,比如使用pam_tally2模块锁定root账户。检查/etc/pam.d/system-auth或类似文件,查看是否有登录失败次数限制导致账户锁定。如果是这种情况,可能需要解锁账户或重置计数器。 此外,用户可能修改了默认的shell或环境变量,导致登录失败。检查/etc/passwd中root用户的shell设置是否正确,比如是否为/bin/bash。 参考提供的引用内容,用户之前在配置私有yum源时修改了repo文件,并执行过yum操作。虽然这主要影响软件源,但系统更新或安装的某些安全软件包可能间接影响了登录策略。例如,某些安全加固包可能默认加强root登录限制。 根据引用[3],用户可能需要通过yum回滚操作,如果问题是在更新后出现的。不过用户目前的问题可能并非由更新引起,但若之前有过系统更新,回滚到之前的状态可能是一种解决方案。 综合以上可能因素,我需要逐步引导用户检查这些配置文件和日志,排除每一个可能的错误点。例如,首先检查/etc/securetty是否存在且包含正确的终端,然后查看PAM配置是否有deny root的设置,接着检查SELinux状态和日志中的具体错误信息。如果这些步骤无法解决,再考虑账户锁定或shell配置问题。 最后,确保在操作过程中备份相关配置文件,避免误操作导致系统无法登录。如果用户不熟悉某些步骤,可能需要提供具体的命令示例,如使用visudo检查sudoers文件,或使用sestatus查看SELinux状态等。</think>### Kylin-Server-10-SP2 root用户本地登录失败解决方案 #### 1. 检查PAM认证配置 Kylin系统可能通过PAM模块限制root登录。检查以下文件: ```bash # 查看是否包含"auth required pam_succeed_if.so user != root"等限制语句 cat /etc/pam.d/login cat /etc/pam.d/sshd ``` 若发现类似`deny root`的配置,注释掉相关行并重启服务[^1]。 #### 2. 验证/etc/securetty文件 该文件定义允许root登录的终端: ```bash cat /etc/securetty ``` 确保包含本地终端(如tty1、tty2等)。若文件被清空或缺失,需重建: ```bash echo "tty1" >> /etc/securetty echo "tty2" >> /etc/securetty ``` #### 3. 检查SELinux状态 执行命令查看SELinux是否拦截登录: ```bash sestatus # 临时禁用SELinux(测试用) setenforce 0 ``` 若禁用后登录成功,需调整SELinux策略或保持禁用状态(生产环境需谨慎)[^2]。 #### 4. 查看认证日志 通过日志定位具体错误: ```bash tail -f /var/log/auth.log # 或 journalctl -u systemd-logind ``` 常见错误示例: - `pam_securetty(login:auth): access denied: tty 'tty1'` - `pam_access(login:auth): access denied for user root` #### 5. 检查账户锁定状态 若系统启用了登录失败计数器: ```bash # 查看root账户锁定状态 pam_tally2 --user root # 解锁root账户 pam_tally2 --user root --reset ``` #### 6. 系统更新回滚(可选) 若问题出现在系统更新后,可尝试版本回滚: ```bash yum history list yum history rollback <事务ID> ``` 注意回滚前需将yum源恢复为原始配置[^3]。
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值