Jenkins 사용자 sudo 권한 부여
Jenkins 사용자에게 sudo 권한을 부여하는 방법
Jenkins 사용자가 시스템 작업을 위해 sudo 권한이 필요할 때가 있어. jenkins 유저를 sudo 그룹에 추가하면 돼.
-
usermod로 그룹 추가 (권장):root또는sudo권한 유저로 다음 명령 실행.bash sudo usermod -aG sudo jenkins적용을 위해jenkins유저 세션을 재시작해야 해. -
visudo로 직접 설정 (고급): 특정 명령만sudo암호 없이 실행하게 하려면visudo로sudoers파일을 편집해.bash sudo visudo파일에jenkins ALL=(ALL) NOPASSWD:ALL줄을 추가. 주의:NOPASSWD는 보안상 위험하니 신중하게 사용해야 함.
여기서 배울 것
- `usermod -aG sudo` 명령으로 사용자 그룹 추가하기
- `visudo`를 이용한 `sudoers` 파일 편집 방법
- `jenkins` 사용자에게 `sudo` 권한이 필요한 경우 이해
- `NOPASSWD` 옵션 사용 시 보안 고려
원본 파일 보기 (.claude/skills/tn-make-jenkins-to-super-user/SKILL.md)
---
name: Jenkins 사용자 sudo 권한 부여
description: This skill should be used when the user asks to grant superuser or sudo privileges to the Jenkins user on a Linux server, especially when the Jenkins user needs to perform system-level operations like installing packages.
version: 1.0.0
source: /home/son/prj/resume/backup_notes_260317/notion/Tech Note/make jenkins to super user cb057a58286e46b789e536075a053484.md
---
# make jenkins to super user
jenkins login
sudo su - jenkins
Setup Password
- Login to Jenkins: `sudo su jenkins` (if password is required, setpassword from root user `sudo passwd jenkins`)
- Install PM2: `npm i -g pm2`
how to give super user
### 2. `sudo` 권한을 가진 다른 사용자로 로그인
서버에 `sudo` 권한을 가진 다른 사용자가 있다면, 그 사용자로 로그인하여 `jenkins` 사용자를 `sudo` 그룹에 추가할 수 있습니다.
```bash
bashCopy code
sudo usermod -aG sudo jenkins
```
`jenkins` 사용자가 `apt`를 사용하여 패키지를 설치하려면 `sudo` 권한이 필요합니다. 현재 `jenkins` 사용자는 `sudoers` 파일에 포함되어 있지 않아 `sudo` 명령을 사용할 수 없습니다. 이를 해결하려면 `root` 사용자로 로그인하거나 `sudo` 권한을 가진 다른 사용자를 통해 `jenkins` 사용자를 `sudoers` 파일에 추가해야 합니다.
### 1. `root` 사용자로 로그인
서버에 `root` 사용자의 비밀번호가 있다면, `root` 사용자로 로그인하여 `jenkins` 사용자를 `sudoers` 파일에 추가할 수 있습니다.
```bash
bashCopy code
su -
```
그런 다음, `jenkins` 사용자를 `sudo` 그룹에 추가합니다:
```bash
bashCopy code
usermod -aG sudo jenkins
```
### 2. `sudo` 권한을 가진 다른 사용자로 로그인
서버에 `sudo` 권한을 가진 다른 사용자가 있다면, 그 사용자로 로그인하여 `jenkins` 사용자를 `sudo` 그룹에 추가할 수 있습니다.
```bash
bashCopy code
sudo usermod -aG sudo jenkins
```
### 3. `sudoers` 파일 직접 편집
`visudo` 명령을 사용하여 `sudoers` 파일을 편집할 수도 있습니다. `root` 사용자로 로그인한 후에:
```bash
bashCopy code
visudo
```
그런 다음, `jenkins` 사용자에게 `sudo` 권한을 부여하는 줄을 추가합니다:
```
plaintextCopy code
jenkins ALL=(ALL) NOPASSWD:ALL
```
### 4. 임시로 root 권한을 얻기 위한 방법