Python中Flask部署需要加密,有什么思路吗

谢谢各位大佬指点


Python中Flask部署需要加密,有什么思路吗
18 回复
  1. pyc 部署,可以挡住小白
    2. 关键代码用 C 或者 Cython 写

对于Flask应用部署的加密需求,通常指保护传输数据(HTTPS)和代码/配置(环境变量、加密文件)。核心思路是:

  1. 传输层加密(HTTPS):使用WSGI服务器(如Gunicorn、uWSGI)搭配Nginx反向代理,通过Let’s Encrypt获取免费SSL证书。示例Nginx配置:
server {
    listen 443 ssl;
    server_name yourdomain.com;
    ssl_certificate /path/to/fullchain.pem;
    ssl_certificate_key /path/to/privkey.pem;
    location / {
        proxy_pass http://127.0.0.1:5000;
    }
}
  1. 敏感数据保护:用python-dotenv加载.env文件(加入.gitignore),结合cryptography库加密关键配置:
from cryptography.fernet import Fernet
import os

key = Fernet.generate_key()
cipher = Fernet(key)
encrypted_data = cipher.encrypt(b"sensitive_info")
# 解密时:cipher.decrypt(encrypted_data)
  1. 依赖与环境加固:用pip freeze > requirements.txt锁定依赖版本,虚拟环境隔离。

总结:上HTTPS,敏感数据别硬编码。

加密?你服务器没有密码吗?

加什么密啊。程序跑起来之后把 src 目录直接删掉。

犀利啊

#3 是个狼人

代码混淆

3# 这操作我学到了呀哈哈
之前想过一个思路,魔改解释器,将代码进行非对称加密.解释器自带解密功能,代码分发时候进行加密.
保证解释器不被 hack 掉,那代码应该就是没办法看到的了.

nuitka + upx

服务器极其稳定,从不重启

编译成 so 文件

收费重启。23333

其实我想设计一套无文件远程加载系统。

函数编译成 pyd,其实就相当于 so。再加壳。

我们是代码全部 cython 编译,不知道还能不能被破解

#11 最终还是要映射到内存吧,block 一复制就出来了,防君子不防小人。

@楼上 说得好有道理,不过你都会复制内存了。一般的加密能防住?

要继续玩下去,比如启动的时候识别已知进程,你启动别的不认识进程有 root 权限直接退出。

一般 pyinstaller 之类打个二进制包比较靠谱

serverless 好了

回到顶部