# 리눅스 정리
adIP address : 현재 IPv4 를 사용하고 있어서 조만간 IP주소가 고갈될 예정이다. 따라서 2가지 방법이 제시되었는데
사설 IP주소를 사용하는 것과 IPv6를 사용하는 기법이 있다.
IPv6 : 고유한 MAC주소(48bit)+FF:FE(16bit)를 합해서 호스트 ID를 지정하므로 관리자가 IP주소를 할당할
필요가 없다.
->시스템 전체를 IPv6로 만드는 방법과 IPv4와 IPv6가 연결되는 tunneling을 사용하는 기법이 있다.
IP addressing에는 binary(2진법), decimal(10진법), hexadecimal(16진법), octet(8진법) 을 알고 있어야 한다.
데이터가 binary로 이동하기 때문에 사람이 볼 수 있는 decimal의 관계만 알고 있으면 된다.
IPv4는 32bit로서 8bit씩 .으로 구분해서 써준다.
8bit.8bit.8bit.8bit < - 8bit x 4 = 32bit
subnetmask는 호스트A와 호스트B가 동일한 네트워크에 있는 여부를 판단할 때 사용된다.
IPv4는 5개의 Class로 구분되는데 클래스별로 사용할 수 있는 호스트 수와 네트워크 수가 달라진다.
IP 주소를 보고 Network와 host를 구분할 수 있다.
A : 1~126 <- 127은 loopback으로 쓸 수 없다.
B : 128~191
C : 192~255로 시작되는 주소로 나눈다.
D : Multicast
E : Lab 인데 D , E 주소를 호스트에게 할당할 수 없다.
* 255.255.255.255 -> 브로드캐스트
192.168.1.255 -> 다이엑티브 브로드캐스트
0.0.0.0 -> 네트워크 자체
각각의 옥텟(8진법)은 2^8(2의 8승) = 255개의 호스트를 가질 수 있다.
Class A : 10.0.0.0 - 255.0.0.0 -> 10.0.0.0/8(8bit만큼만 호스트가 있다)
Class B : 172.16.0.0 - 255.255.0.0 -> 172.16.0.0/16
Class C : 192.168.10.0 - 255.255.255.0 -> 192.168.10.0/24
-> ~/ 뒤의 숫자가 네트워크 숫자이고 32bit-~(숫자)가 호스트 숫자가 된다.
host : 일반적인 컴퓨터
node : 네트워크로 연결된 모든 장치(device , equipment)로써 프린터, 호스트, ...
workstation : 호스트 중에서 도메인에 가입되어 있는 호스트 <- 서버-클라이언트
computer : 독립적인 CPU, RAM, HDD를 가지고 있는 장치
호스트 수를 줄이고 네트워크 수를 늘리는 방법을 Subnetting이라고 하고,
192.168.10.0/24가 아니고 192.168.10.0/26이라면 이는 서브네팅 된 것이다.
호스트 수를 늘리고 네트워크 수를 줄이는 방법을 Supernetting이라고 한다. <- Route summary이다.
192.168.10.0/24가 아니고 192.168.10.0/20이라면 이는 슈터네팅 된 것이다.
Private IP : 10.0.0.0/8 / 172.16.0.0/16 / 192.168.0.0/24 /
Subnetting에 관한 규칙
1) 2^m - 2 = n (m과 n은 호스트나 네트워크 비트수이다)
m + n = 8이어야 한다.
2) 256 - subnet = 배수로 늘려나간다.
3) Net_ID ~ Host_range ~ broad_ID로 구분해서 호스트범위에 있는 IP주소를 호스트에게 할당하면
되는데 Net_ID와 Broad_ID를 할당해서는 안 된다.
1) 클래스 C 192.168.100.0을 할당받았는데 13개의 서브넷이 필요하다면 서브넷 마스크는 어떻게 되겠는가?
-> 디폴트 서브넷마스크인 255.255.255.0이 되면 네트워크는 1개이다.
Linux는 UNIX와 유사하지만 40%정도는 명령어가 다르다.
UNIX는 원래 파일서버로 사용한다. 웹서버로 Apache, Ngin-X와 함께 사용된다.
-> Free BSD, Oracle의 solaris, HP와 IBM 정도에서만 호스트에 운영체제가 설치된 채 판매된다.
Linux는 RedHat 계열의 RedHat, CentOS, Fedora가 있고
Debian 계열의 Ubuntu, Debian, Kali, BackTrack 등이 있다.
그 외에 여러 flavors로 Turbo, Han, Suse, ... 가 있다.
사용도는 Ubuntu가 60%가 넘게 사용되고 있다.
-> RedHat, CentOS는 실제 회사의 서버(file, dhcp, dns, mail, proxy, DB,...)로 사용
Ubuntu는 BigData, Cloud, DFS(Distributed File System) , Embeded System,
IoT(Internet of Things)의 모듈을 포팅하는 Arduino, Rasberry Pie 에서 사용된다.
Remote Access : Telnet, SSH
Firewall
VPN
Back Tunneling..
Ubuntu, CentOS, BackTrack, Window 7 운영체제로 실습
console과 terminal 은 같은 의미로 사용되는데 CLI/CUI(Command Line Interface/Command User Interface)로 부르고,
Linux/UNIX 계열에서는 Graphic으로 실행되는 것을 GUI(Graphic User Interface)라고 하는데 X, X-Window라는 모듈(module)이 있어야
실행된다.
Daemon : 서버에서 제공하는 서비스를 늘 백그라운드에서 모니터링 하고 있다가 외부 클라이언트가
서비스 요청시 정리해주는 모듈
Standalone daemon : 늘 자주사용되는 서버 서비스들, 메모리상주 용량이 큰 서비스 => Mail, Web,DataBase
super daemon : 작은용량, 수시로 사용되지 않는 서버 서비스
Server Service 를 실행시킬 때에는
1) 해당 서비스 모듈을 설치하고
2) 설정(config) 파일을 복사해 두고 설정파일을 목적에 맞게 수정한 뒤
3) Firewall과 SELinux를 조절해두고
4) 서버 서비스를 실행시켜 둔 뒤
5) netstat -nltp | grep LISTEN 해서 해당 서비스가 실행되고 있는지 보고
6) 이제 클라이언트들이 접속해서 서비스를 받아가게 한다.
Windows 머신은 UAC(User Access Control)을 통해서 일반 사용자로 로그온 한 상태에서 상위 관리자인
Administrator로 권한 에스컬레이션(privilege escalation)을 허용하지 않고 있다.
Windows 머신은 머신이 실행될 때 사용자의 패스워드 해시를 가지고 있는 SAM 파일을 열게하지 않는다.
-> BackTrack, CentOs, Ubuntu와 같은 운영체제로 타겟 Windows 7/2003/2008/2010..을 부팅시킨 뒤
SAM 파일을 꺼내서 패스워드를 알아낼 수 있다.
Windows 머신은 아무리 긴 패스워드를 사용해도 가운데 14자만 인식해서 좌우로 7자리 병렬로 읽는다.
Windows 머신은 NLTM 해시를 사용하지만 legasy한 버전을 지원하기 위해서 보안이 취약한 LM 해시도 지원한다.
'Linux' 카테고리의 다른 글
| Linux_16Day (0) | 2019.06.04 |
|---|---|
| Linux_15Day (0) | 2019.06.03 |
| Linux_13Day (0) | 2019.05.29 |
| Linux_12Day (0) | 2019.05.28 |
| Linux_11Day (0) | 2019.05.27 |