~/.ssh/config ãã¡ã¤ã«ãæ¸ããã¨ã§ãµã¼ãã¼æ¯ã«æ¥ç¶è¨å®ãå¤ãããã¨ãåºæ¥ã.ã¨è¨ã話ãåã«æ¸ãã¾ããã .ssh/config ã¯ã¤ãã¤ã便å©ãªã®ã§ï¼ããä¸åº¦ã¾ã¨ãã¦è¦ã¾ããã
ãã¹ãæ¯ã«ã¦ã¼ã¶ã¼åãå¤ãã
~/.ssh/config è¨è¿°ä¾
Host 192.168.2.5 User takuya_1st
ãã®è¨è¿°ã§
ssh [email protected]
ã
ssh 192.168.2.5
ãåãã«ãªãã¾ãï¼ãã¦ã¼ã¶ã¼åãçç¥åºæ¥ã¾ããã
ãã¹ãåãçç¥ãã
Host s0 Hostname 192.168.2.5
ãã®è¨è¿°ã§
ssh s0
ã
ssh 192.168.2.5
ã¨åçã«ãªãã¾ãï¼IPçç¥ã§ããã /etc/hostsã®æ¸æããè¦ããªãã楽ã¡ãã§ãï¼ï¼
ãµã¼ãã¼æ¯ã«éµãå¤ãã
SSHã®ç§å¯éµããµã¼ãã¼æ¯ã«å¤ããå ´å.
Host 192.168.2.5 IdentifyFile /home/share/keys/id_rsa.fs
ã¨æ¸ãã°æ¥ç¶å ã§éµãå¤ãããã¨ãåºæ¥ãããã«ãªãã¾ãï¼
ssh host01 -i /path/to/key/id_rsa
ã
ssh host01
ã«çç¥ããã¾ã
ãã¼ãçªå·
ãµã¼ãã¼æ¯ã®ãã¼ãçªå·ãæå®ã§ãã¾ã
Host 192.168.2.5 Port 10020
ããã§ãæ¥ç¶æã«ãã¼ãçªå·æå®ãçç¥ã§ãã¾ããã¾ããããã¼ãæå®ããªãã¦è¯ãã§ããã®ãã
å ã»ã©ã®ãã¹ãåæå®ã¨çµã¿åããã¦
Host my_host01 Hostname takuya.example.com Port 10220
ã¨ããã°ãã¾ã¨ãã¦è¨å®ã§ãã¦ä¾¿å©
ã¯ã¤ã«ãã«ã¼ã
IPã¢ãã¬ã¹ã®è¨å®ã«ã¯ã¤ã«ãã«ã¼ãã使ãã
Host 192.168.2* User takuya_1st
ã¨æ¸ãã° 192.168.2.0/24 ã®ãµã¼ãã¼ã«æ¥ç¶ããå
¨ã¦é©ç¨ããã¾ãï¼
ã¯ã¤ã«ãã«ã¼ãã¯ãã¡ã¤ã³é ã«ã
Host *.test.example.jp User test_admin
ãªã©ã¨é ã«ã¤ãã¦ã大ä¸å¤«
SSHæ¥ç¶ãããããåããã®ãé²æ¢ãã
æ¥ç¶å ã®ã«ã¼ã¿ã¼ãTCPãããã«åæããç³»ã®å ´åãå ¨ä½ã®è¨å®ã§KeepAliveããã®ãã°ããããã®ã§ã
Host 192.168.2.5 ServerAliveInterval 15
ã¨æ¸ãã°ï¼ï¼ï¼ç§ã«ä¸å,SSHã¯ã©ã¤ã¢ã³ãå´TCPãã¼ãã¢ã©ã¤ããéãã¾ãã
TCPKeepalive ã¯ããã©ã«ããYesãªã®ã§ keepalive ã¯ããã©ã«ãæå¹ã§ãï¼
TCPãã¼ãã¢ã©ã¤ããOFF
TCPãã¼ãã¢ã©ã¤ããOFFã«ãã¦ããã°å°ä¸éãªã©ã§ç¬éçã«æ¥ç¶åãã¦ãç¡ãã¦ããã£ã¨å¾ ã£ã¦ãããã®ã§å°ãå¬ããï¼
ã©ããã¦ãåæããã¦ãã¾ããªãï¼æ¬¡ã®ãµã¤ããåèã«ãªãããã
ãã°ã¤ã³å ã§å®æçã«ä½ããåºåããããã°ã©ã ãå®è¡ãã
端æ«ãåå¾ããå ´åã®ã¿æå¹ãªæ¹æ³ã§ããã ä¸å®æéããã«ä½ãã®æååãåºåãããããªããã»ã¹ã ããã¯ã°ã©ã¦ã³ãå®è¡ãã¦ããã° ãã®æååãã³ãã¯ã·ã§ã³ä¸ãæµãã¾ãã®ã§ã æ¥ç¶ãç¶æã§ãã¾ãã
ã¾ãããã¼ããã©ã¯ã¼ãã£ã³ã°ã主ç®çã®å ´åãªã©ã ping -i 300ãªã©ã¨ãªã¢ã¼ãã§å®è¡ããä¾ãããè¦ããã¾ãã
åé¡ç¹ã¯ãä»ã®ããã»ã¹ã®åºåã¨æ··ãã£ã¦ãã¾ããã¨ã§ãã ãªã¢ã¼ããã°ã¤ã³ãã¦Emacsãªã©ã®ç«¯æ«å¶å¾¡ãè¡ãã¢ããªã±ã¼ã·ã§ã³ãå®è¡ããã¨ã ãã®ããã¯ã°ã©ã¦ã³ãããã»ã¹ã®åºåãç»é¢ãä¹±ãã¦ãã¾ãã¾ãã ãã¼ã(0x0a)ãåºåããã°ç»é¢ãä¹±ãããã¨ã¯ããã¾ãããã ããããã®ã§ã¤ãã¤ãã ã¨æãã¾ãã
http://www.geocities.co.jp/AnimeComic/1098/documents/unixmemo/ssh-keepalive.htmlKeepAliveãæå¾ éãåãããã«OSã®TCPè¨å®ãå¤æ´ãã
åè¿°ããããã«ããã ssh_configã§KeepAlive yesã¨ããã ãã§ã¯ãã®åé¡ã¯è§£æ±ºãã¾ããã KeepAliveãªãã·ã§ã³ã¯TCPã½ã±ãããä½ãã¨ãã«SO_KEEPALIVEãæå¹ã«ãããã®ã§ããã ããã¯ä¸å®æéä½ããã±ããã®æµããªãã³ãã¯ã·ã§ã³ã«å¯¾ãã æ¥ç¶ãçãã¦ãããã©ããã確èªããããã®ãã±ãããæµããã®ã§ãã ãã®keepaliveã¡ãã»ã¼ã¸ãéãã¾ã§ã®æéã¯ãæå ã®Linuxã ã¨2æéã®è¨å®ã§ãã®ã§ã ã¨ã£ãã«åãã¦ãããããã®æéãçµéãã¦ããããæ¥ç¶æãOSãèªèããããã§ãã çè ã«ã¯ãã®ãããã®ã¬ã¤ã¤ã¼ã®è©±ã¯å ¨ãããããªãã®ã§ããã å¤åãããããã®ãªã®ã§ãããã
Linuxã®å ´å㯠/proc/sys/net/ipv4/tcp_keepalive_time ãªã©ãããã£ã¦ãã®è¨å®ã5åãªã©ã¨å¤æ´ããã° åé¡ã¯è§£æ±ºããããã§ãããå¿ççã«æµæãããã¾ãã
ãProgramming UNIX Sockets in C - Frequently Asked Questionsãã®è¨è¿°ãããã¦ããã¢ããªã±ã¼ã·ã§ã³ã¬ãã«ã§å¯¾å¦ãã¹ãåé¡ã®ããã«æãã¾ãã
ããã§ãåãããªãHeartbeatããããé©ç¨ããSSHã³ãã³ã使ç¨ãèããã¨è¯ãããã»
詳ãã㯠man ssh_cofig
SSHã®è¨å®é©ç¨é
/etc/ssh/ssh_config : ã·ã¹ãã å ¨ä½ ~/.ssh/config ï¼ã¦ã¼ã¶ã¼åºæ
ã®é ã«è§£éãããï¼
åèè³æ
man ssh_config
http://d.hatena.ne.jp/takuya_1st/20110628/1309230095