base64 isn't needed for ssh key

This commit is contained in:
Arya Kiran 2023-01-17 20:39:46 +05:30
parent 992a11d35f
commit a4435a2247
Signed by untrusted user who does not match committer: arya
GPG Key ID: 842D12BDA50DF120
2 changed files with 2 additions and 8 deletions

View File

@ -21,4 +21,4 @@ Currently, PublAPI has only two routes, /online and /signup.
| ROUTE | TYPE | EXTRA ARGS | DESCRIPTION |
|---------|------|-----------------|------------------------------------|
| /online | GET | N/A | Returns the number of online users |
| /signup | POST | username, email, ssh | Creates a register script and notifies admins that a new registration request was sent. Note: SSH Key must be sent in base64 form |
| /signup | POST | username, email, ssh | Creates a register script and notifies admins that a new registration request was sent.|

View File

@ -20,12 +20,6 @@ func SignupPage(c *fiber.Ctx) error {
log.Error("username, email and ssh must be filled", username, email, ssh)
return c.SendStatus(fiber.StatusBadRequest)
}
sshke, err := base64.StdEncoding.DecodeString(ssh)
sshkey := string(sshke)
if err != nil {
log.Error("unable to decode base64 ssh key")
return c.SendStatus(fiber.StatusBadRequest)
}
// create user file
f, err := os.Create("/var/publapi/users/" + username + ".sh")
@ -42,7 +36,7 @@ func SignupPage(c *fiber.Ctx) error {
"useradd -Um -s /bin/bash " + username + "\n" +
"printf \"%s\\n%s\" \"${pass}\" \"${pass}\" | passwd " + username + "\n" +
"mkdir /home/" + username + "/.ssh\n" +
"echo '" + sshkey + "' > /home/" + username + "/.ssh/authorized_keys\n" +
"echo '" + ssh + "' > /home/" + username + "/.ssh/authorized_keys\n" +
"chmod 700 /home/" + username + "/.ssh\n" +
"chmod 600 /home/" + username + "/.ssh/authorized_keys\n" +
"chown -R " + username + ":" + username + " /home/" + username + "/.ssh\n" +