Windows에서 CentOS7로 원격 데스크탑 접속하기

FTP 접속과 epel 다운로드 

# yum install -y ftp 

# ftp 192.168.10.11 

   접속 정보 : data/asdf1234

ftp> cd down/security

ftp> get epel-release-7-11.noarch.rpm

ftp> quit

 

프로그램 설치와 재부팅

# rpm -ivh epel-release-7-11.noarch.rpm

# yum install -y xrdp tigervnc-server

# systemctl enable xrdp.service

# systemctl start xrdp.service

 

실습

 

[Windows 보조프로그램] – [원격 데스크톱 연결]

ip주소와 이름을 설정하고, 디스플레이에서 24비트로 설정한다. 

 

Username, password를 입력하고 ok누르면 원격 접속되는 것을 확인할 수 있다.

 

cd 

: 디렉토리 이동
# cd  [이동할 디렉토리명]


pwd

: 현재 위치한 디렉토리를 절대 경로 표현법으로 출력한다.


rmdir

: 지정한 디렉토리를 삭제

디렉토리가 비워져 있는 경우만 삭제 가능

지우면 안되는 디렉토리도 삭제

디렉토리 안에 아무것도 없는 디렉토리만 삭제

 

mkdir

: 지정한 디렉토리를 생성한다. 생성된 디렉토리는 생성한 유저의 소유가 된다.
옵션 

-p : 필요하다면 생성하고자 하는 상위의 디렉토리까지 생성한다. 

--version :  버전 정보를 보여준다.

 

ls

: 현재 디렉토리의 목록을 출력한다.
옵션 

-a, --all    : 숨겨진 파일의 목록까지 출력 

-l               : 파일에 대한 정보를 자세히 출력
-R              : 하위 디렉토리의 내용까지 출력 

-h              : 사람이 이해하기 쉽도록 파일의 크기를 출력 

-k              : kb단위로 파일의 크기 출력 

-i               : 파일의 inode 번호를 같이 출력 (고유번호)     

 

리다이렉트

: 표준 입출력 지시자

>   : 표준 출력 지시자 

  • command  >  파일 : 명령 결과를 파일로 저장 (파일을 새로 만들어서 저장)

>>  : 추가 표준 출력 지시자

  • command  >>  파일 : 명령 결과를 파일에 추가 (기존 있는 파일에 내용 추가)

<   : 표준 입력 지시자

  • command  <  파일 : 파일의 내용을 명령의 입력 값으로 사용 (파일 내용 읽어오기)

 

cat

: 파일 내용 보기 / 파일의 입출력 제어
# cat  [옵션]  [출력 대상 파일]
옵션 

-n : 행 단위 번호 

-b : 공백 라인을 제외하고 행 단위 번호

 

# cat [< 입력파일 > 출력파일] 
기본 입력 파일 : 키보드 

기본 출력 파일 : CRT 

입력 파일의 경우 < 기호 생략 가능 

>> : 출력파일이 존재하는 경우 내용추가 

# cat  a.txt    :  a.txt로 입력받아 화면에 출력

# cat < a.txt > b.txt    :  a.txt로 입력받아 b.txt로 복사

 

** ctrl c : 강제종료 (주로 사용)

** ctrl d : 정상종료

 

** CRT (화면)  /  PRN (프린터)  /  con (키보드)

 

echo

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

ex)

# echo $HOME : 변수 $HOME 에 있는 값 출력

  출력) /root

# echo '$HOME' : 인용부호 내에 있는 값 출력

  출력) $HOME

# echo 1 > a.txt : a.txt에 1 출력 (a.txt에는 1이 저장)
env

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

 

cp 

: 파일이나 디렉토리를 복사
# cp [옵션]  원본파일  복사파일명
옵션 

-a  :  원본의 속성유지 

-r  : 하위 디렉토리나 파일모두 복사

-f  : 강제 실행

-p :  파일의 소유와 권한등을 보존한채 복사

-u  : 새파일 덮어쓰기 금지

 

mv 

: 파일이나 디렉토리를 이동
# mv [옵션]  원본파일 이동파일명
옵션 

-f  : 강제 실행 

-b : 파일이 덮어 쓰여질 경우 백업파일을 생성한다. (거의 사용 X)
-d : 디렉토리 삭제 

-i : 삭제전 일일이 삭제여부 확인 

-v : 삭제 파일 만들기

 

rm 

: 파일이나 디렉토리를 삭제
# rm [옵션]  대상파일
옵션 

-f  : 강제 실행 

-r : 대상 중에 디렉토리가 있는 경우 디렉토리도 삭제

 

 

실습

 

cd 실습

 

cat 실습

 

ctrl c / ctrl d 차이 실습

ctrl c 로 작성하던 줄에서 종료하고 출력하게 되면 작성하고 있던 내용은 저장되지 않고 출력하게 된다.

ctrl d 로 작성하던 줄에서 종료하고 출력하게 되면 작성하고 있던 내용은 저장이 되지만 개행되지 않고 출력이 된다.

 

echo 실습

 

cp, mv, rm 명령어 실습

네트워크 토폴로지 ( Network Topology )

: 네트워크가 물리적으로(HUB에) 연결되어 있는 방식

Bus형

- 패킷망 네트워크  (**패킷망: 경로와 대역폭 예약 X)

- 가장 많이 사용 (가성비 좋음)

- Ethernet

 

Star형

- 다른 노드에 영향을 주지 X

- 패킷 충돌이 없다.

 

Ring형

- 특정 경로를 따라 데이터가 순회하며 흘러가는 방식

- 패킷 충돌이 없다.

 

 

패킷의 종류

Unicast (유니캐스트)

- 1:1 통신 패킷

- 목적지 주소가 1개로 지정

 

Broadcast (멀티캐스트)

- 1:N 통신 패킷

- 목적지 주소가 불특정 다수 (목적지 주소가 모두)

- 수신할 때 패킷을 받아 수신할지 말지 결정

 

Multicast (브로드캐스트)

- 1:N 통신 패킷

- 목적지 주소를 정해놓고 패킷 전송 (목적지 주소 명확)

 

Ethernet

: CSMA/CD의 명칭으로 LAN 카드 규격 방식의 일종

- Bus형의 대표적인 형식

- Link layer에 해당

 

CSMA/CD ( Carrier-Sense Multiple Access with Collision Detection )  

: 반송파 감지 다중 접속 및 충돌 탐지

CSMA/CD 동작 과정

1. 네트워크상에 통신이 일어나고 있으면 (캐리어 감지) 데이터를 보내지 않고 기다린다.

2. 네트워크상에 통신이 일어나고 있지 않으면 데이터를 보낸다.

   - Frame을 모든 컴퓨터에 전송한다.

   - 수신 컴퓨터에서 Frame를 확인한다.

   - 목적지 MAC address와 자신의 MAC address가 일치하는 경우 수신하고 아닌 경우에는 패킷을 버린다.

3. 캐리어가 감지되지 않을 때 두대 이상의 컴퓨터가 데이터를 동시에 보내는 경우가 Multiple Access이다.

4. 다중 접근(Multiple Access)일 때 부딪혀 충돌(collision)이 발생한다.

5. 네트워크상에 충돌이 있으면 컴퓨터들은 잠시 대기한다.

6. 네트워크상에 캐리어가 감지되지 않으면 다시 데이터를 보낸다.

 

** 캐리어: 네트워크상에 나타나는 신호, Ethernet에서 흘러가는 패킷이라고 생각하면 됨 

** collision은 Ethernet 환경에서만 발생

** collision domain: collision 발생 환경

** Z loss: [실제 네트워크 전체 패킷 - collision], collision으로 인한 손실이 없는 네트워크상 패킷들

** MAC address: node를 구분하는 고유 주소, 물리적 주소

 

 

Network Architecture ( 네트워크 아키텍처)

1 Tier Architecture

: 1대의 컴퓨터(host)에 터미널이 여러대 연결된 형태

1 Tier Architecture

현재는 사용 X

Host: 컴퓨터

Terminal: 모니터, 키보드 등

 

2 Tier Architecture

: 클라이언트 컴퓨터와 서버 컴퓨터가 상호작용하는 네트워크 구성

2 Tier Architecture

Client - Server 환경

Client: 서비스 요청  ex) chrome, ftp프로그램 등

Server: 서비스 응답  ex) apache, vsftp 등

 

but) 유지보수 비용이 많이 들어 3 Tier 가 나왔다.

 

3 Tier Architecture

: 클라이언트-서버 환경의 확장형태

3 Tier Architecture

Client - Web Server - DB Server

Client는 브라우저 하나만 있으면 Web Server로 접속

Web Server에는 프로그램을 넣어두고 DB Server로 접속

DB Server는 Web Server에서 요청한 Data 응답

인터넷 프로토콜 계층

Application

: 사용자 인터페이스 역할, 네트워크 응용 프로그램

프로토콜 - FTP, SMTP, HTTP

 

Transport

: 프로세서간 데이터 전송

프로토콜 - TCP, UDP

 

Network

: 출발지에서 목적지까지 datagram 라우팅

프로토콜 - IP, routing protocol

 

Link

: 네트워크 노드 간 data 전송 기능

프로토콜 - PPP, Ethernet

 

Physical

: frame를 받음

 

Encapsulation ( 캡슐화 ) & Decapsulation ( 역캡슐화 )

Encapsulation ( 캡슐화 )

1. Application layer에서 MessageTransport layer로 보낸다.

2. Transport layer에서 Message에 Port number 헤더에 붙여 생성한 Segement Network layer로 보낸다.

3. Network layer에서 Segement에 IP 주소를 포함한 Datagram을 Link layer로 보낸다.

4. Link layer에서 Datagram에 MAC address를 포함한 Frame Physical layer로 보낸다.

5 Frame을 목적지 Physical layer로 보내 Frame의 MAC address가 같은지 확인하고 수신한다.

6. Decapsulation (역캡슐화)는 수신된 패킷을 위 과정의 역순으로 확인한다.

 

Decapsulation ( 역캡슐화 )

1. Physical layer에서 수신된 Frame의 목적지 MAC address와 자신의 MAC address가 같은지 확인하고 같으면 수신하고 Frame를 Link layer에 보낸다.

2. Link layer 수신된 Frame을 MAC address를 제거해 Datagram으로 만들어 Network layer로 보낸다.

3. Network layer에서 Datagram의 목적지 IP와 수신 IP가 같은지 확인하고 같으면 IP를 제거한 SegementTransport layer로 보낸다.

4. Transport layer에서 Segement의 포트 넘버를 확인하고 포트 넘버에 맞는 Application layer에 해당하는 서버로 Segement에서 포트넘버를 제거한 Message를 보낸다.

5. Application layer에서 Message를 수신해 확인한다.

Network edge

: 컴퓨터가 직접 연결되어 있는 네트워크

 

Network core

: 네트워크 엣지가 연결되어 있는 네트워크

 

네트워크에서 데이터를 주고받는 것은 컴퓨터 프로그램끼리 주고받는 것이다.

 

Network edge

종단 시스템 ( end system )

: 응용프로그램 실행 ex) Web, email

 

Client - Server model

Client : 질의 (request)

Server: 응답 (response)

 

peer-peer model

: Client와 Server 기능을 동시에 구현

 

Network core

※ 네트워크 연결방식 ※

회선 교환 ( Circuit switching )

: 경로, 속도가 고정되어있는 네트워크 방식

- 종단 간 통신을 위해 자원을 예약하고 통신

- 일정한 전송 대역폭(bandwidth)을 가진다.

 

- 링크 내 회선

FDM ( Frequency Division Multiplexing )

: 대역폭을 분할하여 사용

 

TDM ( Time Division Multiplexing )

: 시간을 분할하여 사용

회선 교환      /      FDM, TDM

 

패킷 교환 ( Packet switching )

: 종단 간 전송되는 메시지를 패킷으로 분할해 전송하는 방식

- 송신 주소, 수신 주소가 반드시 포함 (MAC 주소)

- 기술적으로 간단해 주로 사용

- 전송되는 패킷은 모든 대역폭 사용

- 대역폭 공유에 더 효율적 (회선교환 보다)

- 대역폭을 나누거나 자원 예약 X

- 과도하게 혼잡할 경우 패킷이 지연 or 손실

- 자원의 경합이나 지연 (TCP, UCP에서 처리)

  → 네트워크가 전송 가능한 용량 초과해 자원 전송하는 경우 발생

  → 버퍼 or 큐에서 지연 및 혼잡 ( 메모리를 임시 저장 )

  ** Store and Forward : 패킷이 각 패킷 스위치에서 처리 위해 지연되는 시간

- 통계적 다중화 (Statistical multiplexing)

  : 패킷 순서는 일정하지 않음 (경로가 다양해서)

    보내지는 순서에는 일정한 패턴 X

 

※ 패킷 교환망 ※ 

데이터그램 네트워크 (Datagram network)  > 경로 및 대역폭 예약 X

: 경로 결정에 목적지 주소 이용

- 세션 동안 경로 변경될 수 있음

 

가상 회선 네트워크 (Virtual circuit network)  > 경로만 예약

: 어떤 패킷은 자신의 헤더에 VC id를 갖는데 이것은 다음 hop으로의 경로를 결정하는데 이용
- VC id는 출발지에서 도착지까지의 경로가 확립될 때 할당
- 각 스위치(라우터)는 VC네트워크 교환에 이용되는 정보를 유지

**참조

Windows 명령어

- ipconfig : IP 확인

- arp -a : mac address로 통신했는지 확인하기 위한 명령어

 

Linux 명령어

- ifconfig : IP 확인

- arp -a : mac address로 통신했는지 확인하기 위한 명령어

 

▼ Windows에서 cmd 창에서 IP 확인

 

▼ 리눅스에서 IP 확인

 

▼ ping을 보내 리눅스 서버에 접속되는지 확인한다. 손실이 보통 50% 이하면 깨끗하다고 인식한다.

 

X Window에서 직접 IP주소 바꾸기

X window에서 프로그램 > 시스템 도구 > 설정에 들어간다.

 

설정에 네트워크에 들어가 노란 부분에 있는 설정 버튼을 눌러 들어간다.

 

IPv4에 들어가 IP주소를 바꾼다.

리눅스 기초

리눅스 명령어 표기

# command [-단일문자옵션] [--다중문자옵션]

 

디렉토리 = 파일

 

디렉토리 및 파일 표현 방법

- 절대경로 표현법

: 최상위 디렉토리 기준

ex) C:\, D:\  ( 리눅스 / = C:\ )

 

- 상대경로 표현법

: 현재 디렉토리 기준 ( ./ )

./ : 현재 디렉토리

../ : 상위 디렉토리

 

리눅스 디렉토리는 [ / (root) ]기준으로 트리구조

리눅스 디렉토리 구조

 

인터넷 통신

: 컴퓨터 내의 응용 프로그램끼리 통신해 인터넷에 참여

 

인터넷은 느슨한 계층적 구조를 가진다.

느슨한 계층적 구조 : 모든 네트워크는 독립적으로 돌아간다. 연결할 때 표준만 맞추면 된다.

 

host = end system

단말기라고도 한다.

IP를 가진다.

 

프로토콜 ( Protocol )

: 컴퓨터 사이에서 데이터 교환하기 위한 통신 규약

둘 이상의 통신 개체 간 교환되는 메시지 포맷과 순서, 메시지 송수신과 다른 이벤트에서 취하는 행동들을 정의

 

통신서비스 유형

- 비연결형 서비스

: 손실되어도 상관없는 패킷을 보내는 서비스

- 연결지향형 서비스

: 보내는 패킷이 손실이 되지 않도록 보장하는 서비스

 

인터넷 표준은 RFC (Request for comments) 문서로 저장되어있다.

IETF (Internet Engineering Task Force) : 인터넷 표준을 정하는 그룹이다.

VMware에서 Linux (CentOS) 설치하기

여기까지는 VMware에서 Windows10 설치와 같다.

 

리눅스를 선택해준다.

버전은 CentOS7 64bit를 선택한다.

이름을 설정하고 경로를 지정한다.

 

용량은 40기가로 설정한다.

설치가 된 것을 확인하고 Edit으로 들어가 USB, Sound, Printer는 필요 없으므로 제거한다.

 

Network는 브리지로 설정해야 다른 컴퓨터의 접속이 가능하다.

CD iso 이미지파일을 CentOS7 파일을 선택한다.

 

위와 같이 설정된 것을 확인할 수 있다.

Power 버튼을눌러 실행한다.

 

 

CentoOS 7 설치하기

실행하는 모습이 보여진다.

 

Checking은 넘겨도 되므로 esc를 눌러 넘겨준다.

 

언어는 한국어를 선택한다.

 

소프트웨어를 선택한다. (최소 설치는 누르지 말기_ 표시 오류)

 

최소 설치가 아닌 GNOME 데스크톱을 선택한다.

 

kdump는 활성화할 필요가 없으므로 들어가 활성화 체크를 해제하고 완료한다.

 

파티션을 설치하기 위해 시스템 설치대상에 들어간다.

 

파티션을 설정합니다로 들어가면 파티션 설정하는 화면이 나온다.

 

표준 파티션으로 지정하고 +버튼을 누르면 파티션을 추가하는 화면이 나온다.

 

먼저 [ /boot ]를 마운트 지점으로 설정하고 용량은 500MB으로 지정한다.

 

파티션을 루트 밑에 boot라는 곳에 입력한 화면이다.

 

이번에는 마운트 지점을 swap로 설정하고 용량은 1024MB로 설정한다.

 

설정된 것을 볼 수 있다.

 

이번에는 루트 파티션을 설정한다.

용량은 설정을 안 해주면 나머지 용량 전체가 설정이 된다.

 

나머지 용량 전체가 루트에 설정된 것을 확인할 수 있다.

그 후 완료한 후 변경사항 적용한다.

 

네트워크를 설정하러 네트워크 및 호스트명을 들어간다.

 

호스트 이름을 지정하고 적용한 후 설정으로 들어간다.

 

방식을 수동으로 설정하고 Add 클릭해 주소추가 화면을 확인한다.

 

주소, 넷마스크, 게이트웨이, DNS 서버를 입력한다.

 

켬을 누르면 잘 설정된 것을 확인할 수 있다.

완료를 누르면 설정 완료가 된다.

 

그 후 설치 시작을 누르면 설치가 된다.

 

 

설치되기 전에 사용자를 생성하고 ROOT 암호를 입력하면 설치가 완료된다.

 

설치 화면을 확인한다. 

설치가 된 모습을 확인하고 재부팅한다.

 

라이선스에 동의해서 설정 완료하면 재부팅된다.

 

여기서 실행은 안 하고 PuTTY에서 설정해 사용할 것이다.

 

설정이 완료되면 CD/DVD에서 Use physical drive를 사용하는 것으로 바꿔준다.

 

PuTTY 설정

IP address를 작성하고 Save를 눌러 자주 사용하기 위해 저장한다.

 

Load를 하고 Open 하면 경고창이 뜨는데 예를 누르면 실행된다.

 

root로 로그인하고 password를 입력하면 접속되는 것을 확인할 수 있다.

 

리눅스 컴퓨터를 끄는 명령어 poweroff이다.

poweroff를 사용하면 컴퓨터가 꺼진다.

+ Recent posts