리눅스 OS 관련 포스팅 목록
2021.12.15 - [Linux/OS] - 리눅스 우분투 쉘 명령으로 다른 사용자 로그인 및 현재 사용자 확인(su)
2021.12.14 - [Linux/OS] - 리눅스 우분투 사용자 생성, 삭제 및 목록 확인(adduser, deluser)
2020.07.11 - [Linux/OS] - 리눅스 우분투 파일 소유자 변경(ubuntu, chown, user)
2020.07.10 - [Linux/OS] - 리눅스 우분투 파일 내용 검색(ubuntu, grep)
2020.07.10 - [Linux/OS] - 리눅스 우분투 특정 파일 검색(Ubuntu, Find)
쉘 명령으로 기존 사용자 비밀번호 변경하기
안녕하세요.
오늘은 운영체제 시스템에서 이미 생성되거나 추가된 계정의 비밀번호를 변경하는 방법에 대해 알아보도록 하겠습니다. 특히 GUI에서 수정하는 방식이 아닌 터미널에서 쉘 명령을 통해 변경해보겠습니다.
비밀번호는 보안이 필요한 정보에 아무나 접근하여 탈취하지 못하도록 인가된 사용자에게만 제공할 수 있도록 하는 일종의 키입니다.
따라서 이렇게 중요한 키가 다른 이에게 뺏기거나 노출되면 더 큰 문제가 발생하게됩니다.
리눅스 운영체제는 일반 개발자들이나 사용자들이 사용하기 쉬운 데스크탑 버전과 웹, 방화벽, 서비스 등 여러 서버 응용프로그램 동작에 유리한 서버 버전이 있습니다.
대기업과 같은 큰 규모에서 사용하는 리눅스 시스템에는 서비스마다 사용자를 생성하여 접근 관리를 하고 있습니다. 그리고 주기적으로 비밀번호를 변경하도록 권고하고 실제로도 그러고 있습니다.
그래서 오늘 배울 예정인 리눅스 사용자 비밀번호 변경은 중요합니다. 사용자가 100개가 넘는다고 가정해봅시다. 이 많은 사용자의 비밀번호를 매번 GUI로 변경하기란 쉽지 않을 겁니다. 따라서 쉘 명령을 통해 변경하면 더욱 간편하겠죠?
오늘 비밀번호 변경하기 예제를 따라하기 위해선 테스트 사용자가 필요합니다. 물론 운영체제 설치 시 기본적으로 설정한 사용자로 진행해도 무방하지만 만약의 실수를 방지하기 위해 테스트 사용자를 추가해주세요.
만약 테스트 사용자 추가 방법을 모르신다면 아래 포스팅을 참고하여 진행한 후 예제를 따라해주세요.
2021.12.14 - [Linux/OS] - 리눅스 우분투 사용자 생성, 삭제 및 목록 확인(adduser, deluser)
해당 사용자로 로그인 후 비밀번호 변경
$ su testuser2
Password: test1234
$ passwd
Changing password for testuser2.
(current) UNIX password: test1234
Enter new UNIX password: test1111
Retype new UNIX password: test1111
passwd: password updated successfully
testuser2@ahope-VirtualBox:/home/ahope$
라인 설명
1: 우선 이전 포스팅에서 사용했던 su 명령을 토해 테스트로 추가한 사용자명 "testuser2"로 로그인합니다. 반드시 변경하려는 사용자로 변경해야 비밀번호를 변경할 수 있습니다.
3: 로그인 후 passwd 명령을 입력합니다. passwd 명령은 인자로 비밀번호를 변경할 사용자명을 입력합니다. 입력하지 않을 경우 자기 자신이 됩니다. 따라서 본 예제에서는 인자를 전달하지 않았습니다.
5: 현재 비밀번호를 입력합니다.
6-7: 변경하려는 새로운 비밀번호를 입력합니다.
만약 같은 사용자가 아닌 다른 사용자가 비밀번호를 변경하려 하면 아래와 같은 권한 오류가 발생합니다. 다른 사용자의 비밀번호를 바꿀 수 있는 경우는 관리자 권한을 사용한 경우입니다.
관리자 권한으로 다른 사용자 비밀번호 변경
$ sudo passwd testuser2
[sudo] password for ahope:
Enter new UNIX password: abc1234
Retype new UNIX password: abc1234
passwd: password updated successfully
ahope@ahope-VirtualBox:/home/ahope$
라인 설명
1: 기존과 다르게 맨 앞에 sudo 명령을 붙이고 passwd 인자로 testuser2를 입력합니다. 즉, testuser2 사용자의 비밀번호를 관리자 권한으로 강제로 변경하겠다는 의미입니다.
3-4: 같은 사용자가 자신의 비밀번호를 변경할 때는 현재 비밀번호를 다시 묻습니다. 하지만 관리자 권한으로 변경 시 현재 비밀번호를 묻지 않고 바로 새로운 비밀번호를 입력합니다.
사용자 목록이 저장된 파일 보기
$ cat /etc/passwd
라인 설명1: 이전 사용자 추가 포스팅에서 다뤘던 내용처럼 "/etc/passwd" 파일을 열면 현재까지 추가된 사용자들의 목록을 확인할 수 있습니다.
마무리
오늘은 리눅스 우분투 환경에서 사용자의 비밀번호를 변경하는 방법에 대해 알아보았습니다.
다른 사용자의 비밀번호를 바꾸기 위해선 관리자 권한이 필요하고 자신의 비밀번호는 쉽게 변경할 수 있었습니다.
다음 포스팅에서는 관리자 권한이 없는 사용자에게 권한을 부여하는 방법에 대해 알아보도록 하겠습니다.
관련 글
리눅스 OS 관련 포스팅 목록
2021.12.15 - [Linux/OS] - 리눅스 우분투 쉘 명령으로 다른 사용자 로그인 및 현재 사용자 확인(su)
2021.12.14 - [Linux/OS] - 리눅스 우분투 사용자 생성, 삭제 및 목록 확인(adduser, deluser)
2020.07.11 - [Linux/OS] - 리눅스 우분투 파일 소유자 변경(ubuntu, chown, user)