17、应用开发中的错误处理与网络聊天应用案例

应用开发中的错误处理与网络聊天应用案例

1. 限制附带损害

在应用开发过程中,即使出现灾难性错误导致应用崩溃,也需要限制其附带损害。主要有两种关键方法:以非特权用户身份运行和使用 chroot() 监狱。

  • 以非特权用户身份运行

    • 不要以 root 或超级用户身份运行应用。因为以 root 身份运行的服务器进程若存在可利用漏洞,攻击者可能会获得 root 权限。
    • 若确实需要 root 权限(如绑定低于 1024 的端口),在权限不再需要时立即放弃。
    • 对于服务器应用,最好使用专门的非特权用户运行,这样可避免应用影响系统的其他部分。若多个服务器在同一用户下运行,它们可能会相互影响。
  • 使用 chroot() 监狱 chroot() 监狱可确保崩溃的进程不会损害其自身区域之外的文件。由于 chroot() 命令需要 root 或超级用户权限,为确保最大安全性,需结合权限放弃操作。

2. 优雅但不静默地失败

当应用失败时,要确保其优雅地失败,且不能静默失败,记录失败原因的信息非常重要。

  • 优雅失败的含义 :应用应捕获致命错误并自行关闭,而不是由 Linux 关闭应用并转储核心。这样应用有机会通知与其连
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值