LINUX
2019.05.29 / 01:01

10. ssh¿Í xhost¸¦ ÅëÇØ ¿ø°ÝÀ¸·Î GUI¸¦ »ç¿ëÇØ º¸ÀÚ.

Źµ¹ÀÌ°³¹ßÀÚ
Ãßõ ¼ö 209

ÀϹÝÀûÀ¸·Î ¿ø°ÝÀ¸·Î ÀÛ¾÷ÇÏ´Â °æ¿ì, ÁÖ·Î Å͹̳ÎÀ» ÅëÇÑ TUI ÀÛ¾÷À» ÇÏ¿´´Ù.
±×·¯³ª, ±×·¡ÇÁ È®ÀÎ µîÀÇ GUI ÀÛ¾÷ÀÌ ÇÊ¿äÇÑ °æ¿ìµµ Á¾Á¾ Àִµ¥, º» Æ÷½ºÆÿ¡¼­´Â ±× ¹æ¹ý¿¡ ´ëÇØ ¼Ò°³ÇÏ°íÀÚ ÇÑ´Ù.

ÇÏ°íÀÚ ÇÏ´Â ÀÛ¾÷ »óȲÀº ¾Æ·¡¿Í °°´Ù.
1. Local ¿¡¼­ Remote·Î SSH¸¦ ÅëÇØ Á¢¼ÓÇÏ¿© ÀÛ¾÷À» ÇÑ´Ù.
2. ÀÛ¾÷ °á°ú·Î ³ª¿Â ±×·¡ÇÈ È­¸éÀ» ³» ÄÄÇ»ÅÍ(Local)¿¡ ¶ç¿ö¼­ º¸°íÀÚ ÇÑ´Ù.

¸ñÇ¥

ÇÊ¿äÇÑ ÀÛ¾÷À» ¸ÕÀú °£´ÜÈ÷ ¿ä¾àÇÏ¸é ´ÙÀ½°ú °°´Ù.

1. Local ¿¡¼­ DISPLAY ȯ°æ º¯¼ö ¹× xhost ¼³Á¤ 2. Local °ú Remote ¸ðµÎ¿¡¼­ sshd_config, ssh_config °ª ¼³Á¤ 3. ssh -X -p Æ÷Æ® °èÁ¤¸í@ÁÖ¼Ò ¸¦ ÅëÇØ ssh Á¢¼Ó ÈÄ Å×½ºÆ®


À̸¦ ¹ÙÅÁÀ¸·Î ÁøÇàÇϵµ·Ï ÇÏ°Ú´Ù.
³»¿ëÀÌ Á¶±Ý ±æ ¼öµµ ÀÖÀ¸³ª, ÀüÇô ¾î·ÆÁö ¾Ê°í ´ÜÁö ±ÍÂúÀº°Ô ¸¹Àº °Í »ÓÀ̶ó Â÷ºÐÈ÷ µû¶óÇÏ¸é ½±°Ô ÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.

1. Localhost¿¡¼­ DISPLAY ȯ°æº¯¼ö ¹× xhost ¼³Á¤

DISPLAY ȯ°æº¯¼ö´Â ÀÛ¾÷ °á°ú¸¦ º¸¿©ÁÙ È­¸éÀ» ´ã´çÇÏ´Â º¯¼öÀÌ´Ù.
localÀÇ ¿ì¸® ÄÄÇ»ÅÍÀÇ È­¸é¿¡ °á°ú¸¦ Ãâ·ÂÇÒ °ÍÀ̹ǷΠDISPLAY °ªÀ» ´ÙÀ½°ú °°ÀÌ ¼³Á¤ÇÑ´Ù.

export DISPLAY=localhost:0.0


DISPLAY ¼³Á¤ÀÌ ¿Ï·áµÇ¾úÀ¸¸é xhost ¼³Á¤À» ÇØ¾ß ÇÑ´Ù. xhost´Â ±×·¡ÇÈ È­¸é(XÀ©µµ)ÀÇ Ã³¸®¸¦ ´ã´çÇÑ´Ù. 
xhost°¡ Æ÷ÇԵȠx11-xserver-utils ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÑ´Ù.

sudo apt install x11-xserver-utils

ÀÌÈÄ xhost ¼³Á¤À» ¾Æ·¡¿Í °°ÀÌ ÁøÇàÇÑ´Ù.

xhost + Remote_IP ex) xhost + 192.168.0.2


¿©±â¼­ xhost + IPÀÇ Àǹ̴ "IP"¿¡¼­ µé¾î¿À´Â ¿¬°áÀ» Çã¿ëÇÑ´Ù´Â ¶æÀÌ´Ù.
¸¸¾à IP ¿¡¼­ÀÇ ¿¬°áÀ» ¸·À¸·Á¸é xhost - IP Ã³·³ ÇØÁÖ¸é µÈ´Ù.
ÀÌ ¶§,  xhost + ¸¸ ÇØÁÖ¸é ¸ðµç ¿¬°áÀ» Çã¿ëÇÑ´Ù´Â ¶æÀÌ°í, xhost - ¸¦ ÇÏ¸é ¸ðµç ¿¬°áÀ» Â÷´ÜÇÑ´Ù´Â ¶æÀÌ´Ù. ±×³É xhost ¸¸ ÀÔ·ÂÇÏ¸é µî·ÏµÈ IPÀÇ ¸ñ·ÏÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù.
Á» ´õ ÀÚ¼¼ÇÑ ³»¿ëÀº ¿©±â¸¦ Âü°íÇÏÀÚ.

¸¶Áö¸·À¸·Î È­¸é Ãâ·ÂÀ» ´ã´çÇÒ ÇÁ·Î±×·¥À» ¼³Ä¡ÇÑ´Ù.
À§¿¡¼­ ÇÑ ÀÛ¾÷Àº ¾îµð±îÁö³ª È­¸éÀ¸·Î ¿¬°áÇØÁÖ´Â ±æÀ» ¼³Á¤ÇØÁØ °Í »ÓÀÌÁö, ¾ÆÁ÷ ½ÇÁ¦·Î Ãâ·ÂÇØÁÖ´Â È­¸é ÇÁ·Î±×·¥À» ¼³Ä¡ÇÏÁö ¾ÊÀº »óÅÂÀÌ´Ù.

ÇöÀç ±æ¸¸ ¸¸µé¾î³õÀº »óȲ

´ëÇ¥ÀûÀÎ ÇÁ·Î±×·¥À¸·Î´Â ¹«·á ÇÁ·Î±×·¥ÀΠXming°ú ±¹»ê À¯·á ÇÁ·Î±×·¥ÀΠXmanager°¡ ÀÖ´Ù.
µÑ Áß ¾Æ¹«°Å³ª ¼±ÅÃÇÏ¿© ´Ù¿î·ÎµåÇÑ´Ù. 
º» Æ÷½ºÆÿ¡¼± XmingÀ» ¹ÙÅÁÀ¸·Î ÁøÇàÇϵµ·Ï ÇÏ°Ú´Ù.
Xming(¹«·á): https://sourceforge.net/projects/xming/
Xmanager(±¹»ê/À¯·á/30ÀÏ Æò°¡ÆÇ): https://www.netsarang.co.kr/products/xmg_overview.html

¼³Ä¡°¡ ¿Ï·áµÇ¾úÀ¸¸é XmingÀ» ½ÇÇà½ÃŲ´Ù.

·ÎÄÿ¡¼­ Xming ½ÇÇà

xmingÀ» ½ÇÇàÇÏ¸é ¿ìÃø ÇÏ´Ü Æ®·¹ÀÌ¿¡ ¾ÆÀÌÄÜÀÌ º¸ÀÌ°Ô µÈ´Ù.

Xming µ¿ÀÛ È®ÀÎ

ÀÌÈÄ local ½©¿¡¼­ DISPLAY ȯ°æ º¯¼ö¿Í xhost°¡ Á¤»óÀûÀ¸·Î µî·ÏµÇ¾î ÀÖ´ÂÁö È®ÀÎÇÑ´Ù.

DISPLAY ¹× xhost È®ÀÎ

µÑ ´Ù Á¤»óÀûÀ¸·Î ³ª¿Â´Ù¸é È­¸é ÂÊÀÇ ÁغñÀÛ¾÷ÀÌ ¸ðµÎ ³¡³­ °ÍÀÌ´Ù.

È­¸é Ãâ·ÂÀ» ´ã´çÇÒ ÇÁ·Î±×·¥ ¼³Ä¡ ¿Ï·á

2. Local °ú Remote ¸ðµÎ¿¡¼­ sshd_config, ssh_config °ª ¼³Á¤

À§¿¡¼­ È­¸é Ãâ·Â ºÎºÐÀº ¸ðµÎ ó¸®ÇßÀ¸³ª, ssh¸¦ ÅëÇØ ±×·¡ÇÈ È­¸éÀ» Ãâ·ÂÇÒ ¼ö ÀÖµµ·Ï ssh ¼³Á¤À» Ãß°¡·Î ÇØÁà¾ß ÇÑ´Ù.

SSHÀÇ X11 Æ÷Æ®Æ÷¿öµùÀÌ ¾ÈµÈ »óȲ



¾Æ·¡ÀÇ ÀÛ¾÷À» local°ú remote¿¡¼­ ¸ðµÎ ¼öÇàÇÑ´Ù.

1. sshd_config¿¡¼­ X11Forwarding yes ·Î ¼³Á¤ÇÑ´Ù.

sudo vim /etc/ssh/sshd_config

¿©±â¼­ X11Forwarding no¸¦ yes·Î ¹Ù²ãÁØ´Ù.

/etc/ssh/sshd_config ¼öÁ¤



2. ssh_config¿¡¼­ ForwardAgent yes, ForwardX11 yes, ForwardX11Trusted yes ·Î ¼³Á¤ÇÑ´Ù.

sudo vim /etc/ssh/ssh_config
/etc/ssh/ssh_config ¼öÁ¤

À§ÀÇ °úÁ¤ÀÌ Local°ú Remote ¸ðµÎ¿¡¼­ ¿Ï·áµÇ¾úÀ¸¸é ¸ðµç Áغñ´Â ³¡³­ °ÍÀÌ´Ù.

SSHÀÇ X11 Æ÷Æ®Æ÷¿öµù ¿Ï·á
3. µ¿ÀÛ Å×½ºÆ®

Remote¿¡ sshÁ¢¼ÓÇÑ µÚ, xclockÀ» ½ÇÇà½ÃŲ È­¸éÀ» ³» ÄÄÇ»ÅÍ(Local)¿¡¼­ º¼ ¼ö ÀÖ°Ô Çغ¸ÀÚ.

xclockÀ» ÀÌ¿ëÇÑ °£´ÜÇÑ Å×½ºÆ® ¸ñÇ¥

¿ì¼± Remote·Î -X ¿É¼ÇÀ» ºÙ¿© ssh¸¦ ÀÌ¿ëÇØ Á¢¼ÓÇÑ´Ù.

ssh -X -p Æ÷Æ®¹øÈ£ °èÁ¤@ÁÖ¼Ò ex) ssh -X -p 2022 occidere@192.168.0.2

ÀÌÈÄ Å×½ºÆ®¸¦ ÁøÇàÇϱâ À§ÇÑ ±×·¡ÇÈ ½Ã°è ÇÁ·Î±×·¥ÀÎ xclockÀ» ¼³Ä¡ÇÑ´Ù.

sudo apt install x11-apps


ÀÌÈÄ xclock ¸í·É¾î¸¦ ÀÔ·ÂÇØ Remote¿¡¼­ ½Ã°è ÇÁ·Î±×·¥À» ½ÇÇà½ÃÅ°°í, ±× °á°ú È­¸éÀ» Local ¿¡¼­ È®ÀÎÇØ º»´Ù.

½ÇÇà °á°ú Á¤»ó µ¿ÀÛ È®ÀÎ

Á¤»óÀûÀ¸·Î ½Ã°è È­¸éÀÌ ³» ÄÄÇ»ÅÍ(Local) ¿¡ XmingÀ» ÅëÇØ ½ÇÇàµÈ´Ù¸é ¼º°øÀÌ´Ù.
¸¸ÀÏ X11 forwarding request failed on channel 0 ¶ã °æ¿ì ¿©±â¸¦ Âü°íÇÏÀÚ.

4. ¸¶Ä¡¸ç

¿©±â±îÁö Çؼ­ ssh, xhost, Xming(Xmanager)À» ÀÌ¿ëÇÑ ¿ø°Ý µð½ºÇ÷¹ÀÌ ¼³Á¤À» ÇØ º¸¾Ò´Ù.
»ý°¢º¸´Ù ¾µ ÀÏÀÌ ¸¹À¸¹Ç·Î Æò¼Ò¿¡ ÀÍÇôµÎ¸é µí ÇÏ´Ù.