리눅스 PC (Ubuntu 24.04) 보안 설정

리눅스/OS 일반|2022. 4. 4. 10:50
반응형

[ 패스워드 복잡성 설정 ]

 

# apt-get -y install libpam-pwquality

 

# vi /etc/pam.d/common-password

 

// 25 번째 줄에 옵션 추가

        password    requisite                    pam_pwquality.so retry=3 lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1

// 26 번째 줄에 옵션 추가

        password    [success=2 default=ignore]   pam_unix.so obscure use_authtok try_first_pass yescrypt sha512 minlen=6 maxlen=9

 


[ 계정 잠금 임계값 설정 ]

 

# vi /etc/pam.d/common-auth

 

// 24번째 줄에 아래 내용 추가

        auth    required                        pam_permit.so onerr=tail even_deny_root deny=10 unlock_time=300

 


[ 패스워드 최대 사용기간 설정 ]

 

# vi /etc/login.defs

 

        PASS_MAX_DAYS   90

        PASS_MIN_DAYS   0

        PASS_WARN_AGE   7

        PASS_MIN_LEN 8

 

현재 사용중인 계정은 위와 같은 룰이 적용되지 않기 때문에 아래와 같이 개별적으로 설정해 줍니다.

 

(패스워드 최대 사용일 : 90일)

# chage -M 90 root

# chage -M 90 sysdocu

 

(설정 확인)

# chage -l root

# chage -l sysdocu

 

 

[ 바이러스 스캔 툴 ]

 

# apt -y install clamav

# vi clamavscan.sh

#!/bin/bash

LOGDIR="/var/log/clamav"
LOGFILE="$LOGDIR/clamav-$(date +'%Y-%m-%d').log"
USER=$(who | awk '{print $1}')
DIRTOSCAN="/home/$USER"

if [ ! -d "$LOGDIR" ]; then
    mkdir -p "$LOGDIR"
fi

for S in ${DIRTOSCAN}; do
    DIRSIZE=$(du -sh "$S" 2>/dev/null | cut -f1)

    echo "Starting a daily scan of \"$S\" directory."
    echo "Amount of data to be scanned is \"$DIRSIZE\"."

    clamscan -ri "$S" >> "$LOGFILE"
done

exit 0

 

# chmod 700 clamavscan.sh

# echo "0 12 * * 1 root sh /root/clamavscan.sh" >> /etc/crontab

 

 

[ 기타 설정 ]

 

PC 의 모든 포트에 접근 불가 설정을 합니다.

# echo "ALL : ALL" > /etc/hosts.deny

 

계정 파일 퍼미션을 조정합니다.
# chmod 0400 /etc/shadow
# chmod 0640 /etc/hosts.deny
# chmod 0640 /etc/hosts.allow

 

불필요한 데몬이 있는지 확인합니다.

# netstat -nltp

 

iptables 사무실 PC 셋팅용으로 적용합니다.

- 참고 : https://sysdocu.tistory.com/1486

 

패스워드를 한 번 더 적용합니다.

# echo "root:12345678" | chpasswd

# echo "sysdocu:12345678 | chpasswd

 

반응형

댓글()