This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| deb13:otp_authenticator_for_php [2026/08/30 23:23] – Bernard Condrau | deb13:otp_authenticator_for_php [2026/08/30 23:47] (current) – Bernard Condrau | ||
|---|---|---|---|
| Line 9: | Line 9: | ||
| source / | source / | ||
| - Install pyotp:< | - Install pyotp:< | ||
| - | | + | - Create the python script |
| - | | + | import pyotp |
| - | import pyotp:< | + | |
| # Your Base32 secret key (provided when setting up 2FA) | # Your Base32 secret key (provided when setting up 2FA) | ||
| - | secret = "JBSWY3DPEHPK3PXP" | + | secret = "ABCDE1FGHIJK2LMN" |
| # Initialize TOTP | # Initialize TOTP | ||
| Line 21: | Line 20: | ||
| # Generate the current 6-digit code | # Generate the current 6-digit code | ||
| current_code = totp.now() | current_code = totp.now() | ||
| - | print(f" | + | print(current_code)</ |
| + | | ||
| + | - Create a bash script:< | ||
| + | # | ||
| + | source / | ||
| + | python3 / | ||
| + | deactivate | ||
| + | exit 0</ | ||
| + | - Create a php web page which calls the script:< | ||
| + | <?php | ||
| + | $output = shell_exec('/ | ||
| + | echo $output;</ | ||
| + | - Give the scripts correct ownership and permissions:< | ||
| + | sudo chown www-data: | ||
| + | sudo chmod +x / | ||
| + | - In Synology, you can check the OTP like this:< | ||