Imagine you're working on a project and you have the need to support SSH access to several Linux servers used in a project. How could I make sure that 30+ users could log into each system using a unique SSH key assigned only to them, in the most efficient /secure manner for users?
This question extends from a Docker project I worked on last semester which had us create login information for users, but we built a GUI component that rather than SSH access to servers for the application. I am now wondering how one could just do it through SSH access for the users needing to gain access to their account.
This is particularly relevant since I know I have SSH access to school servers running Ubuntu, so I am wondering how they were able to do it.
My thought process:
In the simplest terms, we can create users that are allowed to log in and connect through the Linux servers, and they share the same access file. These files would then have a list of authorized_keys, which match to the 30+ users able to log into them. The Linux servers then refer to the same login information, so all users could log into all of these several servers.
Is this correct? Any guidance or specific notes would be appreciated because I am just overwhelmed with how much to read on it.