ÁÉ­}ºô > IT§Þ³N Linux > ³Ì·s§ó·s
  IT¸ê°T·j¯Á
 
IT²£«~·j¯Á
[µ{¦¡¶}µo][ºôºÞ¥@¬É][ºô¸ô¦w¥þ][¼Æ¾Ú®w§Þ³N]
[§@·~¨t²Î][¹Å»«²á¤Ñ¡P½u¤W³X½Í][¬¡°Ê¶°ÀA]
[ºë±m±MÃD][Symantec±M°Ï][­q¾\IT§Þ³N¶g¥Z]
[¶}µo½×¾Â][ºôºÞ½×¾Â][¦w¥þ½×¾Â][¼Æ¾Ú®w½×¾Â]
[§@·~¨t²Î½×¾Â][Sybase±M°Ï][IBM dW§Þ³N±M°Ï]
[¯f¬r¨D§U][¯f¬r»Pº|¬}¼½³ø][¤åÀÉ¡P·½½X¤U¸ü]

Linux§@·~¨t²Î¤W¶i¦æ¦Û°Ê³Æ¥÷ªº¤èªk¨BÆJ

µo§G®É¶¡¡G2007.09.26 06:38     ¨Ó·½¡GÁÉ­}ºô    §@ªÌ¡Gkit

­«­n¼Æ¾Úªº¥á¥¢¥i¯à·N¨ýµÛ­P©Rªº¯}Ãa¡C¾¨ºÞ¦p¦¹¡AÁÙ¬O¦³µL¼Æ±M·~¤H­û©¿µø¤F¹ï¥L­Ìªº¼Æ¾Úªº³Æ¥÷¡CÁöµM­ì¦]¥i¯à¦U¤£¬Û¦P¡A¦ý¬O¡A³Ì±`¨£ªº¤@­Ó¸ÑÄÀ¬O¡A°õ¦æ¨Ò¦æ³Æ¥÷½T¹ê·Ðº¾¡C¥Ñ©ó¾÷¾¹¾Õªø¤_§¹¦¨´¶³q¦Ó­«´_ªº¥ô°È¡A¦]¦¹¡A¦Û°Ê¤Æ³Æ¥÷ªº¹Lµ{¬O­°§C¤u§@¤º¦bªº¬\Àê©Ê©M¤H­Ì»P¥Í­Ñ¨Óªº©ì©µ¶É¦VªºÃöÁä©Ò¦b¡C
¦pªG±z¨Ï¥Î Linux¡A¨º»ò±z´N¤w¸g¥i¥H¨Ï¥Î¨º¨Ç³Ð«Ø©w»s³Æ¥÷¸Ñ¨M¤è®×ªº·¥¨ä±j¤jªº¤u¨ã¡C¥»¤å¤¤ªº¤è®×¡A¥i¥HÅý±z¨Ï¥Î´X¥G¨C­Ó Linux µo¦æª©¥»³£ªþ±aªº¶}©ñ·½¥N½X¤u¨ã¨Ó°õ¦æ±q²³æªº¨ì§ó°ª¯Å¦Ó¥B¦w¥þªººô¸ô³Æ¥÷¡C

²³æ³Æ¥÷

¥»¤å«ö·Ó¤@¨B¤@¨Bªº¤èªk¨Ó¶i¦æÁ¿­z¡A¥u­n±z¿í´`¨º¨Ç°ò¥»ªº¨BÆJ¡A¦¹¤èªk·|¬O«D±`ª½Æ[ªº¡C
¦b¬ã¨s§ó°ª¯Åªº¤À§G¦¡³Æ¥÷¸Ñ¨M¤è®×¤§«e¡AÅý§Ú­Ì­º¥ý¨Ó¬Ý¤@­Ó²³æ¦Ó±j¤jªº¦sÀɾ÷¨î¡CÅý§Ú­Ì¨Ó¤ÀªR¤@­Ó¦W¬° arc ªº¤è«Kªº¸}¥»¡A¥¦¥i¥HÅý§Ú­Ì¦b Linux shell ´£¥Ü²Å¤¤³Ð«Ø³Æ¥÷§Ö·Ó¡C

²M³æ 1. arc shell ¸}¥»

#!/bin/sh   tar czvf $1.$(date +%Y%m%d%-H%M%S).tgz $1   exit $?

arc ¸}¥»±µ¦¬¤@­Ó³æ¿Wªº¤å¥ó©Î¥Ø¿ý¦W§@¬°°Ñ¼Æ¡A³Ð«Ø¤@­ÓÀ£ÁYªº¦sÀɤå¥ó¡A¦P®É±N·í«e¤é´Á´O¤J¨ì¥Í¦¨ªº¦sÀɤå¥óªº¦W¦r¤§¤¤¡C¨Ò¦p¡A¦pªG±z¦³¤@­Ó¦W¬° beoserver ªº¥Ø¿ý¡A±z¥i¥H½Õ¥Î arc ¸}¥»¡A±N beoserver ¥Ø¿ý¦W¶Ç»¼µ¹¥¦¥H³Ð«Ø¤@­ÓÀ£ÁYªº¦sÀɤå¥ó¡A¦p¡G beoserver.20040321-014844.tgz

¨Ï¥Î date ©R¥O¬O¬°¤F´O¤J¤@­Ó¤é´Á©M®É¶¡ÂW¥HÀ°§U±z²Õ´¦sÀɤå¥ó¡C¤é´Áªº®æ¦¡¬O¦~¡B¤ë¡B¤é¡B¤p®É¡B¤À¡B¬í ¡X¡X ÁöµM¬í°ìªº¨Ï¥Î¦³¤@¨Ç¦h¾l¡C¬d¬Ý data ©R¥Oªº¤â¥U¡] man date¡^¨Ó¤F¸Ñ¨ä¥L¿ï¶µ¡C¥t¥~¡A¦b²M³æ 1 ¤¤¡A§Ú­Ì¦V tar ¶Ç»¼¤F -v¡]verbose¡^¿ï¶µ¡C³o´N¨Ï±o tar Åã¥Ü¥X¥¦¥¿¦b¦sÀɪº¤å¥ó¡C¦pªG±z³ßÅwÀRÀq¦a¶i¦æ³Æ¥÷¡A¨º»ò§R°£³o­Ó -v ¿ï¶µ¡C

²M³æ 2. ¦sÀÉ beoserver ¥Ø¿ý

$ ls   arc  beoserver   

$ ./arc beoserver beoserver/ beoserver/bookl.dat

beoserver/beoserver_ab_off beoserver/beoserver_ab_on

$ ls arc beoserver beoserver.20040321-014844.tgz

°ª¯Å³Æ¥÷

³o­Ó²³æ³Æ¥÷¬O¹ê¥Îªº¡F¤£¹L¡A¥¦¤´µM¥]§t¤@­Ó¤H¤u³Æ¥÷ªº¹Lµ{¡C¦æ·~³Ì¨Î¸gÅç³q±`«ØÄ³±N¼Æ¾Ú³Æ¥÷¨ì¦h­Ó´CÅé¤W¡A¨Ã³Æ¥÷¨ì¤À¶}ªº¤£¦P¦a²z¦ì¸m¡C¤¤¤ß«ä·Q¬OÁ×§K¨Ì¿à©ó¥ô¦ó¤@­Ó³æ¿Wªº¦sÀx´CÅé©Î³æ¿Wªº¦ì¸m¡C

¦b¤U¤@­Ó¨Ò¤l¤¤§Ú­Ì±NÀ³¹ï³o¤@¬D¾Ô¡A§Ú­Ì±N¤ÀªR¤@­Ó¦p¹Ï 1 ©Ò¥Üªº°²·Qªº¤À§G¦¡ºô¸ô¡A¥¦®i¥Ü¤F¹ï¨â¥x»·µ{¦øªA¾¹©M¤@¥xÂ÷½u¦sÀx¦øªA¾¹ªº¨t²ÎºÞ²z¡C

¹Ï 1. ¤À§G¦¡ºô¸ô

¦øªA¾¹ #1 ©M #2 ¤Wªº³Æ¥÷¤å¥ó±N¦w¥þ¦a¶Ç¿é¨ìÂ÷½u¦sÀx¦øªA¾¹¤W¡A¦Ó¥B¾ã­Ó¤À§G¦¡³Æ¥÷¹Lµ{±N¦b¨S¦³¤H¤u¤z¯Aªº±¡ªp¤U©w´Á¶i¦æ¡C§Ú­Ì±N¨Ï¥Î¤@²Õ¼Ð·Çªº¤u¨ã¡]¶}©ñ¦w¥þ shell ¤u¨ã®M¥ó¡]OpenSSH¡^ªº¤@³¡¤À¡^¡A¥H¤ÎºÏ±a¦sÀɾ¹¡]tar¡^©M cron ¥ô°È½Õ«×ªA°È¡C§Ú­Ìªº¥þ³¡­p¹º¬O¡A¨Ï¥Î cron ¶i¦æ½Õ«×¡A¨Ï¥Î shell µ{¦¡©M tar À³¥Îµ{¦¡§¹¦¨³Æ¥÷¹Lµ{¡A¨Ï¥Î OpenSSH ¦w¥þ shell¡]ssh¡^¥[±K¶i¦æ»·µ{³X°Ý¡B»{ÃÒ¡B¦w¥þ shell «þ¨©¡]scp¡^¥H¦Û°Ê§¹¦¨¤å¥ó¶Ç¿é¡C­nÀò±o¥t¥~ªº¸ê®Æ½Ð°È¥²¬d¬Ý¨C­Ó¤u¨ãªº¤â¥U¡C

¨Ï¥Î¤½Æ_/¨pÆ_¶i¦æ¦w¥þªº»·µ{³X°Ý

¦b¼Æ¦r¦w¥þªº¤W¤U¤å¤¤¡A±KÆ_¡]key¡^«üªº¬O¥Î¨Ó¥[±K©Î¸Ñ±K¨ä¥L¼Æ¾Ú¤ùÂ_ªº¤@­Ó¼Æ¾Ú¤ùÂ_¡C¤½Æ_¨pÆ_¼Ò¦¡ªº¦³½ì¤§³B¦b©ó¡A¨Ï¥Î¤½Æ_¥[±Kªº¼Æ¾Ú¡A¥u¦³¥Î¬ÛÀ³ªº¨pÆ_¤~¥i¥H¸Ñ±K¡C±z¥i¥H¦Û¥Ñ¦aµo§G¤@­Ó¤½Æ_¡A³o¼Ë§O¤H´N¥i¥H¹ïµo°eµ¹±zªº®ø®§¶i¦æ¥[±K¡C¤½Æ_/¨pÆ_¼Ò¦¡¹ý©³§ïÅܤF¼Æ¦r¦w¥þªº­ì¦]¤§¤@¬O¡Aµo°eªÌ©M±µ¦¬ªÌ¤£¥²¦A¦@¥Î¤@­Ó³q¥Îªº±K½X¡C°£¤F¨ä¥L¤è­±ªº°^Äm¡A¤½Æ_/¨pÆ_¥[±K¨Ï¥Î¹q¤l°Ó°È©M¨ä¥L¦w¥þ¶Ç¿é¦¨¬°¥i¯à¡C¦b¥»¤å¤¤¡A§Ú­Ì±N³Ð«Ø¨Ã¨Ï¥Î¤½Æ_©M¨pÆ_¨Ó³Ð«Ø¤@­Ó«D±`¦w¥þªº¤À§G¦¡³Æ¥÷¸Ñ¨M¤è®×¡C

­n¶i¦æ³Æ¥÷¹Lµ{ªº¨C¥x¾÷¾¹³£¥²¶·¹B¦æ OpenSSH ¦w¥þ shell ªA°È¡]sshd¡^¡A¦P®ÉÅý 22 ºÝ¤f¥i¥H³q¹L¥ô¦ó¤º³¡¨¾¤õÀð³Q³X°Ý¡C¦pªG±z³X°Ý»·µ{ªº¦øªA¾¹¡A¨º»ò«Ü¦³¥i¯à±z¥¿¦b¨Ï¥Î¦w¥þ shell¡C

§Ú­Ìªº¥Ø¼Ð±N¬O¡A¤£»Ý­n¤H¤u´£¨Ñ±K½X´N¥i¥H¦w¥þ¦a³X°Ý¾÷¾¹¡C¤@¨Ç¤H»{¬°³Ì²³æªº¿ìªk¬O³]¸mµL±K½Xªº³X°Ý¡G¤£­n³o¼Ë°µ¡C³o¼Ë°µ¤£¦w¥þ¡C¤£¥Î¨º¼Ë¡A¥»¤å¤¤§Ú­Ì±N¨Ï¥Îªº¤èªk¥i¯à·|¦û¥Î±z¤j¬ù¤@­Ó¤p®Éªº®É¶¡¡A«Ø¥ß°_¤@­Ó»P¨Ï¥Î¡§µL±K½X¡¨±b¸¹¦P¼Ë¤è«Kªº¨t²Î ¡X¡X ¤£¹L¥¦¬O¤½»{«D±`¦w¥þªº¡C

Åý§Ú­Ì­º¥ý½T«O OpenSSH ¤w¸g¦w¸Ë¡A±µ¤U¨Ó¬d¬Ý¥¦ªºª©¥»¸¹¡C§¹¦¨¥»¤å®É¡A³Ì·sªºµo¦æªº OpenSSH ¬O 2004 ¦~ 2 ¤ë 24 ¤éµo§Gªºª©¥» 3.8¡C±zÀ³¸Ó¦Ò¼{¨Ï¥Î¤@­Ó¸û·sªº¦Ó¥Bí©wªºµo§Gª©¥»¡A¦Ü¤Ö©Ò¥Îªºª©¥»À³¸Ó­n¤ñª©¥» 2.x ·s¡C³X°Ý OpenSSH Security ºô­¶¥HÀò±oÃö©ó¯S©wª©¥»ªº¯Ê³´ªº²Ó¸`¡C¨ì¥Ø«e¬°¤î¡AOpenSSH ¬O«D±`í©wªº¡A¦Ó¥B¤w¸gÃÒ©ú¤£¦s¦b¨ä¥L SSH ¤u¨ã©Ò³ø§iªº«Ü¦h¯Ê³´¡C

¦b shell ´£¥Ü²Å¤¤¡A¿é¤J ssh ¨Ãµ¹¥X­«­nªº V ¿ï¶µ¨ÓÀˬdª©¥»¸¹¡G
$ ssh -V
OpenSSH_3.5p1, SSH protocols 1.5/2.0, OpenSSL 0x0090701f

¦pªG ssh ªð¦^ªºª©¥»¸¹¤j©ó 2.x¡A«h¾÷¾¹³B©ó¬Û¹ï¨}¦nªºª¬ºA¡CµL½×¦p¦ó¡A«ØÄ³±z©Ò¦³ªº³nÅé³£¨Ï¥Î³Ì·sªºÃ­©wª©¥»¡A³o¹ï©ó¦w¥þ¬ÛÃöªº³nÅé¨Ó»¡¤×¨ä­«­n¡C

§Ú­Ìªº²Ä¤@­Ó¨BÆJ¬O¡A¨Ï¥Î±N·|¦³¯SÅv³X°Ý¦øªA¾¹ 1 ©M 2 ªº±b¸¹µn¿ý¨ìÂ÷½u¦sÀx¦øªA¾¹¾÷¾¹¡]¨£¹Ï 1¡^¡C
$ ssh accountname@somedomain.com

µn¿ý¨ìÂ÷½u¦sÀx¦øªA¾¹¥H«á¡A¨Ï¥Î ssh-keygen µ{¦¡¨Ãµ¹¥X -t dsa ¿ï¶µ¨Ó³Ð«Ø¤@­Ó¤½Æ_/±KÆ_¹ï¡C -t ¿ï¶µ¬O¥²¶·ªº¡A¥Î¨Ó«ü©w§Ú­Ì­n¥Í¦¨ªº±KÆ_Ãþ«¬¡C§Ú­Ì±N¨Ï¥Î¼Æ¦rñ¦Wºtºâªk¡]Digital Signature Algorithm¡ADSA¡^¡A¥¦Åý§Ú­Ì¥i¥H¨Ï¥Î§ó·sªº SSH2 ¨óij¡C°Ñ¾\ ssh-keygen ¤â¥U¥HÀò±o§ó¦h²Ó¸`¡C

¦b ssh-keygen °õ¦æªº¹Lµ{¤¤¡A¦b¸ß°Ý±z±K½X¡]passphrase¡^¤§«e¡A±N´£¥Ü±z¿é¤J ssh ±KÆ_¦sÀxªº¦ì¸m¡C·í¸ß°Ý¦b¦ó³B¦sÀx±KÆ_®É¥u»Ý­n«ö¤U¦^¨®Áä¡AµM«á ssh-keygen µ{¦¡±N³Ð«Ø¤@­Ó¦W¬° .ssh ªºÁôÂåؿý¡]¦pªG­ì¨Ó¤£¦s¦b¡^¡A¥H¤Î¨â­Ó¤å¥ó¡A¤@­Ó¤½Æ_¤å¥ó©M¤@­Ó¨pÆ_¤å¥ó¡C

ssh-keygen ªº¤@­Ó¦³½ì¯S©Ê¬O¡A·í´£¥Ü¿é¤J¤@­Ó±K½X®É¡A¥¦Åý±z¥i¥H¥u¬O²³æ¦a«ö¤U¦^¨®Áä¡C¦pªG±z¨S¦³µ¹¥X±K½X¡A¨º»ò ssh-keygen ±N¥Í¦¨¨S¦³¥[±Kªº±KÆ_!¦p±z©Ò·Q¡A³o¤£¬O­Ó¦n¥D·N¡C·í­n¨D¿é¤J±K½X®É¡A½T«O¿é¤J¤@­Ó¨¬°÷ªøªº¦r²Å®ø®§¡A³Ì¦n¥]§t²V¦X¦r²Å¦Ó¤£¶È¶È¬O¤@­Ó²³æªº±K½X¦r²Å¦ê¡C

²M³æ 3. ¥Ã»·¿ï¾Ü¦nªº±K½X

[offsite]:$ ssh-keygen -t dsa   Generating public/private dsa key pair.   

Enter file in which to save the key (/home/accountname/.ssh/id_dsa):

Enter passphrase (empty for no passphrase):

(enter passphrase)

Enter same passphrase again:

(enter passphrase)

Your identification has been saved in /home/accountname/.ssh/id_dsa.

Your public key has been saved in /home/accountname/.ssh/id_dsa.pub.

The key fingerprint is:

7e:5e:b2:f2:d4:54:58:6a:fa:6b:52:9c:da:a8:53:1b accountname@offsite

¥Ñ©ó ssh-keygen ¥Í¦¨ªº .ssh ¥Ø¿ý¬O¤@­ÓÁôÂ꺡§dot¡¨¥Ø¿ý¡A©Ò¥H­nµ¹ ls ©R¥O¶Ç¤J¤@­Ó -a ¿ï¶µ¨Ó¬d¬Ý·s³Ð«Øªº¥Ø¿ý¡G

[offsite]$ ls -a . .. .bash_logout .bash_profile .bashrc .emacs .gtkrc .ssh

¶i¤JÁôÂêº .ssh ¥Ø¿ý¨Ã¦C¥X¨ä¤º®e¡G

[offsite]$ cd .ssh [offsite]$ ls -lrt id_dsa id_dsa.pub

²{¦b¡A¦bÁôÂêº .ssh ¥Ø¿ý¤¤¡A§Ú­Ì¤w¸g¾Ö¦³¤F¤@­Ó¨pÆ_¡]id_dsa¡^©M¤@­Ó¤½Æ_¡]id_dsa.pub¡^¡C±z¥i¥H¨Ï¥Î vi ©Î emacs µ¥¤å¥»½s¿è¤u¨ã©ÎªÌ²³æ¦a¨Ï¥Î less ©Î cat ©R¥O¨Ó¤ÀªR¨C­Ó±KÆ_¤å¥óªº¤º®e¡C±z±N¬Ý¨ì¥Ñ²V¦X¦r²Åºc¦¨ªº¤º®e¤w¸g¸g¹L¤F base64 ½s½X¡C

µM«á¡A§Ú­Ì»Ý­n±N¤½Æ_«þ¨©¨Ã¦w¸Ë¨ì¦øªA¾¹ 1 ©M 2 ¤W¡C¤£­n¨Ï¥Î ftp¡C§ó¦X²zªº¬O¡A¨Ï¥Î¦w¥þ«þ¨©µ{¦¡¨Ó±N¤½Æ_¶Ç°e¨ì¨C¤@¥x»·µ{¾÷¾¹¤W¡C

²M³æ 4. ±N¤½Æ_¦w¸Ë¨ì»·µ{¦øªA¾¹¤W

[offsite]$ scp .ssh/id_dsa.pub accountname@server1.com:offsite.pub   

accountname@server1.com's password:

(enter password, not new passphrase!)

id_dsa.pub 100% |*****************************| 614 00:00

[offsite]$ scp .ssh/id_dsa.pub accountname@server2.com:offsite.pub

accountname@server2.com's password:

(enter password, not new passphrase!)

id_dsa.pub 100% |*****************************| 614 00:00

¦b¦w¸Ë§¹·sªº¤½Æ_«á¡A§Ú­Ì´N¥i¥H¨Ï¥Î³Ð«Ø¨pÆ_©M¤½Æ_®É«ü©wªº±K½X¨Óµn¿ý¨ì¨C¤@¥x¾÷¾¹¡C²{¦b¡Aµn¿ý¨ì¨C¥x¾÷¾¹¡A¨Ã±N offsite.pub ¤å¥óªº¤º®eªþ¥[¨ì¤@­Ó¦W¬° authorized_keys ªº¤å¥ó¤¤¡A³o­Ó¤å¥ó¦sÀx¦b¨C¥x»·µ{¾÷¾¹ªº .ssh ¥Ø¿ý¤U¡C§Ú­Ì¥i¥H¨Ï¥Î¤@­Ó¤å¥»½s¿è¾¹©ÎªÌ²³æ¦a¨Ï¥Î cat ©R¥O¨Ó±N offsite.pub ¤å¥óªº¤º®eªþ¥[¨ì authorized_keys ¤å¥ó¡G

²M³æ 5. ±N offsite.pub ²K¥[¨ì¤w±ÂÅv±KÆ_¦Cªí

[offsite]$ ssh accountname@server1.com   

accountname@server1.com's password:

(enter password, not new passphrase!)

[server1]$ cat offsite.pub >> ./ssh/authorized_keys

±µ¤U¨Óªº¨BÆJ¬O¦Ò¼{¤@¨ÇÃB¥~ªº¦w¥þ©Ê¡C­º¥ý¡A§Ú­Ì­×§ï .ssh ªº³X°Ý³\¥iÅv¡A¥H¨Ï±o¥u¦³©Ò¦³ªÌ¦³Åª¡B¼g©M°õ¦æªº³\¥iÅv¡CµM«á¡A§Ú­Ì½T«O authorized_keys ¤å¥ó¥u¯à¥Ñ©Ò¦³ªÌ¨Ó³X°Ý¡C³Ì«á¡A±N¥ý«e¤W¶Çªº offsite.pub ±KÆ_¤å¥ó§R°£¡A¦]¬°¦A¤]¤£»Ý­n¥¦¤F¡C½T«O³]¸m¾A·íªº³X°Ý³\¥iÅv«Ü­«­n¡A¦]¬° OpenSSH ¦øªA¾¹¥i¯à·|©Úµ´¨Ï¥Î¨ã¦³¤£¦w¥þ³X°Ý³\¥iÅvªº±KÆ_¡C

²M³æ 6. ¨Ï¥Î chmod ­×§ï³\¥iÅv

[server1]$ chmod 700 .ssh   

[server1]$ chmod 600 ./ssh/authorized_keys

[server1]$ rm offsite.pub [server1]$ exit

¦b¦øªA¾¹ 2 ¤W§¹¦¨¦P¼Ëªº¨BÆJ«á¡A§Ú­Ì´N¥i¥Hªð¦^¨ìÂ÷½u¦sÀx¾÷¾¹¤W¨Ó´ú¸Õ·sªº±K½XÃþ«¬ªº³X°Ý¡C¦bÂ÷½u¦øªA¾¹¤W±z¥i¥H¿é¤J¤U­±ªº¤º®e¡G
[offsite]$ ssh -v accountname@server1.com

¦bÀËÅç±zªº±b¸¹²{¦b¥i¥H¨Ï¥Î·sªº±K½X¦Ó¤£¬O­ì¨Óªº±K½X¨Ó³X°Ý»·µ{ªº¦øªA¾¹®É¡A¨Ï¥Î -v ©Î verbose ¼Ð°O¿ï¶µ¨ÓÅã¥Ü½Õ¸Õ¸ê°T¡C½Õ¸Õ¿é¥X°£¤F¯àÅý±z¦b¤@­Ó°ªªº¼h­±¤WÆ[¹î¨ì»{ÃÒ¹Lµ{¬O¦p¦ó¤u§@ªº¤§¥~¡AÁÙ¥i¥HÅã¥Ü¥X±z¥i¥H¥H¨ä¥L¤è¦¡µLªk±o¨ìªº­«­n¸ê°T¡C¦b¥H«áªº³s±µ¤¤±z¥i¯à¨Ã¤£»Ý­n«ü©w -v ¼Ð°O¡F¦ý¬O¦b´ú¸Õ³s±µ®É¥¦¬Û·í¦³¥Î¡C

ª`¡G¦pªG¥Í¦¨±KÆ_¹ïªº®É­Ô¿é¤Jªº±K½X¬°ªÅ¡A¨º»ò³s±µªº®É­Ô¤£»Ý­n¿é¤J±K½X¡C

¨Ï¥Î ssh-agent ¦Û°Ê¤Æ¾÷¾¹³X°Ý

¡@¡@ssh-agent µ{¦¡¦p¦P¤@­Ó¬Ýªù¤H¡A¥¦®Ú¾Ú»Ý­n¦w¥þ¦a´£¨Ñ¹ï¦w¥þ±KÆ_ªº³X°Ý¡Cssh-agent ±Ò°Ê«á¡A¥¦´N·|¦b«á»O¹B¦æ¡A¨Ã¥B¥i¥H¥Ñ ssh ©M scp µ{¦¡µ¥¨ä¥L OpenSSH À³¥Îµ{¦¡©Ò¨Ï¥Î¡C³o´N¨Ï±o ssh µ{¦¡¥i¥H½Ð¨D¤@­Ó¤w¸g¸Ñ±K¤Fªº±KÆ_¡A¦Ó¤£¬O¦b¨C¦¸»Ý­n®É¦V±z¸ß°Ý¨pÆ_ªº¦w¥þ±K½X¡C

Åý§Ú­Ì¨Ó¥J²Ó¬ã¨s¤@¤U ssh -agent¡Cssh-agent ¹B¦æ®É¥¦·|¿é¥X shell ©R¥O¡G

¡@¡@²M³æ 7. ssh-agent À³¥Î

[offsite]$ ssh-agent   

SSH_AUTH_SOCK=/tmp/ssh-XX1O24LS/agent.14179;

export SSH_AUTH_SOCK; SSH_AGENT_PID=14180;

export SSH_AGENT_PID; echo Agent pid 14180;



¡@¡@§Ú­Ì¥i¥H¨Ï¥Î shell ªº eval ©R¥O¨ÓÅý shell °õ¦æ ssh-agent Åã¥Üªº¿é¥X©R¥O¡G

[offsite]$ eval `ssh-agent` Agent pid 14198



¡@¡@eval ©R¥O§i¶D shell ¥hµû»ù¡]°õ¦æ¡^ssh-agent µ{¦¡¥Í¦¨ªº©R¥O¡C½T«O±z«ü©wªº¬O¤Ï¤Þ¸¹¡]`¡^¦Ó¤£¬O³æ¤Þ¸¹¡I°õ¦æ«á¡Aeval `ssh-agent` »y¥y±Nªð¦^¥N²zªº¶iµ{¼ÐÃѲšC¦b¹õ«á¡ASSH_AUTH_SOCK ©M SSH_AGENT_PID shell ÅܼƤw¸g³Q¾É¥X¦Ó¥i¥H¨Ï¥Î¡C±z¥i¥H±N¥¦­ÌÅã¥Ü¦b shell ±±¨î¥x¤¤¨Ó¬d¬Ý¥¦­Ìªº­È¡G

[offsite]$ echo $SSH_AUTH_SOCK /tmp/ssh-XX7bhIwq/agent.14197



¡@¡@$SSH_AUTH_SOCK ¡]SSH Authentication Socket ªºÁY¼g¡^¬O¤@­Ó¥»¦a®M±µ¦rªº¦ì¸m¡AÀ³¥Îµ{¦¡¥i¥H³q¹L¥¦¨Ó»P ssh-agent ³q«H¡C±N eval `ssh-agent` »y¥y¥[¤J¨ì±zªº ~/.bash_profile ¤å¥ó¥H½T«O SSH_AUTH_SOCK ©M SSH_AGENT_PID ©l²×³Qµù¥U¡C
ssh-agent ²{¦b´N¤w¸g¦¨¬°¤@­Ó«á»O¶iµ{¡A¥i¥H¥Î top ©M ps ©R¥O¬d¬Ý±o¨ì¡C

¡@¡@²{¦b§Ú­Ì´N¤w¸g¥i¥H¨Ï¥Î ssh-agent ¦@¥Î§Ú­Ìªº±K½X¡C¬°¦¹¡A§Ú­Ì¥²¶·¨Ï¥Î¤@­Ó¦W¬° ssh-add ªºµ{¦¡¡A³o­Óµ{¦¡±N§Ú­Ìªº±K½X²K¥[¡]µo°e¡^¨ì¹B¦æµÛªº ssh-agent µ{¦¡¡C

¡@¡@²M³æ 8. ¥Î©ó§K±K½Xµn¿ýªº ssh-add


[offsite]$ ssh-add

Enter passphrase for /home/accountname/.ssh/id_dsa:

(enter passphrase)

Identity added: /home/accountname/.ssh/id_dsa

(/home/accountname/.ssh/id_dsa)



¡@¡@²{¦b¡A·í§Ú­Ì³X°Ý server1 ®É¡A¤£·|¦A³Q´£¥Ü¿é¤J±K½X¡G
[offsite]$ ssh accountname@server1.com
[server1]$ exit

¡@¡@¦pªG±zÁÙ¤£¬Û«H¡A¨º»ò¹Á¸Õ¥h±¼¡]kill -9¡^ssh-agent ¶iµ{¡AµM«á­«·s³s±µ server1¡C³o¤@¦¸¡A±z±Nª`·N¨ì¡Aserver1 ±N·|¸ß°Ý¦sÀx¦b


.ssh ¥Ø¿ý¤U id_dsa ¤¤ªº¨pÆ_ªº±K½X¡G

[offsite]$ kill -9 $SSH_AGENT_PID

[offsite]$ ssh accountname@server1.com

Enter passphrase for key '/home/accountname/.ssh/id_dsa':



¡@¡@¨Ï¥Î keychain ²¤Æ±KÆ_³X°Ý

¡@¡@¨ì²{¦b¬°¤î¡A§Ú­Ì¤w¸g¤F¸Ñ¤F´X­Ó OpenSSH µ{¦¡¡]ssh¡Bscp¡Bssh-agent ©M ssh-add¡^¡A¦Ó¥B§Ú­Ì¤w¸g³Ð«Ø¨Ã¦w¸Ë¤F¨pÆ_©M¤½Æ_¨Ó±Ò¥Î¤@­Ó¦w¥þ¦Ó¥B¦Û°Êªºµn¿ý¹Lµ{¡C±z¥i¯à¤w¸g·NÃѨì¡A¤j³¡¤À³]¸m¤u§@¥u»Ý­n¶i¦æ¤@¦¸¡C¨Ò¦p¡A³Ð«Ø±KÆ_¡B¦w¸Ë±KÆ_¡B³q¹L .bash_profile °õ¦æ ssh-agent ªº¹Lµ{¦b¨C¥x¾÷¾¹¥u»Ý­n¶i¦æ¤@¦¸¡C¨º¯u¬O¦n®ø®§¡C

¡@¡@¤£¤Ó²z·Qªº®ø®§¬O¡A§Ú­Ì¨C¦¸µn¿ý¨ìÂ÷½uªº¾÷¾¹¤W®É¡A³£¥²¶·½Õ¥Î ssh-add¡A¦Ó¥B¡Assh-agent »P§Ú­Ì±N­n¥Î¨Ó¦Û°Ê¤Æ³Æ¥÷¤u§@ªº cron ½Õ«×¶iµ{¨Ã¤£ª½±µ¬Û®e¡Ccron ¶iµ{¤£¯à»P ssh-agent ³q«Hªº­ì¦]¬O¡Acron §@·~¬O§@¬° cron ªº¤l¶iµ{¨Ó°õ¦æ¡A³o¼Ë¥¦­Ì´N¤£·|Ä~©Ó $SSH_AUTH_SOCK shell ÅܼơC

¡@¡@©¯¹Bªº¬O¡A¦³¤@­Ó¸Ñ¨M¤è®×¤£¦ý¥i¥H®ø°£ ssh-agent ©M ssh-add ªº§½­­¡A¦Ó¥B¥i¥HÅý§Ú­Ì¨Ï¥Î cron ¨Ó¦Û°Ê¶i¦æ¦UºØ»Ý­n¹ï¨ä¥L¾÷¾¹¶i¦æ¦w¥þ¦aµL±K½X³X°Ýªº¹Lµ{¡C¦b¥L 2001 ¦~µoªíªº¤T½g developerWorks ¨t¦C¤å³¹¤¤¡A§Y OpenSSH key management¡ADaniel Robbins ¤¶²Ð¤F¤@­Ó¦W¬° keychain ªº shell ¸}¥»¡A¥¦¬O ssh-add ©M ssh-agent ªº¤@­Ó«eºÝ¡A²¤Æ¤F¾ã­ÓµL±K½Xªº¹Lµ{¡CÀHµÛ®É¶¡ªº¹L¥h¡Akeychain ¸}¥»¤w¸g¸g¾ú¤F«Ü¦h§ï¶i¡A²{¦b¥Ñ Aron Griffis ºûÅ@¡A¨ä³Ì·sªº 2.3.2-1 µo§Gª©¥»¤½¥¬©ó 2004 ¦~ 6 ¤ë 17 ¤é¡C

¡@¡@keychain shell ¸}¥»¤Óªø¥H­P¤_µLªk¦b¥»¤å¤¤¦C¥X¡A¦]¬°ºë¤ß½s¼gªº¸}¥»¤¤¥]¬A¤F«Ü¦h¿ù»~ÀË´ú¡BÂ×´Iªº¤åÀÉ¥H¤Î«D±`¦hªº¸ó¥­»O¥N½X¡C¤£¹L¡Akeychain ¥i¥H¦Û¶µ¥Øªº Web ¯¸ÂI¤W¤è«K¦a¤U¸ü±o¨ì¡C

¡@¡@¤U¸ü¨Ã¦w¸Ë¤F keychain «á¡A¨Ï¥Î¥¦´N«Ü²³æ¤F¡C¥u»Ý­nµn¿ý¨ì¨C¥x¾÷¾¹¨Ã±N¤U­±¨â¦æ²K¥[¨ì¨C­Ó .bash_profile ¤å¥ó¡G
keychain id_dsa
. ~/.keychain/$HOSTNAME-sh

¡@¡@¦b±z²Ä¤@¦¸­«·sµn¿ý¨ì¨C¥x¾÷¾¹®É¡Akeychain ±N¦V±z¸ß°Ý±K½X¡C¤£¹L¡A°£«D¾÷¾¹³Q­«·s±Ò°Ê¡A§_«h¡A¥H«á¦Aµn¿ý®É¡Akeychain ±N¤£·|¦A­n¨D±z­«·s¿é¤J±K½X¡C³Ì¦nªº¬O¡Acron ¥ô°È²{¦b¥i¥H¨Ï¥Î OpenSSH ©R¥O¨Ó¦w¥þ¦a³X°Ý»·µ{ªº¾÷¾¹¡A¦Ó¤£»Ý­n¥æ¤¬¦a¨Ï¥Î±K½X¡C§ó¦nªº¦w¥þ©M§ó®e©öªº¨Ï¥Î¡A²{¦b§Ú­Ì¤w¸g­Ý±o¡C

¡@¡@²M³æ 9. ¦b¨C¥x¾÷¾¹¤Wªì©l¤Æ

KeyChain 2.3.2; http://www.gentoo.org/projects/keychain   

Copyright 2002-2004 Gentoo Technologies, Inc.;

Distributed under the GPL

* Initializing /home/accountname/.keychain/localhost.localdomain-sh

file...

* Initializing /home/accountname/.keychain/localhost.localdomain-csh

file... * Starting ssh-agent

* Adding 1 key(s)...

Enter passphrase for /home/accountname/.ssh/id_dsa:

(enter passphrase)


¡@¡@¸}¥»¤Æ³Æ¥÷¹Lµ{

¡@¡@§Ú­Ìªº¤U¤@­Ó¥ô°È¬O³Ð«Ø°õ¦æ¥²­nªº³Æ¥÷¹Lµ{ªº shell ¸}¥»¡C¥Ø¼Ð¬O°õ¦æ¦øªA¾¹ 1 ©M 2 ªº§¹¥þ¼Æ¾Ú®w³Æ¥÷¡C¦b§Ú­Ìªº¨Ò¤l¤¤¡A¨C­Ó¦øªA¾¹³£¹B¦æµÛ MySQL ¼Æ¾Ú®w¦øªA¾¹¡A§Ú­Ì¨Ï¥Î mysqldump ©R¥O¦æ¤u¨ã¨Ó±N¤@¨Ç¼Æ¾Ú®wªí¾É¥X¨ì¤@­Ó SQL ¿é¤J¤å¥ó¤¤¡C

¡@¡@²M³æ 10. ¦øªA¾¹ 1 ªº dbbackup.sh shell ¸}¥»

#!/bin/sh   

# change into the backup_agent directory where data files are stored.

cd /home/backup_agent

# use mysqldump utility to export the sites database tables

mysqldump -u sitedb -pG0oDP@sswrd --add-drop-table sitedb --tables

tbl_ccode tbl_machine tbl_session tbl_stats > userdb.sql

# compress and archive tar czf userdb.tgz userdb.sql



¡@¡@¦b¦øªA¾¹ 2 ¤W¡A§Ú­Ì±N³]¸m¤@­ÓÃþ¦üªº¸}¥»¨Ó³Æ¥÷¯¸ÂI¼Æ¾Ú®w¤¤µ¹¥Xªº¿W¦³ªí³æ¡C¨C­Ó¸}¥»³£³q¹L¤U­±ªº¨BÆJ¼Ð°O¬°¥i°õ¦æªº¡G
[server1]:$ chmod +x dbbackup.sh

¡@¡@¦b¦øªA¾¹ 1 ©M 2 ¤W³]¸m¤F dbbackup.sh «á¡A§Ú­Ìªð¦^¨ìÂ÷½uªº¼Æ¾Ú¦øªA¾¹¡A¦b¨ºùاڭ̱N³Ð«Ø¤@­Ó shell ¸}¥»¨Ó½Õ¥Î¦U­Ó»·µ{ dbbackup.sh ¸}¥»¨ÃÀH«á¶Ç¿éÀ£ÁYªº¡].tgz¡^¸ê®ÆÀɮסC

¡@¡@²M³æ 11. ¥Î¦bÂ÷½uªº¼Æ¾Ú¦øªA¾¹¤Wªº backup_remote_servers.sh shell ¸}¥»

#!/bin/sh   

# use ssh to remotely execute the dbbackup.sh script on server 1

/usr/bin/ssh backup_agent@server1.com "/home/backup_agent/dbbackup.sh"

# use scp to securely copy the newly archived userdb.tgz file

# from server 1. Note the use of the date command to timestamp

# the file on the offsite data server. /usr/bin/scp

backup_agent@server1.com:/home/backup_agent/userdb.tgz

/home/backups/userdb-$(date +%Y%m%d-%H%M%S).tgz

# execute dbbackup.sh on server 2 /usr/bin/ssh

backup_agent@server2.com "/home/backup_agent/dbbackup.sh"

# use scp to transfer transdb.tgz to offsite server.

/usr/bin/scp

backup_agent@server2.com:/home/backup_agent/transdb.tgz

/home/backups/transdb-$(date +%Y%m%d-%H%M%S).tgz


¡@¡@backup_remote_servers.sh shell ¸}¥»¨Ï¥Î ssh ©R¥O¨Ó°õ¦æ»·µ{¦øªA¾¹¤Wªº¸}¥»¡C¥Ñ©ó§Ú­Ì¤w¸g³]¸mªºµL±K½Xªº³X°Ý¡Assh ©R¥O¥i¥H³q¹LÂ÷½uªº¦øªA¾¹¦b¦øªA¾¹ 1 ©M 2 ¤W»·µ{¦a°õ¦æ©R¥O¡C·PÁ keychain¡A¾ã­Ó»{ÃÒ¹Lµ{²{¦b¥i¥H¦Û°Ê§¹¦¨¡C

¡@¡@½Õ«×

¡@¡@§Ú­Ìªº¤U¤@­Ó¨BÆJ¡A¤]¬O³Ì«á¤@­Ó¨BÆJ¡A¬O½Õ«× backup_remote_servers.sh shell ¸}¥»¦bÂ÷½uªº¼Æ¾Ú¦sÀx¦øªA¾¹¤Wªº°õ¦æ¡C§Ú­Ì±N¦V cron ½Õ«×¦øªA¾¹¤¤²K¥[¨â­Ó±ø¥Ø¡A¥H­n¨D¨C¤Ñ°õ¦æ³Æ¥÷¸}¥»¨â¦¸¡A3:34 °õ¦æ¤@¦¸¡A8:34 ¦A°õ¦æ¤@¦¸¡C¦bÂ÷½uªº¦øªA¾¹¤W¨Ï¥Î edit¡]-e¡^¿ï¶µ½Õ¥Î crontab µ{¦¡¡C
[offsite]:$ crontab -e

¡@¡@crontab ½Õ¥Î VISUAL ©Î EDITOR shell Àô¹ÒÅܼƩҫü©wªºÀq»{ªº½s¿è¾¹¡CµM«á¡A¿é¤J¨â­Ó±ø¥Ø¨Ã«O¦s©MÃö³¬¤å¥ó¡C

¡@¡@²M³æ 12. Â÷½uªº¦øªA¾¹¤Wªº Crontab ±ø¥Ø
34 3 * * * /home/backups/remote_db_backup.sh
34 20 * * * /home/backups/remote_db_backup.sh

¡@¡@¤@­Ó crontab ¦æ¥]¬A¨â­Ó¥D­n³¡¤À¡A®É¶¡ªí³¡¤À©M«á­±ªº©R¥O³¡¤À¡C®É¶¡ªí¤À¬°¦h­Ó°ì¡A¥Î¨Ó«ü©w¤@­Ó©R¥OÀ³¸Ó¦ó®É°õ¦æ¡G

¡@¡@²M³æ 13. Crontab ®æ¦¡


+---- minute

| +----- hour

| | +------ day of the month

| | | +------ month

| | | | +---- day of the week

| | | | | +-- command to execute

| | | | | |

34 3 * * * /home/backups/remote_db_backup.sh



¡@¡@ÀËÅç±zªº³Æ¥÷

¡@¡@±zÀ³¸Ó¹ï³Æ¥÷¶i¦æ¨Ò¦æ¦aÀˬd¡A¥H½T«Oµ{¦¡¥¿½T¶i¦æ¡C¦Û°Êµ{¦¡¥i¥H¨Ï·Ðº¾ªº¤u§@±o¨ìÁ×§K¡A¦ý¬O¥Ã»·¤£¯à¦]¦¹¦ÓÃi´k¡C¦pªG±zªº¼Æ¾Ú­È±o³Æ¥÷¡A¨º»ò¥¦¤]­È±o±z®É±`¶i¦æ©â¼ËÀˬd¡C

¡@¡@¦Ò¼{²K¥[¤@­Ó cron §@·~¨Ó´£¿ô±z¦Û¤v¦Ü¤Ö¨C­Ó¤ë¹ï³Æ¥÷¶i¦æ¤@¦¸Àˬd¡C¥t¥~¡A¸g±`­×§ï¦w¥þ±KÆ_¤]¬O¤@­Ó¦n¥D·N¡A¦P¼Ë±z¤]¥i¥H½Õ«×¤@­Ó cron §@·~¨Ó´£¿ô±z°µ³o¥ó¨Æ¡C

¡@¡@¥t¥~ªº¦w¥þ¨¾½d

¡@¡@­nÀò±o§ó°ªªº¦w¥þ©Ê¡A¥i¥H¦Ò¼{¦b¨C¥x¾÷¾¹¤W¦w¸Ë¨Ã°t¸m¤@­Ó¤J«IÀË´ú¨t²Î¡]ntrusion Detection System¡AIDS¡^¡A¤ñ¦p Snort¡C¥i¥H¹w¨£¡A·í¤J«I¥¿¦bµo¥Í©ÎªÌªñ´Áµo¥Í¹L®É¡AIDS ±N·|³qª¾±z¡CIDS ¨ì¦ì«á¡A±z±N¥i¥H²K¥[¨ä¥L¼h¦¸¤Wªº¦w¥þ¡A¤ñ¦p¹ï±zªº³Æ¥÷¶i¦æ¼Æ¦rñ¦W©M¥[±K¡C

¡@¡@GNU Privacy Guard¡]GnuPG¡^¡BOpenSSL ©M ncrypt µ¥¬y¦æªº¶}©ñ·½¥N½X¤u¨ã¥i¥H¤ä´©³q¹L shell ¸}¥»¹ï¦sÀɤå¥ó¶i¦æ¥[±K¡A¤£¹L¤£«ØÄ³¦b¨S¦³ IDS ´£¨ÑªºÃB¥~¼h¦¸«OÅ@ªº±¡ªp¤U³o¼Ë°µ¡C

¡@¡@µ²§ô»y

¡@¡@¥»¤å¦V±z®i¥Ü¤F¦p¦óÅý±zªº¸}¥»¦b»·µ{¦øªA¾¹°õ¦æ¥H¤Î¦p¦ó°õ¦æ¦w¥þ¦Û°Êªº¤å¥ó¶Ç¿é¡C§Ú§Æ±æ±z¯à¥Ñ¦¹±o¨ìÆF·P¦Ó¶}©l¦Ò¼{«OÅ@±z¦Û¤vªº­«­n¼Æ¾Ú¡A¨Ã¨Ï¥Î OpenSSH ©M Snort µ¥¶}©ñ·½¥N½X¤u¨ã¨Óºc«Ø·sªº¸Ñ¨M¤è®×¡C

¡]³d¥ô½s¿è¡G¶³¤l¡^


[ µoªíµû½× ] ¦rÅé[ ¤j¡B¤¤¡B¤p ] [ ¦C¦L ] [ ¶i¤J³Õ«È ] [ ¶i¤J½×¾Â ]  [ ±ÀÂ˵¹ªB¤Í ]
  ¡i¬ÛÃö¤å³¹¡j
¡P ºôºÞª`·N Linux¨t²Î­«­n§ó·sMandriva RC2 (09-25) ¡P Linux¨t²ÎIptablesªº±`¥Î¨¾¤õÀð°t¸m¤èªk (09-25)
¡P Linux§@·~¨t²Î¦w¸ËMonodevelop¶}µo¤u¨ã (09-25) ¡P ³Ð«Ø¥»¦aUbuntu Linux MirrorÃè¹³ªº¤èªk (09-25)
¡P ³¾­ôªºLinux¾Ç²ßµ§°O DNS¦øªA¾¹¬ÛÃöª¾ÃÑ (09-25) ¡P WinXP+Mac OS X+Linuxªº¦h§@·~¨t²Î¦w¸Ë (09-25)
¡P ¨t²ÎºÞ²z¡GLinux§@·~¨t²Îªº±K½X¯}¸Ñ¤j¥þ (09-25) ¡P Ubuntu Linux§@·~¨t²Î¤UªººI¹Ï³nÅéScrot (09-25)
¡P Linux©MWindows¦@¦sªº¼Ò¦¡¤U¤À°Ï­n¤p¤ß (09-25) ¡P ¹ê¥Î§Þ¥© ÅýNumlock¤pÁä½L«ü¥Ü¿O¶}¾÷´N«G (09-25)
  ¡i«È¤á»Ý¨D¤ÏõXªí¡j
* ©m¡@¡@¦W:
§ó¦h¸ê®Æ¡@ ¤F¸Ñ¤è®×¡@ »{ÃѼt°Ó
* ³æ¦ì¦WºÙ:
* Ápô¹q¸Ü:
* ¹q¤l¶l¥ó:
  ÁÉ­}±ÀÂË  
  ¤â¾÷¡P¸ê¶O ¡P·s«~¡P¾ÉÁÊ¡Pµû´ú¡P¤â¾÷¸ê¶O¡P¼e±a
¤â¾÷·j¯Á  ¿Õ°ò¨È N73 MOTO Z6
  IT²£«~ ¡Pµ§°O¥»¡P»O¦¡¾÷¡P¦øªA¾¹¡P¦C¦L¡P§ë¼v
IT²£«~·j¯Á 
  IT§Þ³N ¡P¶}µo¡PºôºÞ¡P¦w¥þ¡P¼Æ¾Ú®w¡P§@·~¨t²Î
  ¸ê°T¤Æ ¡P¼öÂI¡P±MÃD¡P³X½Í¡P¶g¥Z¡P¤è®×®×¨Ò
[¬F°È][¹q«H][ª÷¿Ä][¹A·~][»s³y·~][¤¤¤p¥ø·~]
[CIO][ERP][¨ó¦P][ITºÞ²z][¤¤¶¡¥ó][¹q¤l°Ó°È]
[¬Fµ¦][¦a¤è][±M®a][µû¦ô][Ãã¨å][³Õ«È][ªÀ°Ï]
¡P ±MÃD:¤@¸ôºZ³qºc·Q¦±¡X¡XÅý¥X¦æ¤£¦A¾D¹J°ô¨®
¡P CIO¤u§@¿Ë¾ú:¥ø·~ERP¿ï«¬¤£¯à©¿µø"¿ï¤HÃö"
¡P ºî­z¡G¸ê°T¤Æ«Ø³]µ¹¤¤°êºÊº»±a¨Óªº¦UºØÅܤÆ
¡P ª÷¿Ä·~­·ÀIºÞ²z©Mªk³W¿í±q¦³¤­ÂI»Ý¦Ò¼{ªº¦]¯À
¡P «OÀI·~CIOÃöª`:¸Ó¦p¦ó«Ø¥ß²Î¤@°ª®ÄªºCRMÅé¨t
¡P ½Õ¬dÅã¥Ü¡G¦h¼ÆCIO¹ïIT³W¹º¤´¦s¦b§x´b©M»~¸Ñ
  ³Õ«È¡P½×¾Â ¡P´¿¼C¬î¡P¶µ¥ß­è¡PJava¾Ç²ß¡PºôºÞ