블로그 이름

[SFTP] You need permission to perform this action You require permission from 본문

개발/기타

[SFTP] You need permission to perform this action You require permission from

Hide 2024. 6. 3. 15:33

authorized_keys 파일 지우려고 하는데

You need permission to perform this action You require permission from username\username to make changes to this file

이라는 문구와 함께 지워지지 않아 해결방법 확인

 


 

이 메시지는 현재 사용자가 해당 파일 또는 디렉토리에 대한 적절한 권한이 없음을 의미합니다. 이를 해결하기 위해 관리자 권한을 사용하여 권한을 수정할 수 있습니다.

1. 관리자 권한으로 PowerShell 실행
먼저, 관리자 권한으로 PowerShell을 실행합니다. 이를 위해 시작 메뉴에서 "PowerShell"을 검색한 후, "Windows PowerShell"을 마우스 오른쪽 버튼으로 클릭하고 "관리자 권한으로 실행"을 선택합니다.

2. 파일 및 디렉토리 권한 수정
관리자 권한으로 PowerShell을 실행한 후, authorized_keys 파일 및 .ssh 디렉토리의 권한을 수정합니다.

powershell
# 사용자 이름과 파일 경로를 확인하고 아래 명령어를 실행합니다.
$sshDirectory = "C:\Users\your_username\.ssh"
$authorizedKeysFile = "$sshDirectory\authorized_keys"

# .ssh 디렉토리의 소유자 변경
takeown /F $sshDirectory /A /R

# authorized_keys 파일의 소유자 변경
takeown /F $authorizedKeysFile /A

# 적절한 권한 부여
icacls $sshDirectory /grant your_username:F
icacls $authorizedKeysFile /grant your_username:F


3. authorized_keys 파일 다시 생성
권한이 수정되면 authorized_keys 파일을 다시 생성합니다.

powershell
# 기존 파일을 삭제
Remove-Item $authorizedKeysFile

# 새로운 authorized_keys 파일 생성
New-Item -Path $authorizedKeysFile -ItemType File

# notepad를 사용하여 파일 열기
notepad $authorizedKeysFile
메모장에서 공개 키를 파일에 붙여넣고 저장합니다. 

 

예:ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAr8m2F8X... your_email@example.com


4. SSH 서비스 재시작
파일을 생성하고 공개 키를 추가한 후, SSH 서비스를 재시작합니다.
powershell
Restart-Service sshd


이제 적절한 권한을 설정한 후, authorized_keys 파일을 생성하고 공개 키를 추가하는 과정이 완료되었습니다. 다시 한 번 클라이언트에서 SSH 키를 사용하여 서버에 접속을 시도합니다.

sh
ssh -i /path/to/id_rsa your_username@your_server_ip


이 방법을 사용하면 권한 문제를 해결하고 authorized_keys 파일을 다시 생성할 수 있습니다.