개요
sudo와 root, 유저, 그룹들의 설정에 대해서 알아보자
◦ The hostname of your virtual machine must be your login ending with 42 (e.g.,wil42).
◦ You will have to modify this hostname during your evaluation.
◦ You have to install and configure sudo following strict rules.
◦ In addition to the root user, a user with your login as username has to be present. This user has to belong to the user42 and sudo groups.
◦ You have to implement a strong password policy.
◦ To set up a strong configuration for your sudo group
호스트 이름 확인
hostnamectl
그냥 hostnamectl은 hostnamectl status가 실행된다.
호스트 이름 변경
hostnamectl set-hostname host_name
PW 정책 변경
비밀번호 만료 및 수정 정책
비밀번호는 30일 뒤에 만료되고, 비밀번호를 수정하고 2일 뒤에 변경이 가능하고, 7일 전에 경고 메세지를 띄워야하므로
/etc/login.defs
파일의 PASS_MAX_DAYS를 30으로 PASS_MIN_DAYS를 2로 PASS_WARN_AGE를 7로 바꾼다.
login.defs파일의 설정을 바꾼 이후 생성된 계정은 바뀐 정책대로 비밀번호를 설정해야 하지만 기존에 생성되었던 계정은 직접 바꿔줘야한다.
이미 있는 계정에 반영
chage -m 2 -M 30 -W 7 계정이름
chage 명령어는 계정의 패스워드 정책을 변경, 확인하는 명령어이다.
/etc/shadow 파일에서 각각의 계정의 패스워드 설정을 할 수 있다.
계정의 비밀번호 정책 확인
chage -l 계정이름
비밀번호 설정 정책 변경
apt install libpam-pwquality
로 패스워드 설정에 필요한 기능을 제공하는 pam 모듈을 설치해준다.
sudo 설치
apt install sudo
visudo 설정
env_reset : home, logname, path, shell, term, user을 제외한모든 환경변수 리셋
mail_badpass : 잘못된 패스워드로 sudo를 실행했을 시, 지정된 메일로 보고
secure_path : sudo 명령은 현재 계정의 쉘이 아닌 가상 쉘을 생성하고 그 안에서 실행된다. 이때 이 가상 쉘의 환경변수 PATH의 값을 secure_path 옵션을 통해 지정하는 것이다.
authfail_message : 패스워드 오류 가능 횟수를 넘어섰을 경우 출력하는 메세지
passwd_tries : sudo 명령을 실행할 때, 패스워드 오류 가능 횟수
badpass_message : 잘못된 패스워드가 입력되었을 시 출력되는 메세지
log_input, log_output, iolog_dir : sudo 를 통해 실행된 명령들, Input과 output에 대한 log 파일을 iolog_dir에 저장한다.
requiretty : tty환경에서만 sudo 명령이 실행될 수 있도록 한다.