-
Notifications
You must be signed in to change notification settings - Fork 0
security
blycr edited this page Jan 1, 2026
·
2 revisions
本页面介绍LAN文件服务器的安全特性、安全配置和安全最佳实践,帮助您确保服务器的安全运行。
- 动态密码验证:基于时间窗口的动态密码验证机制
-
固定用户名:使用固定用户名
blycr进行身份验证 -
动态密码格式:密码格式为
yyyymmddHHMM(基于当前时间) - 时间窗口:支持当前时间前后5分钟内的密码
- 防重放攻击:记录已使用的密码时间戳,防止重复使用
- 会话管理:基于UUID的会话ID,24小时有效期
- 会话Cookie:使用HTTP Cookie维持登录状态
- IP封禁机制:连续5次认证失败后,IP临时封禁5分钟(可配置)
- 失败尝试计数:记录每个IP的失败尝试次数
- 自动解封:封禁时间到期后自动解封IP
- 目录遍历防护:使用Path.is_relative_to()防止目录遍历攻击
- 白名单文件类型:仅处理预定义的20种多媒体文件格式
- 共享目录限制:仅允许访问配置的共享目录内的文件
- 本地存储:所有文件都存储在本地,不会上传到云端
- 局域网访问:仅支持同一网络下的设备访问
- 无外部依赖:不依赖任何外部服务,减少安全风险
在config.json文件中配置认证相关设置:
{
"auth": {
"username": "blycr"
},
"server": {
"failed_auth_limit": 5,
"failed_auth_block_time": 300
}
}注意:当前版本使用固定用户名和基于时间的动态密码,无需配置密码哈希和盐值。
服务器安全配置集成在config.json文件中,与认证配置位于同一文件中。
- 使用强密码,包含大小写字母、数字和特殊字符
- 定期更换密码
- 不要使用容易猜测的密码
- 使用强密码:配置复杂的用户名和密码
- 限制共享目录:仅共享必要的目录,避免共享系统目录
- 定期备份配置文件:防止配置丢失
- 不要修改默认的安全设置:除非您了解其影响
- 仅在信任的网络中运行:LAN文件服务器设计用于局域网环境
- 定期更新Python:保持Python版本最新,获取最新安全补丁
- 监控服务器日志:定期检查日志文件,发现异常活动
- 不要在公网中暴露:LAN文件服务器不适合在公网环境中运行
- 限制访问IP:仅允许信任的IP访问服务器
- 定期清理会话:定期清理过期会话
- 使用HTTPS:如果需要,可以配置SSL证书启用HTTPS
- 及时退出登录:使用完毕后及时退出登录
- 仅支持单用户:目前仅支持单一用户身份验证
- 无HTTPS默认支持:需要手动配置SSL证书
- 无文件级权限控制:所有文件对认证用户都可见
- 使用防火墙:配置防火墙限制服务器访问
- 定期更新:关注项目更新,获取最新安全修复
- 审计代码:如果您有安全顾虑,可以审计代码
- 使用VPN:如果需要从外部访问,可以使用VPN
- 定期检查项目GitHub仓库获取安全更新
- 关注项目的安全公告
- 及时更新到最新版本
如果您发现安全问题:
- 立即停止服务器
- 检查日志文件,了解事件详情
- 修复安全问题
- 更改密码
- 重新启动服务器
- 考虑向项目维护者报告安全问题