DataEngeneering/Linux

[Linux] 프로세스, 네트워크(SSH)

김칠복 2022. 4. 4. 19:40

리눅스 시스템에서 메모리에 적재되어 실행되고 있는 모든 프로그램이 프로세스이다.

 

프로세스

1. 모든 프로그램은 실행될 때 하나 이상의 프로세스를 갖는다. 
2. 병행적으로 실행이 가능하다. 
3. 부모, 자식 프로세스가 있게 된다. 
4. 커널에 의해 관리된다. 
5. 모든 프로세스에는 소유자가 있다. 
6. 프로세스마다 식별을 위한 ID가 부여된다.

 

프로세스의 번호

모든 프로세스는 고유한 번호(PID)를 가지고 있다. 
PID 1번은 init 프로세스, 2번은 kthreadd 프로세스가 실행한다.
init 프로세스는 나머지 모든 시스템 프로세스의 부모 프로세스이다.  
thread 프로세스는 모든 스레드의 부모 프로세스이다.

 

프로세스의 메모리 구성

 

SSH

SSH란, Secure Shell의 줄임말로 네트워크를 통해  다른 컴퓨터에 접근하거나,

그 컴퓨터에서 명령 실행 등을 할 수 있도록 해주는 프로토콜이다.

즉, SSH를 통해 다른 컴퓨터에서 리눅스에 접속하여 명령어 및 프로그램을 실행할 수 있다.

 

Telnet또한 네트워크를 통해 다른 컴퓨터에 접근하거나 그 컴퓨터에서 명령 실행 등을 할 수 있도록

도와주는 프로토콜이지만, 보안적으로 매우 치명적인 결함이 존재한다.

 

Telnet 의 결함

Telnet을 통해 보내지는 패킷 데이터는 암호화 되어 있지 않다. 
즉, 이를 통해 사용자의 비밀번호 등의 노출 되어서는 안되는 데이터가 노출 되는 것이다.
하지만 SSH의 데이터는 암호화 되어 있다.


openssh

 

우분투에서는 openssh 라는 패키지를 통해 SSH를 구동할 수 있다. 
우분투를 설치하고 나면, openssh-client만이 기본적으로 설치 되어 있다. 
다른 컴퓨터에서 우분투에 접속하려면 openssh-server 패키지를 설치해야 한다.

 

위와 같은 명령어로 openssh의 설치를 확인 할 수 있다.

apt-get명령어로 openssh-server 설치

 

실행화면이다.