Study

[리눅스마스터] 리마1급 실기 대비용 리눅스 명령어 정리, 리눅스 네트워크 표기법

파리외 개발자 2022. 5. 10. 23:13

다 외울필요없이 기출 위주로 준비하면서 참고하는 용도

 

네트워크 표기법 (괄호안의 설정파일은 한번만 작성했음)

127.132.1 sendmail(access)
127.132.1. apache(httpd.conf), samba(smb.conf). tcp_wrapper(hosts.allow/deny)
127.132.1.0 xinetd
127.132.1/24 dns(named.conf)
127.132.1.0/24 apache, nfs(exports), squid(squid.conf), iptables, dns, xinetd
127.132.1.0/255.255.255.0 apache, samba, tcp_wrapper, nfs, squid, iptables

useradd

더보기

-p : 사용자 암호 추가 지정

-d : 홈 디렉토리 지정

-g : 1차 그룹 지정

-G : 2차 그룹 지정

-c : 주석

-s : 사용할 쉘 지정

-D : /etc/default/useradd 정보

-m : 사용자 추가 시 홈 디렉토리 생성 (-k 옵션과 함께 사용)

-k : /etc/skel (skeldir 지정)

-f : 패스워드 만기일을 날짜 수로 지정

-e : 만료일 지정(YYYY-MM-DD)

-u : uid 지정

-L : 계정 잠금

-U : 계정 잠금해제

usermod

더보기

-d : 홈 디렉토리 변경 

-m : 기존 파일 및 디렉토리 사용(-dm 홈 디렉토리의 파일 옮겨짐)

-g : 1차 그룹 변경

-G : 2차 그룹 변경

-s : 쉘 변경

-u : uid변경

-e : 만료일 변경

-f : 패스워드 만기 유예기간

-l(소문자 엘) : 사용자 아이디 변경

-L : 계정 잠금

-U : 계정 잠금해제

passwd

더보기

-S : 패스워드 정보

-l(소문자 엘) : 패스워드 일시적 잠금

-u : 패스워드 일시적 잠금해제

-d : 패스워드 삭제

-n : 패스워드 변경 후 최소날짜

-x : 패스워드 유효기간

-w : 패스워드 만료전 경고날짜

-i : 패스워드 만료후 유예기간

-e : 다음 로그인 시 패스워드 변경

chage

더보기

-l : 패스워드 정보

-d : 패스워드 수정날 변경

-m : 최소 날짜 수

-M : 최대 날짜 수

-I(대문자 아이) : 패스워드 만료후 유예기간

-E : 만료일(YYYY-MM-DD)

-W : 만료전 경고날짜

groupadd & groupmod

더보기

-g : gid 지정

-r : gid랜덤 지정 (0~499)

-n : 그룹 이름 변경

사용자 추가 설정파일들

더보기
  • /etc/skel : 사용자 추가 시 기본으로 제공되는 파일, 폴더 설정
  • /etc/default/useradd : 사용자 추가 시 기본 설정(홈 디렉토리 위치 등)
  • /etc/login.defs : 로그인 정보 설정(uid, passwd 등)

패스워드관련 파일 명령어

더보기
  • pwconv : /etc/passwd, /etc/shadow 관리 명령어
  • pwck : /etc/passwd, /etc/shadow 무결성 체크
  • gpasswd : /etc/group, /etc/gshadow 관리 명령어
  • grpck : /etc/group, /etc/gshadow 무결성 체크

파일속성

더보기

lsattr : 속성확인

chattr : 속성부여

chattr +i : 삭제불가능 속성부여

chattr +a : 내용 수정가능 속성부여

chattr -i : 삭제불가능 속성해제

chattr -a : 내용 수정가능 속성해제

fdisk

더보기

-p : 현재 디스크 정보

-d : 파티션 삭제

-n : 파티션 생성

-t : 파티션 속성변경

-w : 저장 후 종료

-q : 저장없이 종료

-l(소문자엘) : 파티션 테이블 정보

-v : fdisk 버전정보

-s [partition] : 특정 파티션 블록단위 크기 출력

mke2fs

더보기

-j : 저널리 파일시스템 ext3로 생성

-b [block_size] : 블록 사이즈 지정

-t : 파일 시스템 지정

mount

더보기

-f : 시스템 호출없이 마운트 점검

-t : 마운트 대상 파티션의 파일 시스템 형식 지정

fsck

더보기

-N : 실행 시 어떤 것이 실행되는지에 대한 정보

-V : 자세한 출력

-v : 버전 정보

-y : 파일 시스템 오류 자동수정

crontab

더보기

-l(소문자엘) : 설정내용 확인

-e : 작성이나 수정

-r : 내용 삭제

*(min)*(hour)*(day)*(month)*(day of week) : 쿼츠크론 표기법

rpm

더보기

-qa | grep : 시스템의 모든 패키지중 해당 문자열이 속하는 패키지 출력

-qi : 패키지의 자세한 정보

-qip : 다운받지 않은 패키지의 정보

-ql(소문자엘) : 해당 패키지가 설치한 파일목록

-qc : 패키지 관련 환경설정, 실행데몬 출력

-qf : 특정 패키지 검색

-rebuilddb : db업데이트

-Va : 모든 패키지 검증

-ivh : i 설치, v 설치중 메시지출력, h 설치진행상황 #표시로 확인

-Uvh : U 설치된 패키지 업그레이드, v 설치중 메시지출력, h 설치진행상황 #표시로 확인

rpmbuild : .src .rpm 패키지 파일로 생성

gcc

더보기

-o : 실행파일 생성 

-c : 오브젝트파일 생성

모듈 명령어

더보기
  • lsmod : 커널에 적재된 모듈 정보
  • insmod : 모듈 적재
  • rmmod : 모듈 제거
  • modprobe : 모듈 적재 or 제거
    • -l(소문자엘) : 사용 가능 모듈정보
    • -r : 모듈 제거 (의존성)
    • -c : 모듈 환경설정파일 출력   
  • modinfo : 모듈 정보
  • depmod : 의존성 검사, 갱신, 생성
  • /lib/modules/커널버전/modules.dep : 의존성 관련 파일
  • /etc/modprobe.conf : 부팅시 로드설정

make

더보기
  • make mrproper : 커널소스 초기화
  • make config : x윈도 형식, 텍스트 문답방식
  • make bzimage : 커널에 이미지 생성
  • make modules : 모듈 컴파일
  • make modules_install : 컴파일된 모듈설치

프린트 명령어

더보기

BSD : lpr, lpq, lprm, lpc (lp뒤에 속성값이 붙는형식)

lpr -# x : BSD계열 프린트 x매 출력

System V : lp, lpstat, cancel (lp뒤에 단어가 붙는 형식)

lp -n x : System V계열 프린트 x매 출력

/etc/printcat : 프린터 설정파일들의 경로

facility 종류

더보기

cron : cron, at

authpriv : ssh, telnet

daemon : telnet, ftp

kern : 커널이 발생한 메시지

lpr : 프린터 유형

user : 사용자 프로세스

priority(위험도)

더보기

info : 기본 정보 메시지

warn : 경고 상태

crit : 상당히 치명적인 단계

emerg : 아주 심각한 단계

//cron과 mail관련된 모든 사항을 해당 경로에 기록
cron,mail.* /var/log/cronmail

//ssh와 같은 인증관련 기록을 root사용자 터미널로 전송
authpriv.* root

//모든 facility에서 발생한 crit수준 이상의 메세지를 해당 경로에 기록
*.crit /var/log/critical

//모든 facility에서 발생한 crit수준의 메시지만 해당 경로에 기록
*.=crit /var/log/critical

//info수준의 로그를 제외한 메일관련 로그를 해당 경로에 기록
mail.*;mail.!=info /var/log/maillog

//ssh와 같은 인증관련 메시지는 tcp기반으로 해당 ip의 호스트에게 전달
authpriv.* @@192.168.12.22

/etc/logrotate.conf (로그파일 로테이션)

더보기

weekly : 일주일마다 로테이트

daily : 하루마다 로테이트

monthly : 월 주기로 로테이트

rotate 4 : 최대 4번 로테이트, 4주동안 백업로그 유지

create : 로테이트 후, 빈 로그파일 생성

/var/log/wtmp : 로그파일 명시로 별도지정

로그파일 경로

더보기
  • /var/log/messages : 대부분의 로그가 저장
  • /var/log/secure : 인증관련 프로토콜인 telnet, ssh, tcp_wrappers, xinetd
  • /var/log/dmseg : 시스템 부팅 로그
  • /var/log/boot.log : 부팅시 동작데몬의 성공로그
  • /var/log/maillog : sendmail, dovecot등의 데몬 시작시간
  • /var/log/lastlog : 사용자의 마지막 정보로그
  • /var/log/wtmp : 사용자 기록, 재부팅 기록로그
  • /var/log/btmp : 로그인 실패 로그

ssh

더보기
  • ssh-keygen : 인증키를 이용한 ssh서버접속
  • scp : ssh를 이용한 파일복사

dd

더보기
  • dd if=[백업될경로] of=[백업대상경로] bs=[블록크기] count=[크기]

cpio

더보기

-c : 아스키형태로 헤더정보 읽고쓰기

-i : 아카이브에서 파일추출

-o : 아카이브 생성

-v : 진행과정 상세출력

-d : 필요시 디렉토리 생성

find /home |cpio -ovc > config.bak
find /home |cpio -icv < config.bak

dump

더보기

-f : 지정 파일명으로 백업파일 생성

-0 : 전체백업

-1~9 : 부분백업

tar -Jxvf

더보기

J : xz확장자

x : 압축해제

v : 과정출력

f : 저장

-g : 중복백업

restore

더보기

-i : 대화형 복원 수행

-f : 장치 이름지정

-r : 백업대상 전체복원

rsync

더보기

-a : 아카이브 모드

-v : 진행과정 출력

-z : 동기화 파일 압축

nice

더보기

nice --10 : NI값을 -10적용해 우선순위 높임

nice -5 : NI값을 5적용해 우선순위 낮춤

renice 15 : NI값을 15로 지정

범위는 (-20~19), 낮은 값일수록 우선순위 높음

httpd.conf (/etc/httpd/conf/httpd.conf)

더보기
  • htpasswd -c : 웹 사용자 생성
  • service httpd configtest : 아파치 환경설정파일 오류점검
  • ServerName [도메인명:포트번호]
  • DocumentRoot [path] : 웹 문서 경로
  • DirectoryIndex : 웹 디렉토리 인덱스파일 인식순서
  • UserDir www : 웹 디렉토리를 www로 지정(일반사용자)
  • ServerRoot [path] : 서버 설치파일 경로

ErrorCode

더보기

403 : 허가거부

401 : 인증불가

404 : 존재하지 않음

접근통제

<Directory "/path/"> //접근 통제 대상 디렉토리
Order Deny,Allow //Allow가 뒤에 있으므로 Allow가 먼저
Deny from all	//모든 대역 주소 접근금지
Allow from 1.0.0.127 //해당 대역 주소의 클라이언트만 접근 허용
</Directory>

NIS 서버관련 명령어

더보기
  • service [ypserv, ypxfrd, yppasswdd] start : 해당 서비스 실행
  • nisdomainname : 도메인명 등록
  • NISDOMAIN=[domain] (/etc/sysconfig/network) : NIS 도메인 등록
  • /etc/yp.conf : NIS 환경설정 파일

NFS

더보기
  • mount -t nfs : nfs mount 명령어
  • /etc/exports, /etc/fstab : nfs환경설정 관련 파일
  • showmount -e : 클라이언트에서 nfs 정보확인
  • exportfs -v : 서버에서 nfs 정보확인
  • /nfs_share 192.168.5.0/24(root_squash) : 서버 형식
  • ihd_nfs:/nfsdata/data nfs : 클라이언트 형식

/etc/samba/smb.conf (삼바설정)

더보기
  • netbios name : 윈도우에서 이름으로 접근 시 명칭
  • workgroup : 공유 그룹 명
  • server string : 서버에 대한 설명 지정
  • hosts allow : 접근 가능 호스트
  • [folder] : 윈도우 접근 시 보이는 폴더이름
  • valid users : 사용자 접근 허용
  • writable (or) write list : 파일 쓰기 권한 부여

sendmail

더보기
  • m4 /etc/mail/sendmail.mc > /etc/mail/sendmail/cf : 설정보조파일 mc로 cf를 생성
  • makemap hash /etc/mail/access</etc/mail/access : access파일 변경내용 저장
  • From:spam.com DISCARD : access파일 형식
  • makemap hash /etc/mail/virtusertable</etc/mail/virtusertable : virtusertable 변경내용 저장
  • master@ihd.or.kr name : virtusertable 형식
  • @ihd.or.kr admin : virtusertable 형식
  • master:ihduser,kaituser : /etc/aliases 형식
  • admin::include:/etc/mail_admin : /etc/aliases 형식
  • sendmail -bi : 변경내용 저장
  • /etc/mail/local-host/names : 메일서버 도메인 등록 
  • /etc/mail/sendmail.cf : 메일 송수신시 해석 설정 파일
  • /etc/mail/sendmail.mc : 모든 호스트에 대해 smtp를 리스닝 하도록 설정

/etc/named.conf

더보기
  • allow-query {192.168.0.1; 192.168.10.0/24;};
  • forward only; : 해당 서버가 응답이 없을경우 질의에 대한 응답을 하지 않도록 설정
  • forward first; : 해당 서버가 응답이 없을경우에만 질의에 대한 응답하도록 설정
  • forwarders {192.168.0.1;};
  • "10.142.246.in-addr.arpa" : 246.142.10.5에 대한 리버스 도메인 설정

/var/named

더보기
  • ns.admin.com. master.admin.com.
  • IN MX 10 ihd.or.kr. : 메일 도메인 등록
  • www IN A 192.168.0.5 : 해당 ip A 레코드로 등록
  • www1 IN CNAME www : 별칭 도메인 등록

kvm 가상화 서비스 설치 및 구동순서

더보기

service libvirtd start

virt-manager

/etc/hosts.allow & /etc/hosts.deny

ALL: localhost, .ihd.or.kr
in.telnetd: 192.168.5.13
sshd: 192.168.5.
in.fingerd: 192.168.5.0/255.255.255.0

/etc/xinetd.conf

disable =no
wait=yes //요청받은 즉시 다음 요청처리
user=root //실행할 사용자 권한 설정
server=/usr/sbin/in.telnetd //서비스 실행파일 경로
log_type=FILE/var/log/xinetd.log //로그 기록파일 경로
no_access=10.0.0.0/8 //접속거부 ip 대역
only_from=192.168.10.0/24 //접속허용 ip 대역
cps=10 30 //들어오는 접속수 제한(10) / 지정 접속수 초과시 지정시간동안 서비스 비활성화(30)
instances=5 //동시 작동 최대 갯수
access_times=08:00:13:00 //접속허용 시간대
per_source=10

ntp

더보기
  • service ntpd start
  • service ntpd stop
  • service ntpd restart
  • (/etc/ntp,conf)restrict=ntp : 서버에 접근할 클라이언트 제한 지정

/etc/dhcpd.conf

subnet netmask //서브넷 ,넷마스크
range
range dynamic-bootp
option routers //게이트웨이 주소
option subnet-mask //서브넷 마스크
option nis-domain //nis 도메인
option domain-name //도메인 이름
option domain-name-servers //네임서버
fixed-address //고정 ip
hardware-ethernet //mac 주소
option broadcast-address //브로드 캐스트 주소 지정

iptables

더보기
  • iptables-save > firewall.sh
  • iptables-restore < firewall.sh
  • service iptables save
  • service iptables stop
  • service iptables start
  • /etc/sysconfig/iptables : iptables 관련파일 경로
iptables -P INPUT DROP
iptables -A INPUT -s 192.168.12.22 -j ACCEPT
//들어오는 모든 패킷을 거부하되
//192.168.12.22의 패킷만 허가하기
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to 203.247.50.3
//eht0 장치로 나가는 패킷에 해당 203.247.50.3 주소 부여

iptables -t nat -A PREROUTING -p tcp -d 203.247.50.3 --dport 80 -j DNAT --to 192.23.1.1:80
//목적지 203.247.50.3의 80포트인 경우에 192.23.1.1의 80포트로 연결
iptables -P INPUT ACCEPT
iptables -A INPUT -s 192.168.1.18 -j DROP
//들어오는 패킷을 모두 허가하되 
//192.168.1.18로 부터의 패킷만 거부
  • DNAT : 하나의 공인 ip 주소로 다수 서버 운영 (port forwarding)
  • SNAT : 하나의 공인 ip 주소로 다수의 컴퓨터가 인터넷 접속이 가능
  • -F : 전체 초기화
  • -D : 특정 삭제
  • REJECT : 적절한 응답 거절

그 외

더보기

userdir -r : 사용자 홈 디렉토리, 메일 삭제

visudo : /etc/sudoers 편집

chown -R : 하위 디렉토리 모두 포함 소유권 변경

umask -S : umask 값 표기

fstab [파일 시스템 장치명] [마운트 포인트] [파일 시스템 종류] [옵션(defaults, usrquota)] [dump 작동유무(0,1)]            [fsck 작동유무(0,1)]

pgrep -u : 프로세스 pid 

ls -l(소문자엘) /proc/pid/exe : 해당 pid 프로세스를 실행한 명령어의 절대경로

/etc/rsyslog.conf : rsyslogd데몬의 환경설정파일

Alias [단축할경로]"[원래경로]" : 경로단축설정

NameVirualHost 0.0.0.0:80 : 하나의 ip에 2개의 도메인 설정

/etc/opemldap/slapd.conf : OpenLDAP 관련 설정파일

/etc/vsftpd/ftpusers : 접근 거부 사용자 목록