반응형

유명한 네임서버 (DNS)
1.214.68.2, 61.41.153.2(U+), 210.220.163.82
219.250.36.130, 203.248.252.2, 164.124.101.2, 210.94.0.73

www.naver.com
www   : 컴퓨터 이름
Ftp, mail, sm, ....

naver : 기관명
com   : 상위 도메인명

ex) 경기도 파주시 문향로11 210동 23호 홍길동  = www.naver.com
----> 경기도 파주시 문향로11 홍길동          = asdf@naver.com
asdf@naver.com로 보낼시 어디로 보내라고 정해져 있고 만약 정해진게 없다면
순위대로 처리함.


분산 database : 수많은 name server들이 계층형구조(피라미드)로 구조화 되어있다.

트리구조 - 상위:루트 , 선:노드 , 하위: 터미널

네트워크 엣지 (컴퓨터간 네트워크 연결)  - 정보보안과 연관되어있음
네트워크 코어 ( 엣지의 네트워크 연결)    - 가용성, 무결성등의 문제

DNS의 개요(행정체계를 그대로 가져와서 적용)
:호스트명을 IP주소로 변환한다.
:호스트에얼리아싱, 정식,별칭호스트명, DNS는 IP뿐만아니라 정식 호스트명을 얻기 위해
이용되기도 한다.
서버장애, traffic집중, 중앙서버 까지의 거리, 관리를 위해 중앙집중식으로 하지 않는다.

트리구조 - 상위:루트 , 선:노드 , 하위: 터미널

www.yahoo.com. > Root DNS servers
하위 DNS서버가 상위 DNS서버에 등록되어 있다.

내가 관리하는 DNS일 경우 상위 DNS에게 주소를 등록해야한다.
root dns서버의 ip를 알아야한다.

네임서버(캐시네임서버)를 네트워크 마다 두어야 보안상 좋다.

네임서버 - ns를 붙임 ex) google.com -> ns.google.com
                             com -> ns.com

TLD 도메인 서버 : com, net, edu, org : 구분이 안되는 단체,....
책임도메인 서버
캐시도메인 서버 : 자체적인 도메인이 없고 root의 dns주소만 알고 있다.

반응형
반응형

 

하위 DNS servers의 주소가 상위 (root) DNS servers에 등록이 되어 있다.

 컴퓨터 A의 클라이언트는 ip 주소가 192.168.10.80이고 gateway가 192.168.10.1 DNS 로컬네임서버 주소가 1.1.1.11이라고 가정 할 때 먼저 A라는 컴퓨터가 www.naver.com의 ip 주소가 무엇인지 로컬네임서버에게 묻고 로컬네임서버는 root DNS서버에게 com의 DNS서버 주소가 무엇인지 물어본다. root DNS서버는 로컬네임서버에게 com의 DNS 서버 ip 주소를 알려주고 다시 로컬 네임서버는 com의 DNS서버에게 naver.com의 ip 주소가 무엇인지 물어본다. com의 DNS서버는 로컬네임서버에게 naver.com의 ip주소가 무엇인지 알려주고 로컬네임서버는 클라이언트에게 www.naver.com의 ip주소를 알려준다. 

 이러한 과정으로 대상 DNS의 ip주소와 ftp서버 주소등의 정보가 zone file로 생성이 되는데 등록된 zone file로 위에 과정을 거치지 않고 바로 클라이언트에게 바로 알려주게 된다. 

반응형
반응형

CRON은 주기적으로 작업되는 작업 일정을 저장해서 자동으로 실행하는 데몬으로 at이나
anacron등과 같이 다양한 프로그램이 지원된다.
/etc/crontab - 기본 스케줄 일정

crontab  ‐u [root]  [옵션]
옵션
 -e : 스케줄 등록 vi 환경으로 스케줄 등록
 -l :  스케줄 확인 (출력)
 -r : 스케줄 삭제
명령어 형식
[분] [시] [일] [월] [요일]  [작업내용] *붙이면 (매분, 매시 등)
- 시간 범위
꞉ 분 : 0 ~ 59
꞉ 시 : 0 ~ 23
꞉ 일 : 1 ~ 31
꞉ 월 : `1 ~ 12
꞉ 요일: 0(일요일) ~ 6(토요일)

00 12 * * * rdate ‐s time.bora.net  
0‐59/10 * * * * chown ‐R data.ist /home/data  (매월,매일,매시,매분 0분~59분 사이에 10분마다실행)


rsync는 두 시스템 간에 지정한 디렉토리를 동기화한다.
- 어떤 시스템은 rsync 서버로 해도 상관없지만 보통 원본
저장 시스템을 서버로 한다.
(한쪽은 서버로 한쪽은 클라이언트로)

서버 - 프로그램을 항상 띄어놓음 (메모리 데몬)
클라이언트 - 띄어놓은 프로그램을 사용
rsync 설치 확인
# yum  list  rsync
……
rsync.i386                          2.6.8‐3.1
# yum  list  xinetd
……
xinetd.i386                      2:2.3.14‐10.SUL2
---------------서버
관련 파일
데몬 : /usr/bin/rsync
관리 스크립트 : /etc/rc.d/init.d/xinetd
실행 설정 파일 : /etc/xinetd.d/rsync
백업 설정 파일 : /etc/rsyncd.conf
데몬 실행
systemctl [start | stop | restart | status] rsyncd.service

[서비스 명]       : 리소스 식별자, client에서 이용한다.
path            : 백업 경로
comment         : 주석
uid             : 전송자 UID
gid             : 전송자 GID       
use chroot      : rsync 경로를 외부에서 / 로 인식한다.(경로는 /home/data인데 /에 들어온거처럼 속이는것 보안상좋음)
read only       : 읽기 전용으로 접근한다.
hosts allow     : 접속 허용할 호스트 (클라이언트만 지정)
max connections : 동시 접속자 수
timeout         : 응답시간(초)

/etc/rsyncd.conf

[backup]
path = /backup
uid = root
gid = root
use chroot = yes
read only = yes
hosts allow = 192.168.10.33
max connections = 1
timeout = 300

systemctl start rsyncd.service

--------------------클라이언트
rsync client 명령을 이용 server의 디렉토리와 client의 디렉토리를 동기화한
다.
rsync ‐avz [‐‐delete]  source  destination     
rsync ‐avz [‐‐delete]  IP::[서비스명]  [백업 디렉토리]
rsync ‐avz [‐‐delete]  [백업 디렉토리]  IP::[서비스명]
 rsync 명령 옵션
‐v : 작업내역 출력
‐a : archive mode 작업, 심볼릭 링크, 권한 등 모든 내용을 보존한다.
‐z : 파일을 압축 전송한다.
‐‐delete : source에서 지워진 파일을 destination에서도 지워준다.(완전 동기화)

rsync 명령을 cron에 등록한다.
매일 새벽 1시에 백업 수행
00 01 * * * rsync  ‐avz 192.168.10.32::backup /backup

 => rsync --daemon 입력
 => 네트워크 매니저 비활성화
 => /etc/selinux/config -> SELINUX=disabled로 변경


서비스와 데몬은 구분하지 않아도 된다. 이둘은 사용자의 요청 시점이 아니라 임
의의 시점(보통 시스템 boot)에서 background process로 시작되어 사용자나 프
로세스에 서비스를 제공하는 프로그램을 의미한다.

방식
Stand Alone
- 스스로 listen하며 항상 메모리에 상주한다.
- 서비스 요청에 즉시 대응 가능하다.
- 서비스 요청이 매우 드물거나 idle 한 경우 메모리를 낭비한다.
Super Daemon
- Listen을 직접하지 않는다.
- 메모리에 상주하지 않으며 서비스 요청이 있을때 xinetd에 의해 호출된다.
- 거의 사라진 시스템이다.


반응형
반응형

윈도우2019 서버 원격접속
windows server - user group
로컬 계정 - 이 컴퓨터에 등록된 계정
사용자이름 - 계정이름 , 전체이름 - 진짜이름
사용자 계정 생성방법 3가지
1. 제어판 - 사용자 계정 - 사용자 계정 - 계정 관리 - 사용자 계정 추가
2. lusrmgr.msc실행 (msc는 실행파일) - 사용자 폴더 오른쪽클릭 - 새 사용자
3. 제어판 - 시스템 및 보안 - 관리도구 - 컴퓨터 관리 - 사용자 폴더 오른쪽클릭 - 새 사용자

그룹 생성
제어판 - 시스템 및 보안 - 관리도구 - 컴퓨터 관리 - 그룹 폴더 오른쪽클릭 - 새 그룹 - 사용자 이름;

st01_KCK
 st01 (admin)      st그룹에 속하게
 st11/aqsw12!@
 st13/aqsw12!@

grop : st
user : st01, st11, st13


CentOS07 원격접속

FTP 접속과 epel 다운로드
# yum install -y ftp
# ftp 192.168.10.11
접속 정보 : data/asdf1234
ftp> cd /data/down/security
ftp> get epel-release-7-11.noarch.rpm
ftp> quit

프로그램 설치
# rpm -ivh epel-release-7-11.noarch.rpm
# yum install -y xrdp
# yum install -y xrdp tigervnc-server

재부팅
# systemctl enable xrdp.service
# systemctl start xrdp.service

Xming서버는 윈도우에서 동작하는 X 서버 이다.
https://sourceforge.net/projects/xming/ 에서 다운 로
드후 설치
Xming-6.9.0.31-setup.exe

X11 관련 패키지 설치
# yum install ‐y xorg‐x11‐apps.x86_64
# yum install ‐y xorg‐x11‐xauth.x86_64
# yum install ‐y xorg‐x11‐server‐Xorg.x86_64

vi에디터로  (#있는건 주석)
/etc/ssh/sshd_config 파일 설정
X11Forwarding yes
X11DisplayOffset 10
X11UseLocalhost yes

ntsysv -> firewalld.service 체크해제

반응형
반응형

rpm은 Redhat 사에서 제공하는 리눅스용 프로그램을 배포하는 기술로 프로그램의 설치, 검증, 삭제 등의 다양한 기능을 제공해준다.

# rpm  ‐qa : 시스템에 설치된 모든 패키지명
# rpm  ‐qi 패키지명 : 패키지의 상세한 정보
# rpm  ‐ql 패키지명 : 패키지의 파일 리스트
# rpm  ‐qf 파일명 : 지정한 파일이 포함된 패키지

설치 및 업그레이드
# rpm [‐ivh | ‐Uvh | ‐Fvh] 패키지명
옵션
‐i : 설치
‐U : 업그레이드 (이전버젼 미설치시 ‐i와 동일)
‐F : 업그레이드만
‐v : 설치과정 출력
‐h : 설치정도 출력

삭제
# rpm  ‐e 패키지명
지정한 패키지를 삭제한다.

주요 추가 옵션
옵션
‐‐nodeps : 의존성을 무시하고 작업한다.
(삭제에 주로 이용)
‐‐force : 같은 버전의 패키지나 파일이 있어도 무시하고
작업진행
‐‐oldpackage : 다운그레이드시 사용


YUM은 rpm의 고질적인 문제인 의존성
을 해소하기 하기 위한 패키지 기술로 RPM과 동일한 형식의 설치 구조를 지원한다.인터넷 repository를 이용하는 기술로 인터넷만 연결되어 있다면 지원되 는 모든 프로그램을 설치 관리 할 수 있다.

 

yum list
패키지를 확인한다.
# yum list [installed | updates | available | 패키지명]
설치 가능한 모든 패키지 목록을 보여준다.
installed : 설치된 패키지 목록을 보여준다
updates : 업데이트된(가능한) 패키지 목록을 보여준다.
available : 설치 가능한 패키지 목록을 보여준다.
패키지명 : 패키지의 설치 여부와 update 정보를 보여준다.

 


검색 추가 옵션
repolist, search, provide
# yum repolist
시스템에 등록된 repository list를 출력한다.
# yum search 문자열
패키지명이나 description에 문자열이 포함된 패키지들을 출력한다.
# yum provides 경로/문자열
문자열이 포함된 파일이 소속된 패키지들을 출력한다.

 

설치
# yum install [‐y] 패키지명
패키지를 repository로 부터 설치한다. ( -y를 해주면 묻지 않고 바로 설치 된다. )
업데이트
# yum update [‐y] 패키지명
패키지를 repository로 부터 업데이트한다. ( 업데이트 버전의 안정성이 검증되기 전 함부로 업데이트 하면은 안된다.)

 


삭제
# yum remove [패키지명]
지정한 패키지를 삭제한다.

초기화
# yum clean headers
# yum clean packages
# yum clean metadata
repolist 정보 초기화

Group package 확인과 설치
# yum group [list | install "그룹" | remove "그룹" | info "그룹"]
list : 그룹 목록을 출력한다.
install "그룹" : 그룹을 설치한다.
remove "그룹" : 그룹을 제거한다.
info "그룹" : 그룹의 정보를 검색한다.
그룹은 Environment 그룹과 패키지 그룹으로 나뉘며 CentOS7부터 지원되는
Environment 그룹은 패키지 그룹에 비해 OS 구성의 기본이 되는 대단위 그룹을 의미
한다.
최소 설치로 설치한 뒤 패키지를 추가 할 수 있다.

CentOS6 설치 후
'invalid release/repo/arch combination/’ 에러 발생시 처리방법
새로운 mirrorlist를 추가한다.
echo "https://vault.centos.org/6.10/os/i386/" > /var/cache/yum/i386/6/base/mirrorlist.txt
echo "https://vault.centos.org/6.10/extras/i386/" > /var/cache/yum/i386/6/extras/mirrorlist.txt
echo "https://vault.centos.org/6.10/updates/i386/" > /var/cache/yum/i386/6/updates/mirrorlist.txt
64bit인 경우 i386를 x86_64으로 변경한다.
extras, updates 디렉토리는 생성해 줘야한다.
6.10인 경우 예제이므로 다른 버전은 적절한 수정이 필요하다.

epel 추가 방법 ( CentOS6,7에 추가 )
# yum list epel*
리스트에 있는 epel-release.noarch를 복사해서
# yum install -y epel-release.noarch 명령어를 쓰면 epel이 생긴다.

 

반응형
반응형

 

리눅스 파일구조와 퍼미션

운영체제의 목적은 하드웨어를 효율적으로 관리하기 위한 목적이다.

app은 직접적으로 하드에 억세스가 안된다. 그래서 디바이스를 사용하는데 사용자가

디바이스를 억세스하면 커널이 작업해준다.

커널 : 가장핵짐적인 부분

 

drwxr‐x‐‐‐       2              root        root              4096           Dec 18   12:31        aa
‐rw‐‐‐‐‐‐‐         1              root        root              2019           Dec  4    01:38        ab.txt

퍼미션       하드링크수  소유자    그룹소유자  크기            마지막변경일자       파일명

퍼미션은 3자리씩 끊어서 읽는다.

 

파일의 종류

- 일반파일

d 디렉토리

l 링크파일

b 블록 디바이스 파일

c 문자 디바이스 파일

 

rc.local 권한 변경

#cd /etc/rc.d

#ls

init.d rc.local rc0.d rc1.d rc2.d rc3.d rc4.d rc5.d rc6.d

#pwd

/etc/rc.d

vi rc.local

편집에서 rdate -s time.bora.net 추가 후 저장

rdate -s time.bora.net

chmod u+x rc.local

ls -al

 

쌈바서비스 smbpasswd

[st01@dal ~]$ smbpasswd
Old SMB password:             12
New SMB password:             윈도우 개인계정 로그인 비밀번호
Retype new SMB password:      윈도우 개인계정 로그인 비밀번호
Password changed for user st01
[st01@dal ~]$


네트워크 > \\192.168.10.11\
st01폴더 오른쪽클릭 네트워크드라이브연결 z드라이브 설정후 마침
내PC에 z드라이브가 생성되었고 안에 파일질라를 통해서 보이던
홈디렉토리가 있고 수업자료와 데이터를 다운받거나 올릴 수 있다.


파일시스템과 파티션

프라이머리 파티션은 물리적인 구간 1,2,3,4로 나눌수있다.
extanded 파티션 많이 나눌 수 있다.
logical 파티션은 extanded 파티션 내에 만들어지며 사용은 프라이머리
파티션과 동일하다.
extanded 사용하려면 logical로 채워야한다.
P,E : 1,2,3,4
L   : 5,6,7,8....

df : 현재 디스크에 파티션이 어떻게 나눠져 있나 볼 수 있다.
-T : 파일 시스템 타입까지 출력
-h : 읽기 쉬운 단위로 출력

fdisk : 파티션 나누는 명령어
/dev/sdb - fdisk : /dev/sdb1/, /dev/sdb2

파티션을 디렉토리에 연결 -> 마운트(mount)

fdisk 디스크명
fdisk /dev/sda
20G 하드를 절반만 쓴다고 하면 +10G

mkfs : 파티션에 파일 시스템을 생성한다.

mkfs -t 파일시스템 타입 파티션명

예) mkfs -t xfs /dev/sda1 -> mkfs.xfs -f /dev/sda1
파일 시스템이 재구성 되는 경우 mkfs.xfs에서 사용하는 -f 가 반드시
필요한 경우가 있다.

mount : 파일시스템은 지정한 디렉토리에 연결해서 사용 가능하도록 한다.
mount -a -t FStype 장치명 디렉토리
-a : /etc/fstab의 내용을 읽어 모두 mount 한다.
-t : 파일 시스템 양식을 정한다.
-o : 마운트 옵션을 추가로 지정한다.
예)  
    mount  ‐t  ext3  /dev/sdb1    /data1
    mount  ‐t  iso9660  /dev/cdrom  /cdrom
    mount  ‐o  ro  /dev/sdb1   /home2
    mount  ‐a

먼저 파티션을 만고 만든 파티션에 파일시스템을 만들고 디렉토리에
파티션을 마운트한다.

blkid 파티션의 정보 확인

UUID는 파티션의 고유 정보로 디스크의 위치가 바뀌어도 동일하게 유지된다
UUID는 mount 명령에서 이용 가능하다.

xfs_admin 파티션에 다양한 파라미터를 변경하거나 확인한다.
xfs_admin -L 라벨명 장치명
xfs_admin -L "--" 장치명
xfs_admin -l 장치명

findfs 라벨or UUID -> UUID나 라벨명으로 장치명을 확인한다.

마운트하고 리부팅하면 마운트한게 사라지는데 fstab을 사용해야한다.
/etc/fstab 파일은 시스템 시작 시 자동으로 mount할 파일 시스템의 목록이나
옵션을 저장한다.
장치,  마운트위치,  파일 시스템 타입,  옵션,  dump,  점검여부

수정중 오타가나면 부팅이 안됨

noatime 은 그 시간을 갱신하지 말라는 뜻.

fstab을 이용한 재부팅시 자동으로 마운트 하는 방법
xfs_admin -L 라벨명 장치명 으로 마운트하고자 하는 파티션에 라벨명을 붙여주고

mount "라벨명" /디렉토리

cd /etc -> vi fstab
장치,  마운트위치,  파일 시스템 타입,  옵션,  dump,  점검여부를 적고
저장한다.
rc.local 권한 변경으로도 사용할 수 있다.

반응형
반응형

tar : 파일 여러개를 하나의 파일로 만드는 것 (파일 여러개를 압축디바이스 파일로
보내는 것) 용량은 줄어들지 않는다.
# tar [옵션] [압축파일명] [대상]
-c : 압축 -x : 풀기 -v : 작업내용을 출력
-z : gzip를 이용 압축(압축해제) -j : bzip2 이용
-f : 파일명을 지정 -p : 퍼미션 유지
-cvfz 압축할때
-xvfz 압축풀때

압축할땐 반드시 디렉토리를 압축

 

tar 를 이용한 증분 백업 : 오늘 모두 백업 , 다음날 변경된 부분만 백업
# tar cvfz 압축파일명 -g 백업정보 파일 대상

복구는 반드시 압축순으로 해제한다.

clock : 리눅스 시스템에 탑재된 BIOS의 시간을 출력하거나 변경한다.

# clock 옵션
-r : BIOS의 시간을 읽어 표준 출력으로 출력한다.
-w : 시스템의 시간을 이용 시간을 변경한다.
-s : BIOS의 시간으로 시스템의 시간을 변경한다.

date : 지정한 포맷으로 시스템의 날짜를 출력한다.
# date 포맷

포맷(시간)
시 : %H(00..23),  %(01..12),  %k(0..23),  %l(1..12),  %p(AM,PM)
분 : %M(00..59)
초 : %S(00..59)
시간 : %r(hh12:mm:ss AM),  %T(hh24:mm:ss),  %X (로케일)
기타 : %s (1970년 1월 1일 이후 경과된 초)
포맷(날짜)
년 : %Y(YYYY),  %y(yy)
월 : %m(01..12),  %B(January .. December),  %b(Jan .. Dec)
일 : %d(01..31)
요일 : %A(Sunday .. Saturday),  %a(Sun .. Sat),  %w(0..6)
기타 : %D(mm/dd/yy),  %x(로케일),  %j(00..365)

rdate : 인터넷상에 제공되는 서버로부터 시간정보를 받아 시간을 출력하거나 시스템의
시간을 재설정한다. 1년에 한번정도 실해주면 좋다.
# rdate 옵션 시간제공서버주소
‐p : 타임 서버로 부터 제공된 시간을 출력한다.
‐s : 타임 서버로 부터 제공된 시간을 이용 시스템의 시간을 재 설정한다.

rdate -s time.bora.net
autoexec.bat
/etc/rc.d/rc.local 여기에 적어야함

사용자 관리 

사용자 등록 정보
‐ /etc/passwd
‐ 사용자의 기본 등록 정보가 저장
‐ 사용자 패스워드의 경우 shadow password 사용
‐ useradd 명령을 이용 등록
‐ 사용자의 직접수정이 가능(추천하지 않는다)

# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash

계정:암호:UID:GID:주석:홈디렉토리:쉘

사용자 패스워드, 암호정책 정보
‐ /etc/shadow
# cat /etc/shadow
…………
ora12c:$6$2JwICah……94Bf2S9Bq/:18162:0:99999:7:::
계정 : 암호 : 최종변경일 : 암호최소사용일: 암호최대유효기간 :
암호 만료까지 경고기간 : 암호만료뒤 계정 폐쇠까지 기간 :
계정의 만료일 : 예비

 

 

일반사용자의 패스워드 정책은 /etc/passwd 파일을 통해 계정,암호,UID,GID주석,홈디렉토리,쉘 까지만 알수있다.
관리자의 패스워드 정책은 /etc/passwd 파일 통한 정보 뿐만 아니라 /etc/shadow 파일을 통해 계정, 암호 ,최종변경일, 계정
암호 최종변경일, 암호최소사용일, 암호최대유효기간, 암호 만료까지 경고기간, 암호만료뒤 계정 폐쇠까지 기간, 계정의 만료일, 예비를 알수있고 명령어 pwconv를 사용하여 shadow파일을 활성화하거나 pwunconv를 사용하여 비활성화시킬수 있다.


# cat /etc/shadow
…………
ora12c:$6 $bo580c3Q$ te9……9f2S9Bq/:18162:0:99999:7:::
$6 : 해시 알고리즘
- 1:MD5,  5:SHA256,  6:SHA512,  2a:Blowfish
$bo580c3Q$ : salt
te9……9f2S9Bq/ : salt + passwd 의 해시값

그룹관리 = 권한관리
/etc/group
- groupadd 명령을 이용하여 그룹 등록
# cat /etc/group
root:x:0:
그룹명:암호:GID:소속계정
계정은 여러 그룹에 속하고 기본 소속 그룹은 /etc/passwd 파일에 등록 된다.

그룹먼저 만들고 사람들어가야함
GID 넘버로 구분(직접 지정해야함)

그룹 등록 - 사용자를 등록하기 전에 반드시 사용자가 속할 그룹이 먼저 만들어져 있어야함.
# groupadd -g 그룹번호(1000,1001.1100등등) 그룹명
ex) groupadd -g 1000 그룹명

-g : 생성 그룹의 GID번호 지정 (1000바깥번호부터지정)
-r : 1000번 이하의 GID번호를 자동으로 할당한다. 잘쓰지 않음.
-o : 중복된 GID 번호 할당이 가능 되도록이면 안쓰는게 좋음.

groupdel 그룹삭제는 반드시 그룹명을 이용한다.
# groupdel 그룹명


사용자 계정
# useradd 옵션 사용자명
옵션
‐u  : uid지정
‐g  : gid나 그룹명지정 (default : 계정명)
‐d  : 홈디렉토리 지정 (default : /home/[계정명])
‐G  : 보조 그룹 지정
‐D : 기본 설정 확인 및 변경
‐s : 쉘 지정
. 로그인이 필요 없는 관리용 계정은 /sbin/nologin으로 설정한다.

사용자 삭제
userdel -r 사용자명
옵션
‐r  : 계정에 귀속된 홈디렉토리와 mailbox등을 모두 삭제한다.
- 계정 삭제시 반드시 사용한다.



passwd
사용자의 암호 변경
관리자는 다른 사용자의 암호를 임의로 변경 할 수 있다.
(단 다른 사용자의 암호를 확인 할 수는 없다)
# passwd  [사용자계정]
# passwd


패스프레이즈 길게쓰는것, 해킹여부가 의심될 때 변경으로 권고
패스워드 크랙해서 안전하다는 패스워드를 쓴다.

그룹과 계정을 쉽게 만들줄 알아야한다.
사용자 계정과 비밀번호는 인쇄해서 가지고 있어야한다.

반응형
반응형

리눅스 기초 언어

# command [‐단일문자옵션] [‐‐다중 문자 옵션]
단일 문자로 구성된 옵션은 동시에 여러 개를 지정할 수 있다.
ex) ls –a  –l  이런 표현은 다음과 같이 표현 가능하다.


디렉토리란 파일을 담고 있는 일종의 방이다.
디렉토리 및 파일의 표현 방법
절대 경로 표현방법 : / 디렉토리를 기준으로 표현하는 방법
상대 경로 표현방법 : 현재 위치(./)를 기준으로 표현하는 방법

디렉토리의 표현
/   : 최상위 root 디렉토리 (절대경로 표현의 기준)
./  : 현재 디렉토리 (상대경로 표현의 기준 : 생략가능)
../ : 현디렉토리의 상위 디렉토리
~/  : 각 사용자의 홈디렉토리
디렉토리는 파일의 일종이다. (윈도우의 C:\를 생각하면 쉽다.)
이름 : 최대 255자이고 대소문자 구별과 확장자가 없다.



cd : 디렉토리를 이동하는 명령어, 보통 옵션이 없이 사용한다.
# cd  [이동할 디렉토리명]
pwd
현재 위치한 디렉토리를 절대경로 표현법으로 출력한다.

rmdir
지정한 디렉토리를 삭제한다.
디렉토리가 비워져 있는 경우만 삭제 가능하다.


mkdir :지정한 디렉토리를 생성한다.
생성된 디렉토리는 생성한 유저의 소유가 된다.
‐p, ‐‐parents : 필요하다면 생성하고자 하는 상위의 디렉토리까지 생성한다.
‐‐version : 버전 정보를 보여준다.

명령어 cd, pwd, mkdir, rmdir


tree : 디렉토리 구조를 출력한다.
‐d : 디렉토리만 출력한다.
 *(미 설치시 : yum install ‐y tree 입력)

명령어 tree


ls : 현재 디렉토리의 목록을 출력한다.
‐a, ‐‐all  : 숨겨진 파일의 목록까지 출력
‐l         : 파일에 대한 정보를 자세히 출력
‐R         : 하위 디렉토리의 내용까지 출력
‐h         : 사람이 이해하기 쉽도록 파일의 크기를 출력
‐k         : kb단위로 파일의 크기출력
‐i : 파일의 inode 번호를 같이 출력 (고유번호)

리다이렉트
표준 입출력 지시자
>   : 표준 출력 지시자
# command  >  파일 : 명령 결과를 파일로 저장
>>  : 추가 표준 출력 지시자
# command  >>  파일 : 명령 결과를 파일에 추가
<   : 표준 입력 지시자
# command  <  파일 : 파일의 내용을 명령의 입력 값으로 사용

cat
# cat  [옵션]  [출력 대상 파일]
옵션
‐n : 행 단위 번호
‐b : 공백 라인을 제외하고 행 단위 번호

cat : 파일의 입출력 제어
# cat [< 입력파일 > 출력파일]
기본 입력 파일 : 키보드
기본 출력 파일 : CRT
입력 파일의 경우 < 기호 생략 가능
>> : 출력파일이 존재하는 경우 내용추가
# cat  a.txt
# cat < a.txt > b.txt  

echo : 환경 변수나 입력내용을 출력
# echo [환경변수 | 문자열]
리다이렉트를 이용하면 파일을 생성할 수도 있다.
ex>
# echo $HOME
# echo '$HOME'

명령어 echo, cat


env : 모든 환경 변수를 출력한다.

cp : 파일이나 디렉토리를 복사한다.
# cp [옵션]  원본파일 복사파일명
옵션
‐a  :  원본의 속성유지
‐r  : 하위 디렉토리나 파일모두 복사
‐f  : 강제 실행
‐p :  파일의 소유와 권한등을 보존한채 복사
‐u  : 새파일 덮어쓰기 금지

mv : 파일이나 디렉토리를 이동한다.
# mv [옵션]  원본파일 이동파일명
옵션
‐f  : 강제 실행
‐b : 파일이 덮어 쓰여질 경우 백업파일 생성
‐d : 디렉토리 삭제
‐i : 삭제 전 삭제여부 확인
‐v : 백업 파일 생성

rm : 파일이나 디렉토리를 삭제한다.
# rm [옵션]  대상파일
옵션
‐f  : 강제 실행
‐r : 대상 중에 디렉토리가 있는 경우 디렉토리도 삭제

명령어 cp, mv, rm

반응형
반응형

ICMP 통신이 되는지 확인해는 용도로 사용

명령어 ping , tarceroute(tracert) (유닉스에서만 사용)

ping : 도메인사용하지 않는다,
->내가 도메인으로 ping을 보내면 컴퓨터는 DNS에게 해당 사이트의 ip주소를 물어보고 그 주소로 패킷을 주고받음

tracert : 어디까지 갈때 라우터를 얼마나 거치는지 확인할때 씀

ARP : mac주소를 모를때 사용, 상대방의 Ip 주소는 알지만 mac주소를 모를때 받는 MAC주소를 FF:FF:FF:FF:FF:FF로 받게 보낸다음
ARP 요청으로 받은 dns가 MAC주소를 ARP보냄으로
ARP는 상대방의 IP주소는 알고 있지만 MAC주소를 모를때 보내는 패킷에 MAC주소를 FF:FF:FF:FF:FF:FF로 모두가 수신할 수 있게 보내고
수신한 호스트는 IP주소와 MAC주소를 ARP응답으로 메세지를 전송한다.

특징 : IP에 의해 자동으로 호출된다, 보안기능 없어 스푸핑 공격에 취약
질의 : broadcast 다보냄
응답 : unicast

하나의 물리적인 인터페이스를 여러 개의 논리적인 인터페이스로 구현 ip를 여러 개 설정하는 방법
ifconfig 명령을 이용한다
ifconfig ens32
ifconfig ens32 [ip] netmask [NETMASK] 파일 수정이 아니여서 바로 적용됨
리부팅하면 사라짐
다운시키는 방법 ifconfig ens32:0 down
부팅시 자동으로 실행하는 방법 - rc.loacl 에 넣는다.

반응형
반응형

 

B에서 메세지를 최종적인 3.2.1.1의 R1라우터에게 전달 하는 과정은

B의 ip주소 5.4.3.11/24에서 메세지를 gateway 5.4.3.1 을 통하여 ip주소 1.2.3.255/24에서 gateway 1.2.3.5인 ens33으로 전달하게 되고 다시 메세지는 ens32( ip주소 3.2.1.5/24) 를 빠져나와 gateway 3.2.1.1로 들어가서 R1에게 도착하게 된다.

A에서 B에게 메세지를 보내자고 할때 같은 네트워크 상에 있지만 gateway주소를 route add 명령어를 이용하여

gateway를 추가해 주어야 한다. ( 5.4.3.0~5.4.3.255 -> 1.2.3.255)

 

A의 ip주소는 1.2.3.11 / 24  , gateway : 1.2.3.5

B의 ip주소는 5.4.3.11 / 24 , gateway : 5.4.3.1

ens32의 ip 주소는 3.2.1.5 / 24 , gateway : 3.2.1.1

ens33의 ip 주소는 1.2.3.5 이다.

네트워크 주소가 같으면 gateway를 설정 안해줘도 되지만

네트워크 주소가 같지 않아 연결이 안될시 직접 gateway를 입력해 주어야 한다.

반응형

'Network' 카테고리의 다른 글

DNS 서버  (0) 2022.10.24
Net2 DNS 질의 과정  (0) 2022.10.24
Router를 이용한 메세지 전송 과정  (0) 2022.10.17
1-1 Net - ip, netmask, gateway 개념  (0) 2022.10.17
NAT를 사용하는 이유  (0) 2022.10.13

+ Recent posts