-
Notifications
You must be signed in to change notification settings - Fork 57
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rebuilding servers should not require --admin-pass #440
Comments
I've done some research. The closest thing to python's package main
import (
"fmt"
"golang.org/x/crypto/ssh/terminal"
)
func main() {
fmt.Printf("Provide password: ")
password, _ := terminal.ReadPassword(1)
fmt.Printf("\nProvided: %s\n", password)
} |
True. If I'm remembering correctly, the current approach was done for 2 reasons:
What would be the process for accessing the server in this case after it was rebuilt? Putting an SSH key on the server with
That's reasonable, and in fact what I've done for the |
So if you already have a public SSH key on a server and you rebuild it, the SSH key that you used to build the server will still be there. So assuming you haven't changed your SSH key between when you uploaded your pubkey and when you rebuilt the server, you won't need a password to log in. I suspect most people rebuilding servers like that aren't using a password for root. I obviously have nothing but intuition to back that up though. |
OK, that's good to know; I didn't know that.
Probably true. But what about users who don't have a public key on the server? Or who do but then had to change it without realizing (or remembering) it was their only way into the server? For me, it comes down to minimizing the opportunity for problems that occur by accident. I'm OK with not requiring it if we have reasonable solutions for when things go wrong. Thinking out loud: If a user is locked out of a server (or, more generally, has in their possession a server instance), can they make an image of the server and create a new server from that image along with a new SSH key and/or root password, thereby bypassing the credentials needed on the original server for authentication? Or, coming at it from the other side, does there exist a scenario where a user can completely and irreversibly lock themselves out of their own server such that they can never again access the information on it? If not, then what prevents it? |
You have an excellent point, so let me change my request. What if we require one of Some people would rather supply their own via |
Ah, right, but now we've come full-circle, because how would that be different than a user generating a random password and passing it to |
For one, it doesn't get stored in their bash history. For another, we can generate one that would be safer than something "random" a user might come up with. |
That's a choice. This, for example, wouldn't:
I think that's a valid point. |
I think a |
Before I switched to rack, I used rackspace-novaclient. When I rebuilt servers with that tool, I was not required to provide
--admin-pass
and it seems odd that I can only provide it on the command-line. In other words:--admin-pass
and have rack prompt me for the password similarly to python'sgetpass.getpass
?The text was updated successfully, but these errors were encountered: