[원격 시스템 관리]
Linux/Server

[원격 시스템 관리]

0. 원격 시스템 관리란?


멀리 있는 장소의 컴퓨터에서 내 리눅스에 접속하는 것

자연스럽게 보안 문제도 딸려온다.

리눅스에서 사용하는 원격 접속 서버는 대표적으로  텔넷, SSH, VNC 등이 있다.

 

 

 

1. 텔넷 서버 설치 및 실행


dnf -y install telnet-server로 텔넷 서버 설치

 

텔넷 서비스 가동

  • systemctl start telnet.socket    # 서버 실행
  • systemctl status telnet.socket  # 서버 상태 확인

 

텔넷 전용 사용자를 생성하고, 내 컴퓨터에서 접속

telnet IP주소 : 텔넷 클라이언트로 원격 pc에 접속, 지금은 원격 pc가 아니지만....

텔넷을 사용하여 자신의 컴퓨터에 접속 (?),  1도 안 신기하다. 그냥 사용자만 바꾸면 되는 거 아닌가 

다른 가상 머신 pc를 사용해서 접속해보자, 그전에 텔넷 서버 컴퓨터의 방화벽 설정을 바꿔줘야 한다.

 

방화벽 설정 변경

  • firewall-cmd --permanent --add-service=telnet  # 방화벽에서 텔넷 서버 서비스 허용
  • firewall-cmd --reload  # 위 내용을 적용하기 위해 다시 불러오기
  • systemctl enable telnet.socket  # 재부팅 후에도 텔넷 서버가 가동되도록

 

이제 다른 pc에서 텔넷 서버 컴퓨터에 접속해보자

다른 리눅스 pc에서 접속, localhost는 서버에서 만든 teluser를 사용

 

몇 가지 실험을 해봄

  • server pc 터미널에서 teln 파일 생성

  • client pc 터미널에서 확인

  • 이번엔 client pc에서 편집기를 통해 teln에 내용을 써봄

  • server에서 확인

별 거 아닌 거 같지만, 막상 되니까 감동

 

리눅스 말고 윈도에서도 해보자

윈도우에서 텔넷 클라이언트를 사용하기 위해선

[시작] 우클릭 - [앱 및 기능] - 아래의 [프로그램 및 기능] - 왼쪽의 [Windows 기능 켜기/끄기]를 클릭

그 후 [텔넷 클라이언트]에 체크하고 확인을 클릭하여 설치해야 한다. 

 

 

그 후 cmd 창에서 telnet 서버IP주소를 입력하면 서버에 접속할 수 있다.

teluser로 로그인하고 server pc가 맞나 확인해보자

아까 만든 teln 파일을 확인할 수 있다. 내용을 확인해보려 했는데 한글이 깨져 나온다. 인코딩 문제인 듯?

 

 

 

2. SSH 서버 설치 및 실행


텔넷은 서버와 클라이언트 사이에서 데이터를 주고받을 때 암호화를 하지 않는다.

내가 클라이언트에서 서버로 비밀번호를 보낼 때, 누군가 비밀번호를 알아내려 할 수 있다.

SSH는 데이터 전송 시 패킷을 암호화하여 이를 해결한다.

 

dnf -y install openssh-server 로 패키지 설치

난 이미 있었음

systemctl status sshd로 ssh 서버 가동 여부 확인

active 확인

다른 pc에서 접속해보자 (ssh는 방화벽에서 기본적으로 허용되어 있다)

ssh 사용자이름@IP주소를 터미널에 치면 접속할 수 있다. 

 

여기서도 작은 궁금증 하나가 생겼다.

만약 client에서 server 컴퓨터에 종료 명령을 내리면? 

많은 경고와 root 권한으로 허가를 해준 결과

꺼진다! client vmware 창에서 server vmware 창을 끌 수 있었다. 

당연히 ssh 연결도 끊어진다. 

 

윈도우에서는 ssh 클라이언트 프로그램이 기본적으로 없다.

그래서 putty 같은 프로그램을 다운로드하여 사용해야 한다. 

putty는 aws할 때도 ssh파일을 통해 인스턴스에 로그인하기 때문에 사용해봤다. 

여기서는 생략~

 

 

 

3. VNC, XRDP


텔넷과 ssh로 작업하는 것은 문제가 없지만, X윈도우 환경은 지원하지 않는다.

따라서 GUI를 사용하기 위해서는 VNC 서버나 XRDP 서버를 사용한다.

화면 그래픽 정보를 네트워크로 전송해야하므로 당연히 텔넷과 ssh에 비하면 느리다.

 

책에서는 XRDP 를 사용했는데, RDP 기술 자체가 마이크로소프트에서 개발한 것이기 때문에

초창기에는 클라이언트가 윈도우만 지원했지만, 최근에는 여러 운영체제들도 Client 사용이 가능하다.

VNC와 XRDP 차이는 사용자 세션 관리에 있다. 

VNC는 Client들이 모두 동일한 화면을 공유하지만,

XRDP는 Client들이 각자의 세션을 가지고 있기 때문에, 각자의 화면을 가지고 동작한다.

즉 VNC에서는 한 클라이언트가 마우스를 움직이면 다른 사용자들 화면에서도 마우스가 움직인다.

XRDP는 한 클라이언트가 마우스를 움직이더라도 다른 사용자들은 보지 못 한다.

 

 

'Linux > Server' 카테고리의 다른 글

[NFS 서버]  (0) 2021.08.04
[FTP 서버]  (0) 2021.08.04
[네임 서버]  (0) 2021.08.01