리눅스에서 다중 사용자 제한

날아올라돼지야·2024년 9월 15일
0

리눅스 마스터 과정

목록 보기
23/31

1. SSH 접속 제한

가장 일반적인 방법은 SSH 접속을 제한하는 것입니다. 대부분의 원격 접속은 SSH를 통해 이루어지기 때문에, SSH 설정을 통해 다중 사용자 접속을 제한할 수 있습니다.

(1) 특정 사용자만 SSH 접속 허용

  • /etc/ssh/sshd_config 파일을 수정하여 특정 사용자만 SSH 접속을 허용할 수 있습니다.

  • AllowUsers 지시자를 사용하여 허용할 사용자 목록을 지정합니다.

    sudo nano /etc/ssh/sshd_config

    파일에 다음 줄을 추가하거나 수정합니다.

    AllowUsers user1 user2

    위 설정은 user1user2만 SSH로 접속할 수 있도록 합니다.

  • 설정 변경 후 SSH 서비스를 재시작합니다.

    sudo systemctl restart sshd

(2) 특정 사용자 SSH 접속 차단

  • DenyUsers 지시자를 사용하여 특정 사용자의 SSH 접속을 차단할 수 있습니다.

    DenyUsers user3 user4

    위 설정은 user3user4의 SSH 접속을 차단합니다.

(3) 그룹 기반 접근 제한

  • 그룹을 기반으로 SSH 접속을 제한하려면 AllowGroups 또는 DenyGroups 지시자를 사용할 수 있습니다.

    AllowGroups sshusers

    위 설정은 sshusers 그룹에 속한 사용자만 SSH로 접속할 수 있도록 합니다.

2. 최대 동시 접속 수 제한

  • SSH에서 최대 동시 접속 수를 제한하려면 /etc/ssh/sshd_config 파일에서 MaxSessionsMaxStartups 지시자를 사용할 수 있습니다.

    MaxSessions 2
    MaxStartups 3
    • MaxSessions 2: 한 사용자가 동시에 가질 수 있는 최대 세션 수를 제한합니다.
    • MaxStartups 3: 시스템에 동시에 접속할 수 있는 최대 SSH 접속 수를 제한합니다.

3. 사용자 셸 제한

  • 특정 사용자가 셸(shell)에 접근하지 못하도록 제한할 수 있습니다. 예를 들어, FTP 사용자와 같이 실제로 셸에 접근할 필요가 없는 사용자에게는 제한된 셸을 할당할 수 있습니다.

(1) /etc/passwd 파일 수정

  • 사용자의 로그인 셸을 /sbin/nologin 또는 /bin/false로 설정하여 셸 접근을 차단할 수 있습니다.

    sudo usermod -s /sbin/nologin user3

    위 명령은 user3 사용자의 셸을 /sbin/nologin으로 변경하여 해당 사용자가 SSH로 접속하는 것을 차단합니다.

4. 시스템 자원 제한

  • PAM(Pluggable Authentication Modules)을 사용하여 각 사용자의 시스템 자원을 제한할 수 있습니다. 예를 들어, 동시에 실행할 수 있는 최대 프로세스 수, 사용 가능한 메모리 등을 제한할 수 있습니다.

(1) /etc/security/limits.conf 설정

  • limits.conf 파일을 수정하여 각 사용자의 자원 사용을 제한할 수 있습니다.

    sudo nano /etc/security/limits.conf

    파일에 다음 내용을 추가합니다.

    user1 hard nproc 10

    위 설정은 user1 사용자가 동시에 실행할 수 있는 최대 프로세스 수를 10개로 제한합니다.

5. 시스템 서비스 접근 제한

  • 특정 서비스에 대한 접근을 제한할 수 있습니다. 예를 들어, 특정 사용자 또는 그룹만 특정 네트워크 서비스에 접근할 수 있도록 제한할 수 있습니다.

6. 방화벽을 사용한 접근 제어

  • 방화벽(예: iptables, ufw)을 사용하여 특정 IP 주소나 네트워크 대역에서만 SSH 접속을 허용하거나 차단할 수 있습니다.

    sudo ufw allow from 192.168.1.0/24 to any port 22

    위 명령은 192.168.1.0/24 네트워크 대역에서만 SSH 접속을 허용합니다.

요약

  • 리눅스에서는 여러 가지 방법으로 다중 사용자 지원을 제한할 수 있습니다.
  • SSH 설정을 통해 특정 사용자 또는 그룹만 접속을 허용하거나 차단할 수 있습니다.
  • 시스템 자원 제한을 통해 한 사용자가 시스템에 과도한 부하를 주지 않도록 제어할 수 있습니다.
  • 이러한 설정은 시스템 보안을 강화하고 자원 관리를 효율적으로 수행하기 위해 사용됩니다.

이러한 제한 방법을 통해 시스템 보안을 강화하고 관리자가 시스템 자원을 효율적으로 활용할 수 있도록 할 수 있습니다.

profile
무슨 생각하며 사니

0개의 댓글

관련 채용 정보