Linux 사용자 추가

LinuxBeginner
지금 연습하기

소개

Linux 사용자 관리는 시스템 관리자에게 필수적인 기본 기술입니다. 이는 적절한 시스템 접근 및 보안을 보장하기 위해 사용자 계정을 생성, 수정 및 유지 관리하는 것을 포함합니다. 이 Lab 에서는 Linux 환경에서 사용자를 관리하는 방법을 배우게 되며, 특히 사용자 추가 및 권한 구성을 중점적으로 다룹니다. 이러한 기술은 모든 Linux 시스템의 보안과 무결성을 유지하는 데 필수적입니다.

이것은 가이드 실험입니다. 학습과 실습을 돕기 위한 단계별 지침을 제공합니다.각 단계를 완료하고 실무 경험을 쌓기 위해 지침을 주의 깊게 따르세요. 과거 데이터에 따르면, 이것은 초급 레벨의 실험이며 완료율은 84%입니다.학습자들로부터 100%의 긍정적인 리뷰율을 받았습니다.

새로운 사용자 생성

Linux 의 사용자 계정을 통해 개인은 특정 권한으로 시스템에 접근할 수 있습니다. 각 사용자는 고유한 사용자 이름, 사용자 ID (UID), 홈 디렉토리 및 기본 쉘을 갖습니다.

이 단계에서는 시스템에 "cipher"라는 새 사용자를 생성합니다.

  1. LabEx VM 환경에서 터미널을 엽니다. 터미널은 이미 기본 위치 /home/labex/project에 있어야 합니다.

  2. 새 사용자를 생성하기 위해 적절한 옵션과 함께 useradd 명령을 사용합니다.

sudo useradd -m -s /bin/bash cipher

명령어를 이해해 봅시다:

  • sudo: 사용자 관리에 필요한 슈퍼유저 권한으로 명령을 실행합니다.
  • useradd: 새 사용자를 생성하는 데 사용되는 명령입니다.
  • -m: 이 옵션은 새 사용자의 홈 디렉토리를 /home/cipher에 생성합니다.
  • -s /bin/bash: 사용자의 기본 쉘을 bash 로 설정합니다.
  • cipher: 우리가 생성하려는 새 사용자의 사용자 이름입니다.
  1. 홈 디렉토리를 나열하여 사용자가 생성되었는지 확인합니다.
ls -l /home

다음과 유사한 출력을 볼 수 있습니다.

total 8
drwxr-xr-x 2 cipher cipher 4096 Oct 15 10:30 cipher
drwxr-xr-x 5 labex  labex  4096 Oct 15 10:00 labex

cipher에 대한 항목은 사용자와 해당 홈 디렉토리가 성공적으로 생성되었음을 확인합니다.

새로운 사용자 비밀번호 설정

모든 사용자 계정은 무단 접근을 방지하기 위해 안전한 비밀번호를 가져야 합니다. 이 단계에서는 이전 단계에서 생성한 "cipher" 사용자의 비밀번호를 설정합니다.

  1. passwd 명령을 사용하여 사용자의 비밀번호를 설정합니다.
sudo passwd cipher
  1. 새 비밀번호를 두 번 입력하라는 메시지가 표시됩니다. 원하는 비밀번호를 입력하고 각 항목 후에 Enter 키를 누릅니다. 보안상의 이유로 입력하는 비밀번호는 화면에 표시되지 않습니다.
New password:
Retype new password:

두 비밀번호가 일치하면 확인 메시지가 표시됩니다.

passwd: password updated successfully
  1. shadow 파일의 비밀번호 필드가 더 이상 비어 있지 않은지 확인하여 비밀번호가 설정되었는지 확인합니다.
sudo grep cipher /etc/shadow | cut -d: -f2 | grep -v '!'

문자열이 반환되면 비밀번호가 성공적으로 설정되었음을 의미합니다. 출력은 실제 비밀번호가 아닌 암호화된 형태를 표시합니다.

확인 명령을 자세히 살펴보겠습니다.

  • grep cipher /etc/shadow는 사용자 이름을 포함하는 줄을 찾습니다.
  • cut -d: -f2는 비밀번호 필드 (두 번째 필드) 를 추출합니다.
  • grep -v '!'는 '!'를 포함하지 않는 줄만 표시합니다.

마지막 부분 (grep -v '!') 은 특히 중요한데, Linux 에서는 다음과 같습니다.

  • 비밀번호가 없거나 잠긴 계정은 비밀번호 필드에 '!'를 갖습니다.
  • 유효한 비밀번호가 있는 계정은 '!' 없이 암호화된 해시를 갖습니다.

따라서 명령이 출력을 반환하면 실제 비밀번호 해시를 노출하지 않고 유효한 비밀번호가 설정되었음을 확인합니다.

사용자 정보 보기

사용자를 생성한 후에는 해당 사용자에 대한 정보를 보는 방법을 아는 것이 중요합니다. Linux 는 이 목적을 위해 여러 명령을 제공합니다.

  1. 먼저 id 명령을 사용하여 "cipher" 사용자에 대한 기본 정보를 확인해 보겠습니다.
id cipher

이렇게 하면 사용자 ID (uid), 그룹 ID (gid) 및 사용자가 속한 그룹이 표시됩니다. 출력은 다음과 유사해야 합니다.

uid=1001(cipher) gid=1001(cipher) groups=1001(cipher)
  1. 이제 기본 사용자 정보를 포함하는 /etc/passwd 파일에서 사용자의 항목을 확인해 보겠습니다.
grep cipher /etc/passwd

출력은 콜론으로 구분된 필드를 포함하는 한 줄이 됩니다. 예를 들어:

cipher:x:1001:1001::/home/cipher:/bin/bash

이러한 필드는 다음을 나타냅니다.

  • 사용자 이름: cipher
  • 비밀번호: x (실제 비밀번호는 /etc/shadow에 저장됨)
  • 사용자 ID: 1001
  • 그룹 ID: 1001
  • GECOS 필드: (이 경우 비어 있음, 종종 사용자의 전체 이름을 포함)
  • 홈 디렉토리: /home/cipher
  • 로그인 쉘: /bin/bash
  1. finger 명령을 사용하여 사용자 정보를 더 읽기 쉬운 형식으로 볼 수도 있습니다. 먼저 finger 패키지를 설치합니다.
sudo apt-get update
sudo apt-get install -y finger
  1. 이제 finger 를 사용하여 cipher 사용자에 대한 정보를 봅니다.
finger cipher

출력은 로그인 상태 및 홈 디렉토리를 포함하여 더 사람이 읽기 쉬운 형식으로 정보를 표시합니다.

Login: cipher                           Name:
Directory: /home/cipher                 Shell: /bin/bash
Never logged in.
No mail.
No Plan.

사용자를 그룹에 추가

Linux 는 그룹을 사용하여 사용자를 구성하고 파일 및 리소스에 대한 액세스를 제어합니다. 이 단계에서는 사용자를 기존 그룹에 추가하는 방법을 배웁니다.

  1. 먼저 사용자가 추가될 "crypto"라는 새 그룹을 생성해 보겠습니다.
sudo groupadd crypto
  1. 이제 usermod 명령을 사용하여 "cipher" 사용자를 "crypto" 그룹에 추가합니다.
sudo usermod -aG crypto cipher

이 명령에서:

  • sudo: 슈퍼유저 권한으로 명령을 실행합니다.
  • usermod: 사용자 계정을 수정하는 명령입니다.
  • -aG: 사용자를 그룹에 추가하는 옵션입니다 (-a 는 추가, -G 는 보조 그룹).
  • crypto: 그룹의 이름입니다.
  • cipher: 사용자 이름입니다.
  1. 사용자가 속한 그룹을 확인하여 사용자가 그룹에 추가되었는지 확인합니다.
groups cipher

출력에는 "cipher" 및 "crypto" 그룹이 모두 포함되어야 합니다.

cipher : cipher crypto
  1. /etc/group 파일에서 그룹의 항목을 확인할 수도 있습니다.
grep crypto /etc/group

출력은 그룹과 해당 멤버를 표시해야 합니다.

crypto:x:1002:cipher

사용자에게 Sudo 권한 부여

관리 작업을 위해 사용자는 종종 높은 권한이 필요합니다. sudo (superuser do) 명령을 사용하면 일반 사용자가 관리 권한으로 명령을 실행할 수 있습니다. 이 단계에서는 사용자에게 sudo 접근 권한을 부여하는 방법을 배웁니다.

  1. Ubuntu 에서 sudo 접근 권한이 있는 사용자는 일반적으로 "sudo" 그룹에 추가됩니다. "cipher" 사용자를 sudo 그룹에 추가합니다.
sudo usermod -aG sudo cipher
  1. 사용자가 sudo 그룹에 추가되었는지 확인합니다.
groups cipher

출력에는 이제 "sudo" 그룹이 포함되어야 합니다.

cipher : cipher crypto sudo
  1. "cipher" 사용자로 전환하고 sudo 로 명령을 실행하여 sudo 접근 권한을 테스트해 보겠습니다. 먼저 cipher 사용자로 전환합니다.
sudo su - cipher
  1. 이제 sudo 권한이 필요한 명령을 실행해 봅니다.
sudo ls /root
  1. cipher 사용자에 대해 설정한 비밀번호를 묻는 메시지가 표시됩니다. 올바르게 입력하면 명령이 성공적으로 실행되어 /root 디렉토리의 내용이 표시됩니다.

  2. cipher 사용자 세션을 종료하고 labex 사용자로 돌아갑니다.

exit

요약

이 랩에서는 Linux 에서 사용자 관리의 기본 개념을 배웠습니다. 새로운 사용자를 성공적으로 생성하고, 비밀번호를 설정하고, 사용자 정보를 확인하고, 사용자를 그룹에 추가하고, sudo 접근 권한을 부여했습니다. 이러한 기술은 시스템 관리자가 Linux 시스템에서 보안을 유지하고 리소스에 대한 접근을 제어하는 데 필수적입니다.

사용자 관리는 시스템 관리의 중요한 측면이며, 여기서 배운 명령과 개념은 보다 진보된 사용자 및 권한 관리 작업의 기초를 형성합니다. 이러한 기본 사항을 숙달함으로써 Linux 시스템 관리 전문가가 되는 길에 들어섰습니다.