
# 通过Web浏览器登录资源，报Code：C_515错误怎么办？
#### 问题现象
通过Web浏览器登录Linux或Windows主机资源，报登录错误，提示"运维资源过程中遇到一个错误，请重试或联系管理员（Code：C_515）"。
#### 可能原因
- 原因一：密码输入错误次数超过Linux主机登录安全防护次数上限，导致CBH的IP被加入"/etc/hosts.deny"文件名单。
- 原因二：Linux主机开启了企业主机安全服务（Host Security Service，HSS），多次输入错误密码尝试登录，CBH内网IP被HSS加入"/etc/sshd.deny.hostguard"文件名单。
- 原因三：堡垒机不支持操作系统的SSH算法。（仅针对V3.3.38.0版本以下堡垒机）。
- 原因四：Windows主机开启了防火墙，导致堡垒机与主机网络无法正常连接。
 
#### 解除"/etc/hosts.deny"文件限制
1. 管理员[登录Linux主机](https://support.huaweicloud.com/usermanual-ecs/zh-cn_topic_0013771089.html)。
2. 执行以下命令，查看"/var/log/secure"日志，确认主机拒绝云堡垒机IP记录。 
   **cat /var/log/secure**
   
   
3. 执行以下命令，编辑"/etc/hosts.deny"文件，删除云堡垒机的IP。 
   **vim /etc/hosts.deny**
   
   
4. （可选）将CBH的IP加入白名单。 
   执行以下命令，编辑Linux主机的"/etc/hosts.allow"文件，允许所有IP地址登录，避免影响云堡垒机正常使用。
   **vim /etc/hosts.allow**
   
   
 
#### 解除HSS登录IP限制
1. 查看"/etc/sshd.deny.hostguard"文件。 
   1. 管理员[登录Linux主机](https://support.huaweicloud.com/usermanual-ecs/zh-cn_topic_0013771089.html)。
   
   2. 执行以下命令，查询"/etc/sshd.deny.hostguard"文件。 **cat /etc/sshd.deny.hostguard**
      
   
   3. 执行以下命令，打开"/etc/sshd.deny.hostguard"文件。 **vim** **/etc/sshd.deny.hostguard**
      
   
   4. 确认"/etc/sshd.deny.hostguard"文件中是否有CBH内网IP记录。
   
   
   
   
2. 在HSS服务控制台，解除IP限制。 
   1. [登录HSS服务控制台](https://console.huaweicloud.com/hss/)。
   
   2. 选择"入侵检测 \> 事件管理"，进入事件管理页面。
   
   3. 在"安全告警统计"模块，单击"已拦截IP"，展开已拦截IP列表。
   
   4. 找到并勾选CBH内网IP所在行，单击列表左上角"解除拦截"。
   
   
   
   
3. （可选）将CBH加入IP白名单。 
   在HSS服务控制台，将CBH的IP添加"SSH登录IP白名单"，允许CBH登录到Linux主机。
   
   
![](https://support.huaweicloud.com/cbh_faq/public_sys-resources/note_3.0-zh-cn.png)
此外，建议使用云堡垒机[纳管主机账户密码](https://support.huaweicloud.com/usermanual-cbh/cbh_02_0020.html)，并定期进行[账户同步](https://support.huaweicloud.com/usermanual-cbh/cbh_02_0054.html)，避免手动输入账户密码错误或未同步僵尸账户，而导致云堡垒机IP被加入黑名单。
#### 解除SSH算法限制
1. 检查服务器配置文件"/etc/ssh/sshd_config"。 
   1. 管理员[登录Linux主机](https://support.huaweicloud.com/usermanual-ecs/zh-cn_topic_0013771089.html)。
   
   2. 执行以下命令，查询"/etc/ssh/sshd_config"文件。
      ```
      cat /etc/ssh/sshd_config
      ```
      
   
   3. 执行以下命令，打开"/etc/ssh/sshd_config"文件。
      ```
      vim /etc/ssh/sshd_config
      ```
      
   
   
   
   
2. 在**HostKeyAlgorithms** 行后添加以下算法参数：
   
   **rsa-sha2-512,rsa-sha2-256,ecdsa-sha2-nistp256,ssh-ed25519,ssh-rsa,ssh-dss**
   如果在查询的文件中找不到**HostKeyAlgorithms** 行，可能是该参数缺失，需在**Ciphers and keying**行下面添加以下参数及算法。
   **HostKeyAlgorithms rsa-sha2-512,rsa-sha2-256,ecdsa-sha2-nistp256,ssh-ed25519,ssh-rsa,ssh-dss**
   如果有其他算法的添加需求，可参照[通过SSH客户端登录资源进行运维](https://support.huaweicloud.com/usermanual-cbh/cbh_02_002703.html#section0)进行添加。
   
   
3. 新增完成后，执行以下命令查看所有支持的算法，确定修改或添加的算法已存在。 
   ```
   sshd -T | grep pubkey
   ```
   - 如果服务器安装了nmap，也可执行以下命令进行查询。
     ```
     nmap --script ssh2-enum-algos -sV -p 22 服务器ip
     ```
     如果使用nmap方式查询确认是**key exchange** 算法不匹配时，需临时修改服务器配置。
     1. 执行以下命令打开"/etc/ssh/sshd_config"文件。
        ```
        vim /etc/ssh/sshd_config
        ```
        
     
     2. 执行以下命令添加参数及算法。 **KexAlgorithms curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha1,diffie-hellman-group-exchange-sha256**
        如果参数**KexAlgorithms**已存在，添加算法即可。
        
     
     3. 配置后执行以下命令重启服务器sshd服务。
        ```
        systemctl restart sshd
        ```
        
       
   
   
   
   
4. 执行以下命令重启SSH服务。 
   ```
   systemctl restart sshd
   ```
   
   
 
#### 添加堡垒机IP为白名单
Windows服务器如果是由于开启防火墙导致堡垒机无法正常登录，可在Windows防火墙内添加堡垒机IP为白名单，即可正常登录。
