🌥️Cloud Study🌥️/Etc

[ sudo 권한 ] 권한과 관련된 글

L_Chae 2024. 7. 24. 11:30

요약 : 


 # 자바 설치
sudo apt update
sudo apt install -y openjdk-17-jdk

AWS에서 Terraform으로 인스턴스 구축 시 기초 설정 명령어들을 작성해서 인스턴스 설치 시 알아서 실행되도록 했다.

근데 막상 Jenkins를 통해서 배포하려고 보니까 java 설치가 안 되어있다고 하는 것이다 ... 

 

그리고 인스턴스 설정 시 SSH 포트 자동 변경하도록 해두었는데, 파일 상의 포트는 변경되어있지만 해당 포트로 접속은 안 되는 상황이 벌어졌다.

 

관련해서 주변 사람들하고 얘기해보니 Terraform에서 쿼리 전송 시 sudo 권한이 없는 것 아니냐는 의견이 나왔고,
구글링 좀 하다 보니까 유사한 내용이 Stack overflow에 올라와 있었다.

 

https://stackoverflow.com/questions/37847273/how-to-run-sudo-commands-in-terraform

 

How to run sudo commands in terraform?

My question is similar to this git hub post, but unfortunately it is unsolved: https://github.com/hashicorp/terraform/issues/550 I want a simple way to give sudo privileges to the commands run in...

stackoverflow.com

다른 글들을 더 찾아보니 Terraform에서의 문제 뿐만이 아니라 Jenkins에서도 sudo 권한으로 뭔가 하려고 할 경우 권한 오류가 뜨는 것 같다.

 

# /etc/sudoers 파일에서 jenkins 사용자에게 비밀번호 없이 sudo 권한 부여
jenkins ALL=(ALL) NOPASSWD:ALL

Jenkins의 경우 기본적으로 `jenkins`사용자로 실행되는데,

해당 사용자는 제한된 권한을 가지고 있으므로 `sudo`명령어를 사용하기 위해서는 `jenkins`사용자가 `sudoers`파일에 적절하게 설정되어 있어야 한다.