본문 바로가기
Linux & UNIX

텔넷 서버, SSH 서버 , VNC 서버 구축

by fabxoe 2019. 9. 19.

텔넷 서버 구축

rpm -qa | grep telnet

이미 텔넷이 설치되어있는지 확인하였다.

 

yum -y install telnet-server

설치되어 있지 않으면 텔넷 서버 프로그램을 설치한다.

 

 systemctl restart telnet.socket
 systemctl status telnet.socket

텔넷서비스가 꺼져있으면 실행되게 하고

켜져 있으면 다시시작 하도록 restart명령을 주고

status를 사용해 정상적으로 구동중인지 확인하자.

 

adduser teluser
passwd 1234

아이디와 비밀번호를 만들었다.

 

yum -y install telnet
telnet 127.0.0.1

원격접속을 하기 전에 내부에서 정상적으로 구동되고 있는 것인지 알고 싶어졌다.

확인차 telnet클라이언트를 서버에 그냥 설치해서 실행하여 정상임을 확인했다.

 

firewall-config

 telnet포트를 열어주고 영구적으로 세팅한 후

옵션에서 [Firewalld 다시불러오기]를 선택하여 데몬을 다시 수행시켰다.

 

systemctl enable telnet.socket

시스템을 껐다가 켜도 텔넷이 정상 작동하도록 하였다.

 

 

이후 윈도우 기반 컴퓨터에서 telnet을 설치하고 서버컴퓨터에 telnet 명령어로 접속하였다.

 

 


SSH 서버 구축

telnet의 보안수준이 낮으므로 이를 보완한 OpenSSH를 서버를 구동하자.

 

rpm -qa | grep openssh

이미 설치되어 있는지 확인하였다.

 

systemctl status sshd

참고로 centOS에는 OpenSSH서버와 클라이언트 프로그램 두가지 다 기본적으로 설치되어 있다고 한다.

따라서 설치 단계가 필요 없으니

바로 서비스가 실행 중인지를 알아 보았다.

OpenSSH의 서비스 이름은 sshd이다.

 

 

Actice:loaded를 보니 서비스가 수행중임을 알 수 있었다.

또 Loaded:에 enabled를 보니 이미 centOS에는 상시수행으로 등록되어 있었음을 알 수 있었다.

 

firewall-config

ssh포트도 이미 기본으로 열려있어서 설정할 필요가 없었다.

 

 

ssh teluser@192.168.111.100

별도의 리눅스 클라이언트에서 서버로 접속하였다.

 


VNC 서버 구축

텔넷과 ssh는 원격지로 텍스트만 전송하므로 x윈도우 환경을 이용할 수 없다.

VNC서버는 그래픽 화면을 전송하므로 x윈도우 환경을 이용할 수 있다.

gedit같은 그래픽 전용 유틸리티를 실행하고 싶을때 좋다.

대신에 저속의 인터넷 환경에서는 다소 느릴 수 있다.

rpm -qa | grep tiger

tigervnc가 이미 기본으로 설치되어 있지만 이 버전은minimal버전이라서 기능이 부족하다.

 

 

일반 버전으로 받자.

yum -y install tigervnc-server

 

cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
vi /etc/systemd/system/vncserver@:1.service 

vnc서버는 telnet이나 ssh와는 다른 과정이 필요하다.

바로 서버의 몇번째 화면을 보여줄지, 누구에게 보여줄지 명시하는 파일을 만드는 과정이 필요하다.

 

[Service]
Type=forking

# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/sbin/runuser -l centos -c "/usr/bin/vncserver %i"
PIDFile=/home/centos/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'

에디터에서 <USER>부분만을 유저이름으로 바꾸자

여기서는 centos라는 유저에게 1번 화면을 보여주기로 정하였다.

 

firewall-config

vnc-server포트를 열어주고 영구적으로 세팅한 후

옵션에서 [Firewalld 다시불러오기]를 선택하여 데몬을 다시 수행시켰다.

 

su - centos
vncserver

포트를 열고도 끝나지 않았다!

해야할 일이 하나 더 남아 있는데.

외부 클라이언트가 서버의 특정 디스플레이 화면에 접속할때 사용할

별도의 화면접속 비밀번호도 서버에 지정해 놓아야한다.

 

 

 

이제 외부의 리눅스 클라이언트 PC에서 서버에 접속해보자.

 

rpm -qa | grep tiger
su -c 'yum -y install tigervnc'
vncviewer 192.168.111.100:1

참고로 su 명령어에서 c옵션은 계정변환없이 root권한으로 특정명령어만 실행할 때 사용한다.

(데비안 계열에서 sudo 명령어와 같다.)

 

마지막에 vncviewer 명령어에서 작성했던 별도의 화면접속 비밀번호를 입력하면 된다.

 

댓글