분류 전체보기
- As an exception 2020.10.08
- system-auth, password-auth 비교 2020.06.10
- NFS 접근 통제 2020.04.21
- Cisco L3(이상) 스위치 인터페이스에 SSH 설정여부 확인 2020.04.06
- [sed] 옵션 및 설명 2019.10.15
- [MySQL] 쿼리를 txt 파일로 저장하기 2019.09.16
- 계정 잠금 임계값 설정 2019.07.10
- 패스워드 복잡성 설정 2019.07.10
- 비교 표현식 (gt, lt, ge, le, eq, ne) 2019.07.09
As an exception
system-auth, password-auth 비교
1. system-auth (/etc/pam.d/system-auth)
- 적용 대상 : 콘솔 로그인, 일반 계정에서 root 계정 전환 시(su)
- 특이사항
1) 리눅스 5버전 이하까지는 /etc/pam.d/system-auth 파일에서 일괄 관리
2) 리눅스 4버전까지는 no_magic_root과 reset 옵션이 존재했으나,
5버전부터는 기본 적용으로 변경되어 no_magic_root, reset 옵션을 굳이 설정하지 않아도 됨
2. password-auth (/etc/pam.d/password-auth)
- 적용 대상 : SSHD, VSFTPD
- 특이사항
1) 리눅스 6 이상 버전부터는 system-auth, password-auth 분리하여 관리
2) 리눅스 6 이상 버전부터는 pam_tally.so, pam_tally2.so 두개 다 적용 가능
(~ 5버전까지만 pam_tally.so 만 적용할 수 있음)
3. PAM 적용 시 주의사항
1) PAM 버전 확인
- 버전별로 옵션이 다르기 때문에 /usr/share/doc/pam-버전/txts 폴더 내 문서 확인
※ /etc/pam.d/ 이하 파일 수정 시, 수정한 이후부터 로그인하는 모든 계정에 변경된 내용이 적용되므로 잘못 수정하면 콘솔로그인으로 로그인이 불가능함.
해결방법 : 싱글모드로 부팅하여 변경이 필요하므로 정확한 가이드가 필요함
'OS > Redhat, CentOS' 카테고리의 다른 글
NFS 접근 통제 (0) | 2020.04.21 |
---|
NFS 접근 통제
NFS (네트워크 파일 시스템)
- 네트워크를 통해 원격지 서버에서 공유된 자원(파일 시스템)을 localhost에 마운트해서
파일을 공유하기 위해 사용하는 프로그램
- RPC (리모트 프로시져 콜)을 이용하여 네트워크 상에 위치한 다른 컴퓨터의 프로그램에게 서비스를 요청하는데 사용되는 프로토콜
- 공유 파일 서버 사용, 대형 서비스 환경 구축 시 데이터의 일관성을 유지하기 위해 사용
NFS 서버 설정에 사용되는 파일
/etc/exports
- NFS 서버의 주 설정 파일
- NFS 서버에서 공유하는 디렉터리의 정보가 저장되어 있는 파일
/etc/fstab (NFS 서버 X, NFS 클라이언트에서 설정함)
- NFS 서버가 제공하는 디렉터리를 클라이언트에서 부팅 후에도 사용하기 위해, 정보를 저장하고 있는 파일
/etc/sysconfig/nfs
- NFS 서버에서 제공하는 NFS 관련 프로그램들이 사용하는 포트번호를 정의하고 있는 파일
nfsiod, nfs4.x-svc는 NFS 클라이언트 프로세스
1. NFS 서버 설정방법
nfs 패키지 설치
yum -y install nfs-utils
클라이언트에게 공유할 디렉터리 생성
mkdir /var/server_share
공유할 디렉터리 권한 수정
chmod 777 /var/server_share
설정 파일에 내용 추가
vi /etc/exports
/var/server_share 10.10.10.0/24(rw,sync,no_root_squash,no_all_squash)
옵션
ro : NFS 클라이언트에게 읽기만 허용
rw : NFS 클라이언트에게 읽기, 쓰기 허용
sync : 공유 디렉터리 내 파일이 수정되거나 변경되면, 바로 동기화
no_subtree_check : 공유 디렉터리 내 하위 디렉터리를 가지도록 권한 설정
no_root_squash : root(NFS 클라이언트)로 공유 디렉터리 접근 시 root(NFS 서버)와 동일하게 인식되도록 설정
root_squash : NFS 서버에서 익명의 권한으로 지정하고자 할 경우
no_all_squash : 각 사용자의 권한을 공유 디렉터리에서도 동일하게 인식하도록 설정
wdelay : 디스크 쓰기 속도를 지연시켜 데이터가 디스크에 저장되는 횟수를 줄여서 성능 향상 목적으로 사용
no_wdelay : NFS에서 사용하는 데이터의 크기가 작거나, 자주 사용한다면 가능한 빨리 디스크에 기록하도록 하는 옵션
2. /etc/fstab (부팅 후에도 NFS를 통해 마운트했던 디렉터리가 해제되지 않도록 /etc/fstab에 등록)
UUID=**-**-** / xfs defaults 0 0
2.1 마운트 옵션
default - rw, nouser, auto, exec, suid속성을 모두 설정
auto - 부팅시 자동마운트
noauto - 부팅시 자동마운트를 하지않음
exec - 실행파일이 실행되는것을 허용
noexec - 실행파일이 실행되는것을 불허용
suid - SetUID, SetGID 사용을 허용
nosuid - SetUID, SetGID 사용을 불허용
ro - 읽기전용의 파일시스템으로 설정
rw - 읽시/쓰기 전용의 파일시스템으로 설정
user - 일반사용자 마운트 가능
nouser - 일반사용자 마운트불가능, root만 가능
quota - Quota설정이 가능
noquota - Quota설정이 불가능
출처: https://movenpick.tistory.com/34 [MoVenPick]
'OS > Redhat, CentOS' 카테고리의 다른 글
system-auth, password-auth 비교 (0) | 2020.06.10 |
---|
Cisco L3(이상) 스위치 인터페이스에 SSH 설정여부 확인
※ 버전 별로 설정값이 상이할 수 있으니, 구글링을 통해 더 정보를 알아보길 권장함
1. CISCO L3(이상) 스위치에 SSH 설정여부 확인
line vty 0 4
transport input ssh
2. CISCO L3(이상) 스위치에 telnet 설정여부 확인
line vty 0 4
transport input telnet
3. CISCO L3(이상) 스위치에 telnet, ssh 설정여부 확인
line vty 0 4
transport input telnet,ssh
[sed] 옵션 및 설명
1. 개행문자 처리
1) 2개의 행을 1개의 행으로 처리해주는 옵션
$sed -e '/$/N;s/\n/ /' a.txt
2. 찾기, 출력 (화면에서만 출력되며 파일에는 영향 없음)
sed -n '/abd/p' list.txt
list.txt 파일을 한줄씩 읽으면서(-n : 읽은 것을 출력하지 않음) abd 문자를 찾으면 그 줄을 출력(p)한다.
sed 's/address/dress/' list.txt
address를 dress로 바꿈.
** 원본파일을 바꾸지 않고 출력을 바꿔서 함
sed 's/\t/\ /' list.txt
탭문자를 엔터로 변환
sed 's/(공백)(공백)*/(공백)/'list.txt
한개이상의 공백문자열을 하나의 공백으로 바꿈
3. 삭제 (화면에서만 삭제되며 파일에는 영향 없음)
sed '/TD/d' list.txt
TD 문자가 포함된 줄을 삭제하여 출력
sed '/Src/!d' list.txt
Src 문자가 있는 줄만 지우지 않음
sed '1,2d' list.txt
처음 1줄, 2줄만 지움
sed '/^$/d' list.txt
공백라인을 삭제
'프로그래밍 언어 > 쉘 스크립트 문법' 카테고리의 다른 글
비교 표현식 (gt, lt, ge, le, eq, ne) (0) | 2019.07.09 |
---|
[MySQL] 쿼리를 txt 파일로 저장하기
Shell을 이용하여 cmd에서 DBMS에 접근하여 txt 파일로 추출하는 방법
$mysql -u root -p -h hostname -e "select * from table_name;" | sed 's/\t","/g;s/^/"/;s/$/"/;' > dbms.txt
계정 잠금 임계값 설정
※ 본문은 인터넷에서 검색된 내용을 기반으로 작성되었으며 정확한 내용은 Ubuntu를 구축하여 확인하시기 바랍니다.
pam_tally를 사용하여 N번 로그인을 실패하면 계정을 잠글 수 있다.
실패 로그인 카운터는 인증이 성공적으로 이루어지면 재설정된다.
- PAM 설정하기
1. vi /etc/pam.d/common-auth
2. auth required pam_tally.so onerr=fail no_magic_root
1. vi /etc/pam.d/common-account
2. account required pam_tally.so deny=N no_magic_root reset
- 실패한 로그인 시도 로그를 저장할 파일 생성
1. touch /var/log/faillog
2. chown root:root /var/log/faillog
3. chmod 600 /var/log/faillog
'OS > Ubuntu' 카테고리의 다른 글
패스워드 복잡성 설정 (0) | 2019.07.10 |
---|
패스워드 복잡성 설정
※ 본문은 인터넷에서 검색된 내용을 기반으로 작성되었으며 정확한 내용은 Ubuntu를 구축하여 확인하시기 바랍니다.
pam_cracklib와 pam_passwdqc는 비밀번호 길이와 복잡도를 강제하는데 사용되는 모듈로
pam_passwrd가 더 강력하지만 여기서는 pam_cracklib를 사용하여 설정한다.
Debian 배포판에서 pam_cracklib.so 모듈은 libpam_cracklib를 설치해야 사용할 수 있다.
설정하는 방법은 아래와 같다.
1. vi /etc/pam.d/common-password
2. password requisite pam_cracklib.so retry=3 minlen=10 lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1
'OS > Ubuntu' 카테고리의 다른 글
계정 잠금 임계값 설정 (0) | 2019.07.10 |
---|
비교 표현식 (gt, lt, ge, le, eq, ne)
비교 표현식 줄임말
eq - equal ( = )
ne - not equal ( <> )
lt - little ( < )
le - little or equal ( <= )
gt - greater ( > )
ge - greater or equal ( >= )
비교 표현식
구분 |
표현식 |
비교 |
크다 |
a gt b |
a > b |
작다 |
a lt b |
a < b |
크거나 같다 |
a ge b |
a >= b |
작거나 같다 |
a le b |
a <= b |
같다 |
a eq b |
a == b |
같지 않다 |
a ne b |
a !== b |
표현 방식 예시
표현 방식 |
조건 |
[$A -eq $B] |
A 와 B 의 값이 같은 경우 |
[$A -ne $B] |
A 와 B 의 값이 다른 경우 |
[$A -gt $B] |
A 가 B 보다 큰 경우 |
[$A -lt $B] |
A 가 B 보다 작은 경우 |
[$A -ge $B] |
A 가 B 보다 크거나 같은 경우 |
[$A -le $B] |
A 가 B 보다 작거나 같은 경우 |
[-z "$String"] |
문자열의 길이가 0인 경우 |
[-n "$String"] |
문자열의 길이가 0이 아닌 경우 |
참고 사이트
- https://blog.naver.com/sipzirala/220169990592
'프로그래밍 언어 > 쉘 스크립트 문법' 카테고리의 다른 글
[sed] 옵션 및 설명 (0) | 2019.10.15 |
---|