From a36af385974d9e0abce601232aa1e6ecd924dd8d Mon Sep 17 00:00:00 2001 From: TsMask <340112800@qq.com> Date: Wed, 24 Apr 2024 15:37:36 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20ssg=E6=8E=88=E6=9D=83=E5=AF=86=E9=92=A5?= =?UTF-8?q?=E7=9A=84=E6=93=8D=E4=BD=9C=E5=86=99=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/framework/utils/ssh/ssh.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/framework/utils/ssh/ssh.go b/src/framework/utils/ssh/ssh.go index 7790f17d..1cb41b59 100644 --- a/src/framework/utils/ssh/ssh.go +++ b/src/framework/utils/ssh/ssh.go @@ -135,8 +135,12 @@ func (c *ConnSSH) SendToAuthorizedKeys() error { return err } authorizedKeysEntry := fmt.Sprintln(strings.TrimSpace(publicKey)) - cmdStr := "echo '" + authorizedKeysEntry + "' >> ~/.ssh/authorized_keys" - _, err = c.RunCMD(cmdStr) + cmdStrArr := []string{ + fmt.Sprintf("sudo chown %s:%s /home/%s/.ssh && sudo chmod 700 /home/%s/.ssh", c.User, c.User, c.User, c.User), + fmt.Sprintf("sudo chown %s:%s /home/%s/.ssh/authorized_keys && sudo chmod 600 /home/%s/.ssh/authorized_keys", c.User, c.User, c.User, c.User), + fmt.Sprintf("sudo echo '%s' >> ~/.ssh/authorized_keys", authorizedKeysEntry), + } + _, err = c.RunCMD(strings.Join(cmdStrArr, " && ")) if err != nil { logger.Errorf("SendAuthorizedKeys echo err %s", err.Error()) return err