성태의 닷넷 이야기
홈 주인
모아 놓은 자료
프로그래밍
질문/답변
사용자 관리
사용자
메뉴
아티클
외부 아티클
유용한 코드
온라인 기능
MathJax 입력기
최근 덧글
[정성태] Working with Rust Libraries from C#...
[정성태] Detecting blocking calls using asyn...
[정성태] 아쉽게도, 커뮤니티는 아니고 개인 블로그입니다. ^^
[정성태] 질문이 잘 이해가 안 됩니다. 우선, 해당 소스코드에서 ILis...
[양승조
] var대신 dinamic으로 선언해서 해결은 했습니다. 맞는 해...
[양승조
] 또 막혔습니다. ㅠㅠ var list = props[i].Ge...
[양승조
] 아. 감사합니다. 어제는 안됐던것 같은데....정신을 차려야겠네...
[정성태] "props[i].GetValue(props[i])" 코드에서 ...
[정성태] 저렇게 조각 코드 말고, 실제로 재현이 되는 예제 프로젝트를 압...
[정성태] Modules 창(Ctrl+Shift+U)을 띄워서, 해당 Op...
글쓰기
제목
이름
암호
전자우편
HTML
홈페이지
유형
제니퍼 .NET
닷넷
COM 개체 관련
스크립트
VC++
VS.NET IDE
Windows
Team Foundation Server
디버깅 기술
오류 유형
개발 환경 구성
웹
기타
Linux
Java
DDK
Math
Phone
Graphics
사물인터넷
부모글 보이기/감추기
내용
<div style='display: inline'> <h1 style='font-family: Malgun Gothic, Consolas; font-size: 20pt; color: #006699; text-align: center; font-weight: bold'>리눅스 <-> 윈도우 원격 접속 프로그램 사용</h1> <p> VNC 이외에 괜찮은 원격 접속 방법이 리눅스에 있다는 것은 처음 알았군요. 단지, 리눅스 종류가 워낙 다양하다 보니 모든 버전이 지원되지는 않는 것 같습니다.<br /> <br /> 일단, 무료로 쓸 수 있는 FreeNX라는 프로그램이 있는데요.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > 편리한 리눅스 원격 접속프로그램 NX ; <a target='tab' href='http://www.ubuntuk.com/tip/23864'>http://www.ubuntuk.com/tip/23864</a> X Window 원격 접속 -- FreeNX ; <a target='tab' href='http://pplane.net/entry/자동-저장-문서-5'>http://pplane.net/entry/자동-저장-문서-5</a> 우분투에서 원격제어 (FreeNX) 사용하기 ; <a target='tab' href='http://xepi.tistory.com/tag/NX'>http://xepi.tistory.com/tag/NX</a> </pre> <br /> 마침, 회사에 아무도 쓰지 않는 노트북이 있어서 "우분투"를 설치하고 FreeNX를 설치해 보았습니다.<br /> <br /> 아래의 웹 사이트에서 NX 제품의 무료 버전을 설치할 수 있는데,<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > NX 3.5.0 Download ; <a target='tab' href='http://www.nomachine.com/download.php'>http://www.nomachine.com/download.php</a> </pre> <br /> 위의 웹 페이지에서 제공되는 링크 중에서 "<a target='tab' href='http://www.nomachine.com/select-package.php?os=linux&id=1'>NX Free Edition for Linux</a>"를 선택해서 들어가면, x86 / x64에 따라 각각 RPM i386, DEP i386, Compressed TAR i386의 3가지 분류로 다운로드가 제공됩니다. 이 중에서 자신의 Linux 환경에 맞는 것을 고르면 되는데, 제 경우에는 Ubuntu여서 "NX Free Edition for Linux DEB i386"을 선택했습니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > NX Free Edition for Linux DEB i386 ; <a target='tab' href='http://www.nomachine.com/download-package.php?Prod_Id=3501'>http://www.nomachine.com/download-package.php?Prod_Id=3501</a> </pre> <br /> 그럼, client/node/server에 대해 각각 다운로드 할 수 있는 링크를 제공하는데 모두 다운로드해야 합니다. 왜냐하면, 의존관계가 있어서 client, node, server 순으로 우분투에 전부 설치해 주어야 하기 때문입니다. 그런데, 여기서 또 한 가지 놀랐는데요. ^^ 해당 파일들을 그냥 Firefox 웹 브라우저에서 다운로드 해서 더블 클릭해주면 "우분투 소프트웨어 센터"가 뜨면서 설치까지 자연스럽게 되었습니다. 이 정도면, 윈도우에서 EXE 설치 파일 실행하는 것과 다름없는데 - RPM 설치를 별도로 명령행에서 해주어야 한다고 생각했었기 때문에 - 정말 편해진 것을 체감할 수 있었습니다. (참고로, 저는 리눅스를 거의 사용해 본 적이 없는 개발자입니다. ^^)<br /> <br /> 하지만, 이렇게만 설치했다고 접속 가능한 상태가 되는 것은 아닙니다. 다음의 명령어를 통해서 SSH 서비스를 마저 실행해 주어야 합니다. (아래는, ssh 설치 및 마지막 확인을 22번 포트가 열려있는지 검사하기 위한 콘솔 출력을 보여주고 있습니다.)<br /> <br /> <pre style='height: 400px; margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > root@LinuxX86:~# <span style='color: blue; font-weight: bold'>sudo apt-get install ssh</span> 패키지 목록을 읽는 중입니다... 완료 의존성 트리를 만드는 중입니다 상태 정보를 읽는 중입니다... 완료 다음 패키지를 더 설치할 것입니다: openssh-server ssh-import-id 제안하는 패키지: rssh molly-guard openssh-blacklist openssh-blacklist-extra 다음 새 패키지를 설치할 것입니다: openssh-server ssh ssh-import-id 0개 업그레이드, 3개 새로 설치, 0개 제거 및 205개 업그레이드 안 함. 318 k바이트 아카이브를 받아야 합니다. 이 작업 후 954 k바이트의 디스크 공간을 더 사용하게 됩니다. 계속 하시겠습니까 [Y/n]? y 받기:1 http://kr.archive.ubuntu.com/ubuntu/ natty/main openssh-server i386 1:5.8p1-1ubuntu3 [311 kB] 받기:2 http://kr.archive.ubuntu.com/ubuntu/ natty/main ssh all 1:5.8p1-1ubuntu3 [1,280 B] 받기:3 http://kr.archive.ubuntu.com/ubuntu/ natty/main ssh-import-id all 2.4-0ubuntu1 [5,934 B] 내려받기 318 k바이트, 소요시간 1초 (278 k바이트/초) 패키지를 미리 설정하는 중입니다... 전에 선택하지 않은 openssh-server 패키지를 선택합니다. (데이터베이스 읽는중 ...현재 131759개의 파일과 디렉터리가 설치되어 있습니다.) openssh-server 패키지를 푸는 중입니다 (.../openssh-server_1%3a5.8p1-1ubuntu3_i386.deb에서) ... 전에 선택하지 않은 ssh 패키지를 선택합니다. ssh 패키지를 푸는 중입니다 (.../ssh_1%3a5.8p1-1ubuntu3_all.deb에서) ... 전에 선택하지 않은 ssh-import-id 패키지를 선택합니다. ssh-import-id 패키지를 푸는 중입니다 (.../ssh-import-id_2.4-0ubuntu1_all.deb에서) ... ureadahead에 대한 트리거를 처리하는 중입니다 ... ureadahead will be reprofiled on next reboot ufw에 대한 트리거를 처리하는 중입니다 ... man-db에 대한 트리거를 처리하는 중입니다 ... openssh-server (1:5.8p1-1ubuntu3) 설정하는 중입니다 ... Creating SSH2 RSA key; this may take some time ... Creating SSH2 DSA key; this may take some time ... Creating SSH2 ECDSA key; this may take some time ... ssh start/running, process 2269 ssh (1:5.8p1-1ubuntu3) 설정하는 중입니다 ... ssh-import-id (2.4-0ubuntu1) 설정하는 중입니다 ... root@LinuxX86:~# <span style='color: blue; font-weight: bold'>netstat -an | grep 22</span> tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp6 0 0 :::22 :::* LISTEN unix 2 [ ACC ] STREAM LISTENING 12233 /tmp/orbit-root/linc-560-0-1518fc7536d6f unix 2 [ ACC ] STREAM LISTENING 12512 /tmp/orbit-root/linc-565-0-4f2232506ca1d unix 3 [ ] STREAM CONNECTED 95922 unix 3 [ ] STREAM CONNECTED 89422 unix 3 [ ] STREAM CONNECTED 89227 @/tmp/dbus-fOkFW0NrVY unix 3 [ ] STREAM CONNECTED 89226 unix 3 [ ] STREAM CONNECTED 14229 @/tmp/dbus-Sak9TTKEjZ unix 3 [ ] STREAM CONNECTED 14228 unix 3 [ ] STREAM CONNECTED 13422 @/tmp/dbus-Sak9TTKEjZ unix 3 [ ] STREAM CONNECTED 13229 @/dbus-vfs-daemon/socket-gfqq0cYX unix 3 [ ] STREAM CONNECTED 13228 unix 3 [ ] STREAM CONNECTED 13227 @/dbus-vfs-daemon/socket-WorU5Rtl unix 3 [ ] STREAM CONNECTED 13226 unix 3 [ ] STREAM CONNECTED 13223 @/tmp/dbus-Sak9TTKEjZ unix 3 [ ] STREAM CONNECTED 13222 unix 3 [ ] STREAM CONNECTED 12822 @/tmp/dbus-Sak9TTKEjZ unix 3 [ ] STREAM CONNECTED 12722 unix 3 [ ] STREAM CONNECTED 12514 /tmp/orbit-root/linc-565-0-4f2232506ca1d unix 3 [ ] STREAM CONNECTED 12282 @/tmp/dbus-Sak9TTKEjZ unix 3 [ ] STREAM CONNECTED 12281 unix 3 [ ] STREAM CONNECTED 12279 @/tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTED 12278 unix 3 [ ] STREAM CONNECTED 12237 @/tmp/dbus-D8SLrW5Y4G unix 3 [ ] STREAM CONNECTED 12236 unix 3 [ ] STREAM CONNECTED 12235 /tmp/orbit-root/linc-560-0-1518fc7536d6f unix 3 [ ] STREAM CONNECTED 12234 unix 3 [ ] STREAM CONNECTED 12232 /tmp/orbit-root/linc-52a-0-383f5f20ef551 unix 3 [ ] STREAM CONNECTED 12231 unix 3 [ ] STREAM CONNECTED 12217 @/tmp/.X11-unix/X0 unix 3 [ ] STREAM CONNECTED 12216 unix 3 [ ] STREAM CONNECTED 9229 /var/run/dbus/system_bus_socket unix 3 [ ] STREAM CONNECTED 9228 unix 3 [ ] STREAM CONNECTED 7722 /var/run/dbus/system_bus_socket root@LinuxX86:~# </pre> <br /> 여기까지 했으면, 우분투 쪽의 서버 설치는 완료된 것입니다. 이제 윈도우 같으면 mstsc.exe와 같은 클라이언트 측 접속 프로그램을 설치해야 하는데요. 저는 윈도우 7에서 우분투 쪽으로 접속할 것이기 때문에 다음의 경로에서 "NX Client for Windows"를 다운로드했습니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > NX Client for Windows ; <a target='tab' href='http://www.nomachine.com/download-package.php?Prod_Id=3565'>http://www.nomachine.com/download-package.php?Prod_Id=3565</a> </pre> <br /> 설치 후 "NX Client for Windows"를 실행해서 우분투가 설치된 PC의 IP를 지정해서 연결하면 정상적으로 원격 접속이 이뤄집니다. 비록 윈도우의 RDP 만큼은 아니지만, 확실히 VNC에 비해서는 좋아진 것을 체감할 수 있었는데... 음... 리눅스가 점점 더 편리해지는 것 같습니다. ^^<br /> <br /> <hr style='width: 50%' /><br /> <br /> 개인적으로, 위의 우분투 이외에 Hyper-V의 가상 머신에 CentOS 6까지 설치를 해놓았는데요. 아쉽게도 FreeNX 제품이 CentOS 6은 지원하지를 않았습니다. 찾아보니 다음과 같은 글이 나오는데요.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > How to install FreeNX on Centos 6 and connect from intel mac ; <a target='tab' href='http://www.centos.org/modules/newbb/viewtopic.php?topic_id=32959&forum=56'>http://www.centos.org/modules/newbb/viewtopic.php?topic_id=32959&forum=56</a> </pre> <br /> 위의 글에 따라 아래와 같이 실행하고,<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > # yum groupinstall "GNOME Desktop Environment" "X Window System" </pre> <br /> FreeNX를 설치하라는 아래의 구문은 그런 패키지가 없다고 오류가 발생했습니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > # yum groupinstall "FreeNX and NX" </pre> <br /> 댓글에 보면, 현재 개발중이라면서 아래의 2가지 모듈을 소개하는데요.<br /> <br /> <ul> <li><a target='tab' href='http://centos.toracat.org/misc/nx-freenx/6/i386/nx-3.4.0-7.el6.ay.i386.rpm'>http://centos.toracat.org/misc/nx-freenx/6/i386/nx-3.4.0-7.el6.ay.i386.rpm</a></li> <li><a target='tab' href='http://centos.toracat.org/misc/nx-freenx/6/i386/freenx-0.7.3-8.el6.ay.i686.rpm'>http://centos.toracat.org/misc/nx-freenx/6/i386/freenx-0.7.3-8.el6.ay.i686.rpm</a></li> </ul> <br /> 설치는 그런대로 잘 진행이 되었으나 아래의 명령어 실행 단계에서 오류가 발생했습니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > # nxsetup --install --clean --purge --setup-nomachine-key </pre> <br /> 참고로, CentOS의 경우 OpenSSH는 다음의 자료를 이용해서 설치를 했습니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > CentOS SSH Installation And Configuration ; <a target='tab' href='http://www.cyberciti.biz/faq/centos-ssh/'>http://www.cyberciti.biz/faq/centos-ssh/</a> </pre> <br /> 암튼, 이렇게 해보았지만 "NX Client for Windows" 프로그램에서 연결을 할 때 "Authentication failed."라는 오류만 발생할 뿐이었습니다. <br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > Linux Terminal Services using NX and FreeNX - Troubleshooting ; <a target='tab' href='http://alien.slackbook.org/dokuwiki/doku.php?id=slackware:nx '>http://alien.slackbook.org/dokuwiki/doku.php?id=slackware:nx </a> </pre> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > NX> 203 NXSSH running with pid: 6721 NX> 285 Enabling check on switch command NX> 285 Enabling skip of SSH config files NX> 200 Connected to address: 192.168.2.21 on port: 22 NX> 202 Authenticating user: nx NX> 208 Using auth method: publickey NX> 204 Authentication failed. </pre> <br /> 오류 메시지는 위에서 설명한 것과 동일한데, 해결책으로 제시된 "/var/lib/nxserver/nxhome" 폴더 자체가 없어서 포기했습니다. 오류 추적은 일단 여기까지 하고 포기! ^^ 혹시 CentOS 6 운영체제에서 원격 데스크톱 연결을 성공하신 분은 공유 좀 부탁드리겠습니다.<br /> <br /> <hr style='width: 50%' /><br /> <br /> 이외에, 반대로 리눅스에서 윈도우로 원격 데스크톱 연결하는 것도 찾을 수 있었습니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > 리눅스 컴퓨터에서 윈도우즈 컴퓨터로 원격 데스크톱 연결하는 방법 (rdesktop 사용법) ; <a target='tab' href='http://kldp.org/node/99781'>http://kldp.org/node/99781</a> </pre> <br /> iPad에서도 윈도우로의 원격 데스크톱이 되므로 별로 놀랄 일은 아니지만, 암튼 ^^ 리눅스의 상호 운영성이 편해진 것만은 분명한 것 같습니다.<br /> <br /> 그 외에 freerdp라는 것도 있는데요.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > freerdp 0.8.2 RPM Download ; <a target='tab' href='http://pkgs.org/centos-6-rhel-6/epel-i386/freerdp-0.8.2-1.el6.i686.rpm.html'>http://pkgs.org/centos-6-rhel-6/epel-i386/freerdp-0.8.2-1.el6.i686.rpm.html</a> </pre> <br /> 위의 RPM을 다운로드 받아서 실행하니 다음과 같이 의존성 오류가 발생합니다.<br /> <br /> <img alt='linux_rdp_1.png' src='/SysWebRes/bbs/linux_rdp_1.png' /><br /> <br /> 내용을 잘 보면 해결해야 할 의존성 목록이 보이는데, 동일한 웹 페이지의 하단에서 아래와 같이 다운로드 받을 수 있는 링크가 제공됩니다.<br /> <br /> <pre style='margin: 10px 0px 10px 10px; padding: 10px 0px 10px 10px; background-color: #fbedbb; overflow: auto; font-family: Consolas, Verdana;' > freerdp-libs = 0.8.2-1.el6 ; <a target='tab' href='http://pkgs.org/download/freerdp-libs'>http://pkgs.org/download/freerdp-libs</a> libfreerdpchanman.so.0 ; <a target='tab' href='http://pkgs.org/download/libfreerdpchanman.so.0'>http://pkgs.org/download/libfreerdpchanman.so.0</a> libfreerdpkbd.so.0 ; <a target='tab' href='http://pkgs.org/download/libfreerdpkbd.so.0'>http://pkgs.org/download/libfreerdpkbd.so.0</a> freerdp-plugins = 0.8.2-1.el6 ; <a target='tab' href='http://pkgs.org/download/freerdp-plugins'>http://pkgs.org/download/freerdp-plugins</a> libfreerdp.so.0 ; <a target='tab' href='http://pkgs.org/download/libfreerdp.so.0'>http://pkgs.org/download/libfreerdp.so.0</a> </pre> <br /> 직접 해보니, "freerdp-plugins = 0.8.2-1.el6", "libfreerdp.so.0" 2가지 정도만 다운로드해서 설치를 해도 의존성 문제가 해결되었습니다.<br /> <br /> 리눅스의 원격 데스크톱 이야기는 여기서 끝!<br /> </p><br /> <br /><hr /><span style='color: Maroon'>[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]</span> </div>
첨부파일
스팸 방지용 인증 번호
1122
(왼쪽의 숫자를 입력해야 합니다.)