Codex CLI - 우분투에서 device-auth 로그인하기
1. 개요
우분투 서버에 Codex CLI를 설치한 뒤 ChatGPT 계정으로 로그인하려고 했는데, 브라우저를 자유롭게 사용할 수 없는 환경이라 로그인 과정에서 막힌 적이 있다.
이럴 때 codex login --device-auth 명령을 사용하면 장치 코드 방식으로 인증할 수 있다. 다만 이 명령을 실행하기 전에 ChatGPT 웹 설정에서 Codex용 장치 코드 인증을 활성화해야 한다는 점을 뒤늦게 알게 되었다.
이 글에서는 우분투에 Codex CLI를 설치하고, ChatGPT 웹에서 필요한 설정을 켠 뒤, 장치 코드로 로그인하는 과정을 정리한다.
2. 우분투에 Codex CLI 설치
우분투에서 npm을 사용해 Codex CLI를 전역 설치할 수 있다. 먼저 Node.js와 npm이 설치되어 있는지 확인한다.
1
2
node --version
npm --version
그다음 @openai/codex 패키지를 전역으로 설치한다.
1
npm install -g @openai/codex
설치가 끝난 뒤에는 codex 명령을 인식하는지 확인한다.
1
codex --version
공식 문서의 기본 흐름은 프로젝트 디렉토리에서 codex를 실행한 다음 ChatGPT 로그인 방식을 선택하는 것이다. Codex CLI는 터미널에서 로컬 저장소를 확인하고, 파일을 수정하거나 명령을 실행하는 도구이므로 설치 후에는 작업할 프로젝트 디렉토리에서 실행하는 편이 자연스럽다.
3. 로그인 과정에서 발생한 문제
일반적인 데스크톱 환경이라면 브라우저를 열어 로그인하면 되지만, 우분투 서버나 원격 터미널 환경에서는 다음과 같은 제약이 생길 수 있다.
- GUI 브라우저가 설치되어 있지 않다.
- SSH로 접속한 서버라 인증 페이지를 서버에서 열 수 없다.
- 터미널에서 출력된 로그인 주소를 다른 컴퓨터에서 열어야 한다.
이런 환경에서 장치 코드 인증을 시도하려면 아래 명령을 실행한다.
1
codex login --device-auth
명령을 실행하면 터미널에 인증 페이지 주소와 장치 코드가 표시된다. 주소는 브라우저에서 열고, 같은 ChatGPT 계정으로 로그인한 뒤 터미널에 표시된 장치 코드를 입력하면 된다.
그런데 ChatGPT 웹 설정에서 장치 코드 인증을 허용하지 않은 상태라면 이 단계가 정상적으로 진행되지 않을 수 있다.
4. ChatGPT 웹에서 장치 코드 인증 활성화
ChatGPT 웹에서 프로필 메뉴를 열고 다음 경로로 이동한다.
1
설정 → 보안 및 로그인
화면에서 아래 항목을 확인한다.
| 설정 항목 | 의미 |
|---|---|
| Codex CLI | Codex CLI가 계정의 API 모델을 사용할 수 있도록 허용 |
| Codex용 장치 코드 인증 활성화 | 일반 브라우저 로그인이 어려운 환경에서 장치 코드로 인증할 수 있도록 허용 |
특히 우분투 서버처럼 원격 터미널에서 로그인해야 하는 경우에는 Codex용 장치 코드 인증 활성화 토글을 켜야 한다. Codex CLI 항목도 함께 꺼져 있다면 CLI 사용 자체가 제한될 수 있으므로 두 설정을 모두 확인하는 것이 좋다.
내가 확인한 설정 화면은 다음과 같은 형태였다.
보안 및 로그인메뉴에Codex CLI항목이 표시된다.Codex용 장치 코드 인증 활성화토글을 켤 수 있다.- 장치 코드가 피싱 공격에 악용될 수 있다는 보안 안내가 함께 표시된다.
장치 코드는 비밀번호처럼 취급해야 한다. 인증이 끝난 뒤에는 터미널 기록이나 화면 공유에 코드가 노출되지 않았는지도 확인하는 편이 안전하다.
5. 다시 장치 코드 방식으로 로그인하기
ChatGPT 웹 설정을 변경한 뒤 우분투 터미널에서 다시 명령을 실행한다.
1
codex login --device-auth
이후의 흐름은 다음과 같다.
- 터미널에 출력된 인증 주소를 브라우저에서 연다.
- ChatGPT 계정으로 로그인한다.
- 터미널에 출력된 장치 코드를 인증 화면에 입력한다.
- 인증이 완료되었다는 메시지가 터미널에 표시되는지 확인한다.
codex를 실행해 로그인된 계정으로 사용할 수 있는지 확인한다.
로그인 상태가 의심되면 다시 버전을 확인하거나 Codex를 실행해 인증 화면이 반복해서 나타나는지 확인한다.
1
2
codex --version
codex
다만 버전 확인만으로 로그인 상태를 보장하는 것은 아니므로, 실제로 Codex 세션이 시작되는지도 함께 확인해야 한다.
6. 정리
우분투 서버에 Codex CLI를 설치할 때 로그인 화면이 나타나지 않거나 브라우저 인증을 진행하기 어려우면 codex login --device-auth를 사용할 수 있다. 이 명령을 실행하기 전에 ChatGPT 웹의 설정 → 보안 및 로그인에서 Codex용 장치 코드 인증 활성화를 켜는 것이 핵심이다.
정리하면 Codex CLI 사용 허용과 장치 코드 인증 허용은 별도로 확인해야 하는 설정이다. 원격 서버에서 로그인할 예정이라면 설치 직후 로그인 명령만 반복하기보다 ChatGPT 웹 설정을 먼저 확인하면 불필요한 시행착오를 줄일 수 있다.