티스토리 뷰
리린이(리눅스어린이)에게 서버 구성의 임무가 주어졌다. 리눅스를 많이 사용해보긴 했어도 남이 구성한 환경 위에서 기본적인 명령어나 shell script 정도 만들어서 동작시키고 하는것이 전부였는데 처음부터 구성을 해야 한다. 처음부터 하나씩 해보자. 일단은 사용자 추가 및 폴더 권한을 설정해서 특정 사용자는 특정 폴더에서만 작업을 진행하도록 해야한다.
Group 생성 및 User 생성
root 계정으로 접속 후
$ groupadd -g 1010 testdev
이렇게 그룹부터 생성을 해준다. 1010 이라고 하는건 gruop_id (gid) 이다. 1000 이후의 숫자를 중복이 안되게 넣어주면 된다. 중복이 안되나 확인을 하려면 혹은 그룹이 잘 생성되었는지 확인을 하려면
$ vi /etc/group
으로 확인 가능하다. 맨 아래에 추가되어 있다.
그룹이 잘 생성이 되었으면 그다음은 사용자를 추가해줘야한다.
$ useradd -g 1010 testdev
이렇게 gid, 사용할 계정을 입력하여 간단하게 생성을 할수도 있고 더 나아가 home까지 잡으려면 다음과 같이 하면 된다.
$ useradd -d /home/testdev -u 1010 -g 1010 -s /bin/bash testdev
-d : home directory 생성시 사용하는 옵션
-u : 사용자 추가시 userid (uid) 입력하기 위한 옵션
-g : 추가할 사용자가 위치할 group을 지정할 때 사용하기 위한 옵션
-s : 사용자 추가시 사용자가 사용할 shell을 지정하기 위한 옵션
사용자 생성이 정상적으로 되었는지 확인을 하려면
$ vi /etc/passwd
맨 밑에서 정상적으로 추가가 되었는지 확인한다.
그리고 su 를 사용하기 위해서는 wheel group에 추가를 시켜줘야한다.
$ usermod -G wheel testdev
-G는 기존에 속한 group (testdev) 외에 group을 추가로 넣을때 사용하는 옵션이다.
그리고 생성한 계정의 비밀번호도 초기화 시켜줘야한다.
$ passwd testdev
여기까지 하면 testdev 계정이 생성되었고 이것으로 로그인 가능하다.
특정 계정에 특정 폴더 권한 설정
앞서 testdev 계정을 만들었다. 그럼 이 testdev 계정은 /app 폴더에만 접근 및 컨트롤이 가능하도록 만들고 싶다. root 계정으로 접속한 후
$ chown testdev /app
이렇게 입력하면 된다. testdev 계정으로 들어가서 이 폴더에서 작업을 진행하자.
끝!
잘못된 점이 있다면 언제든지 댓글로 알려주세요~! 감사합니다.
'OS > Linux' 카테고리의 다른 글
linux에서 서버간 SSH 연결이 안될때 hosts.allow 설정 (0) | 2020.07.22 |
---|---|
CentOS (linux) 에서 JAVA 설치하기 (openjdk11) (0) | 2020.07.17 |
rc.local 을 이용해 서버 부팅시 Jenkins, SVN, Sonarqube 자동 실행하기 (0) | 2020.06.19 |
Shell script 문자열 앞뒤 공백 지우기 (trim) (0) | 2020.06.17 |
Shell Script와 Crontab으로 오래된 로그, 백업파일 자동 지우기 (0) | 2020.04.29 |