This is an old revision of the document!


OTP authenticator for php

  1. Create a python virtual environment in a location your web server can access:
    cd /home/user/html
    mkdir -p /home/user/html/pyotp-env
    sudo chown user:www-data /home/user/html/pyotp-env
    sudo chmod 770 /home/user/html/pyotp-env
  2. Create a virtual environment as apache2 user and activate it:
    sudo -s -u www-data
    python3 -m venv /home/user/html/pyotp-env
    source /home/user/html/pyotp-env/bin/activate
  3. Install pyotp:
    pip3 install pyotp
  4. Check execution of pyotp:
    
    
  5. Create the python script /home/user/html/pyotp-env/otp.py:
    # Python script to generate authenticator OTP
    import pyotp
    
    # Your Base32 secret key (provided when setting up 2FA)
    secret = "ABCDE1FGHIJK2LMN" 
    
    # Initialize TOTP
    totp = pyotp.TOTP(secret)
    
    # Generate the current 6-digit code
    current_code = totp.now()
    print(current_code)