tuiHoneyPot

front and back end of my TUI honeypot
Log | Files | Refs | README

app.py (1255B)


      1 import os, logging
      2 from datetime import timedelta
      3 from flask import Flask
      4 from blueprints.terminal.terminal import terminal_bp
      5 from blueprints.api.api import api_bp
      6 from blueprints.admin.admin import admin_bp
      7 from blueprints.userpanel.userpanel import user_bp
      8 from blueprints.challenges.challenges import challenges_bp
      9 from werkzeug.middleware.proxy_fix import ProxyFix
     10 from dotenv import load_dotenv
     11 
     12 load_dotenv()
     13 
     14 app = Flask(__name__)
     15 
     16 # File upload config
     17 app.config['MAX_CONTENT_LENGTH'] = 1024 * 1024
     18 app.config['UPLOAD_EXTENSIONS'] = ['.jpg']
     19 
     20 # Session management config
     21 app.config['SECRET_KEY'] = os.getenv("SESSION_SECRET")
     22 app.config['PERMANENT_SESSION_LIFETIME'] = timedelta(hours=1)
     23 app.config['SESSION_TYPE'] = 'sqlite3'
     24 
     25 app.register_blueprint(terminal_bp)
     26 app.register_blueprint(api_bp, url_prefix="/api/v1")
     27 app.register_blueprint(admin_bp, url_prefix="/admin")
     28 app.register_blueprint(user_bp, url_prefix="/userpanel")
     29 app.register_blueprint(challenges_bp, url_prefix="/challenge")
     30 
     31 logging.basicConfig(filename='server-logs.log', encoding='utf-8', level=logging.INFO)
     32 logging.info("Starting the server...")
     33 
     34 if __name__ == "__main__":
     35     app.run()
     36 
     37 app.wsgi_app = ProxyFix(
     38     app.wsgi_app, x_for=1, x_proto=1, x_host=1, x_prefix=1
     39 )