Site Tools


2fa

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
2fa [2024/10/28 14:49] – -Formatting hogwild2fa [2024/10/28 15:11] (current) – -Correct instructions for: "/opt/etc/ssh/sshd_config" changes hogwild
Line 1: Line 1:
 ====== Setting up 2FA for SSH using Google Authenticator ====== ====== Setting up 2FA for SSH using Google Authenticator ======
  
-This content was taken from the following forum thread: [[wp>https://www.linksysinfo.org/index.php?threads/howto-set-up-2fa-openssh-with-google-authenticator.78183/#post-345032|Tomato Forum: HOWTO - Set up 2FA openssh with google authenticator]]+This content was taken from a Tomato forum thread: [[https://www.linksysinfo.org/index.php?threads/howto-set-up-2fa-openssh-with-google-authenticator.78183/#post-345032|HOWTO - Set up 2FA openssh with google authenticator]] .
  
-These are simple configuration notes, and not intended to be a complete HOWTO.+These are simple configuration notes, and not intended to be a complete HOWTO. This setup uses openssh with google-authenticator as 2-Factor Authentication. Only the "root" user is supported.\\   \\   \\ **Prerequisites:** Install/setup entware if it isn't already installed. This is not covered here.\\  \\
  
-This setup uses openssh with google-authenticator as 2-Factor Authentication. Only the root user is supported.+Install openssh-server and google-authenticator:
  
  \\  \\
  
-Prerequisites: Install/setup entware if it isn't already installed. This is not covered here.\\+    opkg install openssh-server-pam google-authenticator-libpam
  
- \\ Next, install openssh-server and google-authenticator:+ \\
  
-    opkg install openssh-server-pam google-authenticator-libpam+If this completes without all dependencies, make sure to install any necessary ones.\\
  
-Hopefully, this will include all dependencies. If not, make sure to install any dependencies.\\+ \\  \\
  
- \\+Next, enable openssh-server . This is not covered here. 
 + 
 + \\ \\ Configure the correct settings in configuration file /opt/etc/init.d/S39pre_ssh:
  
  \\  \\
- 
-Next, enable openssh-server . This is not covered here.\\  \\ 
- 
-Configure the correct settings in configuration file /opt/etc/init.d/S39pre_ssh: \\ 
  
     #!/bin/sh     #!/bin/sh
Line 52: Line 50:
  \\  \\
  
-The new service must be enabled at boot time as well: +The new service must be enabled at boot time as well. Make the following changes to the file"/opt/etc/ssh/sshd_config:
- +
- \\ +
- +
-Next, run /opt/etc/ssh/sshd_config and change the following from the defaults:+
  
  \\  \\
Line 101: Line 95:
  
 Now, run google-auth setup and follow the steps: Now, run google-auth setup and follow the steps:
 +
 + \\
  
     google-authenticator     google-authenticator
Line 113: Line 109:
  
 Next, move its config file (.google_authenticator) to the /opt/etc directory: Next, move its config file (.google_authenticator) to the /opt/etc directory:
 +
 + \\
  
     mv .google_authenticator /opt/etc/     mv .google_authenticator /opt/etc/
Line 119: Line 117:
  
 Next, Verify the permissions on the file are "0600" . This is very important. Next, Verify the permissions on the file are "0600" . This is very important.
 +
 + \\
  
     chmod 0600 /opt/etc/.google_authenticator     chmod 0600 /opt/etc/.google_authenticator
Line 125: Line 125:
  
 Now, you should be able to start the sshd service: Now, you should be able to start the sshd service:
 +
 + \\
  
     /opt/etc/init.d/S40sshd start     /opt/etc/init.d/S40sshd start
Line 131: Line 133:
  
  \\ Next, test the configuration from the LAN side by typing the following at the command prompt:  \\ Next, test the configuration from the LAN side by typing the following at the command prompt:
 +
 + \\
  
     ssh -p 2222 root@<lan-ip-of-freshtomato-router>     ssh -p 2222 root@<lan-ip-of-freshtomato-router>
Line 148: Line 152:
  
 After typing Yes, you should see the following: After typing Yes, you should see the following:
 +
 + \\
  
     Keyboard-interactive authentication prompts from server:     Keyboard-interactive authentication prompts from server:
     | Verification code:     | Verification code:
  
- \\ If you see this, it means that 2FA is the only authentication operating. + \\ If you see this, it means that 2FA is the only authentication operating. You can now expose port 2222 (or the port you configured) to the Internet. .
- +
- \\ +
- +
-You can now expose port 2222 (or the port you configured) to the Internet. .+
  
  \\  \\
2fa.1730126999.txt.gz · Last modified: 2024/10/28 14:49 by hogwild