리눅스를 사용하면서 sudo 권한을 가진 root 계정만 이용하는 것이 습관이 되면
추 후에 이력관리가 안되어 어려움을 겪는 경우가 많습니다.
저의 경우에는 VM을 올리는 과정에서 history buffer 사이즈를 10000이상 늘려놓고,
아래의 스크립트를 활용해 계정을 생성한 후, 해당 계정을 통해 서버에 접근하는 것을 늘 원칙으로 하고 있습니다.
리눅스의 사용자를 추가하는 스크립트를 공유하도록 하겠습니다.
각 명령어가 하는 일은 주석을 달아 두었으니 참고 부탁드립니다.
adduser.sh 스크립트
#!/bin/bash
##########################
# last update:240429 #
# eunsil2514@gmail.co.kr #
##########################
# 추가할 계정 이름을 변수(username)로 받습니다
read -p "Enter the username: " username
# 추가할 계정이 기존에 존재하는지 확인합니다
if id "$username" &>/dev/null; then
echo "User '$username' already exists."
# 만약 존재한다면, 해당 계정의 패스워드를 변경할 것인지 물어봅니다
read -p "Do you want to set a new password for this user? (y/n): " choice
if [ "$choice" != "y" ]; then
exit 1
fi
else
# 존재하지 않는다면, useradd 명령어를 사용하여 계정을 생성합니다
useradd -m $username
fi
# 해당 계정의 패스워드를 변수(password)로 받습니다
read -s -p "Enter the password for $username: " password
echo
# 계정의 패스워드를 설정합니다
echo "$username:$password" | chpasswd
# 패스워드를 활용한 SSH 접속을 허용한 후, sshd를 재시작해줍니다
sed -i '/PasswordAuthentication/s/no/yes/' /etc/ssh/sshd_config
systemctl restart sshd
# 추가한 유저에 sudo 권한을 부여합니다
# 만약 sudo 권한을 추가하고 싶지 않다면 아래 명령어를 주석처리하세요
echo "$username ALL=(ALL) ALL" | sudo tee -a /etc/sudoers
echo "User '$username' added, and sudo access granted successfully!!"
스크립트 사용 방법
먼저 위의 adduser.sh 스크립트를 서버에 저장한 후, 실행 권한을 부여합니다.
$ chmod +x ./adduser.sh
이후 해당 스크립트를 사용하여 계정을 생성할 수 있습니다.
$ ./adduser.sh
728x90
'Study > Linux' 카테고리의 다른 글
[Command] 모니터링 명령어 모음 (0) | 2024.08.05 |
---|---|
[Command] alias 등록하고, 명령어 쉽게 사용하기 (0) | 2024.07.11 |
[NginX] repository 등록 (0) | 2024.07.08 |
[NginX] NGINX 소스 컴파일로 설치하기 (0) | 2024.05.27 |
[Script] Shell Script 작성을 위한 기초 문법 (0) | 2024.05.03 |
댓글