이 문서에서는 Cloud FTP 사용자가 SFTP 서버에 연결하는 데 사용할 수 있는 보안 셸 (SSH) 키를 업데이트하는 방법을 보여줍니다.
시작하기 전에
서버에 연결하는 데 사용할 각 SSH 키 쌍에서 사용자의 공개 키를 가져옵니다. 사용자는 최대 10개의 공개 키를 가질 수 있습니다.
사용자에게 SSH 키 쌍이 없는 경우 다음 단계에 따라 생성합니다.
SSH 키 쌍 생성
SSH 키 쌍을 생성하려면
ssh-keygen유틸리티를 사용합니다. SFTP 서버에 연결할 클라이언트 머신 에서 다음 명령어를 실행합니다.ssh-keygen -t rsa -b 4096 -f ~/.ssh/KEY_PAIR_NAME
KEY_PAIR_NAME을sftp_user_key와 같은 키 쌍의 이름으로 바꿉니다.공개 키는
~/.ssh/KEY_PAIR_NAME.pub파일에 저장됩니다.
필요한 역할
SFTP 사용자를 업데이트하는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대한FTP 관리자 (roles/ftp.admin) IAM 역할을 부여해 달라고 요청하세요.
역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.
이 사전 정의된 역할에는 SFTP 사용자를 업데이트하는 데 필요한
ftp.users.update
권한이 포함되어 있습니다.
커스텀 역할이나 다른 사전 정의된 역할을 사용하여 이 권한을 부여받을 수도 있습니다.
SFTP 사용자의 SSH 키 업데이트
REST
SFTP 사용자의 SSH 키를 업데이트하려면
servers.users.patch 메서드를 사용합니다.
updateMask 쿼리 매개변수에서 userCredentials 필드를 제공합니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: 서버의 Google Cloud 프로젝트 ID입니다.
- LOCATION_ID: 서버의 위치(예:
us-west1)입니다. - SERVER_ID: 서버 ID입니다.
- USERNAME: SFTP 사용자의 사용자 이름입니다.
- CREDENTIAL_NAME: 사용자 인증 정보를 식별하는 고유한 이름입니다.
- SSH_PUBLIC_KEY: OpenSSH 형식의 사용자 SSH 공개 키 본문입니다. 예를 들면
ssh-rsa AAAAB3NzaC1ycRexample...입니다.
사용자의 공개 키를 여러 개 구성하려면
userCredentials 목록에 여러 인증 정보를 제공합니다.
HTTP 메서드 및 URL:
PATCH https://ftp.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/servers/SERVER_ID/users/USERNAME?updateMask=userCredentials
JSON 요청 본문:
{
"userCredentials": [
{
"credentialName": "CREDENTIAL_NAME",
"credentialType": "PUBLIC_KEY",
"sshPublicKeyBody": "SSH_PUBLIC_KEY"
}
]
}
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
응답은 장기 실행 작업을 식별합니다. 사용자가 업데이트되는 데 몇 초 정도 걸립니다.