���ݳs�u���A����ڭ̨ӻ��A�i�O�@���ܦ��Ϊ��u��ڡI�L�i�H���ڭ̧��K���z�D���C
���L�A��K�O��K�A�w���ʨ�ꤣ�ܦn����ҥH�A�~�n�S�O�j�դ@�U�o�Ӫ��N��ڡI
����O���ݳs�u���A��
�����A�ڭ̭n�����A�Ѥ@�U�A����O�y
���ݳs�u���A���z�H
�o�ӪF�誺�\�ର��H�ڷQ�A�z���Ӥw�gť�L�A�@�Ө}�n���������ҷ����A�@���}���
Internet �W�������A���A�W�A�L�i�H���ݭn�ù��B��L�B�ƹ��������t�ơA
�u�n�����D���O�BCPU�BRAM�B�w�ЦA�[�W�@���n�@�I�������d�A�åB�s�W
Internet �I�����I����z�n�ޱ��o���D�����ɭԡA�u�n�z�L�����s�u�i�ӡA�M��i�����ק�Y�i�I
�K�I�ҥH�o�A�o�ӮɭԥD���۵M���ݭn�P��]�ưաI
�H�����ӤH���ҡA�ثe�����z�j���C�B�K�����k�� Unix-Like �D���A
�o�ǥD�������b�P�@�Ӧa��A���G�b�n�x�W�U�B�I��������s���M�|�}�Q�o�G�A
�Ϊ̬O�ݭn�i��@���B�~���]�w���ɭԡA�O�_�������H�@�w�n��{���ܡH���M���ݭn�A
�u�n�z�L�����s�u��ӥD���W���A�N�i�H�i�����u�@�F�I�u���N�n���b�D���e���u�@�@�몺���P�r�֡I
^_^�I�o�N�O���ݳs�u���A���աI
���ݳs�u���A�����\����M�٤��u�p���I�|�ӨҤl�ӻ��G���z���u�@�ݭn�ϥΨ�
Linux ���j�j���sĶ�\��ɡA����z�@�w�ݭn Linux ��a�I�ӥB�̦n�O�B��t�ק֤@�I���D���A
�o�ӮɭԱz�i�H�N�z��s�dz̧֪����@���D���}��X�ӡA�]�w�@�U���ݳs�u���A���A���z���ǥͰաA
�Ϊ̬O��s�Ǫ��P���աA�i�H�z�L�o���������L�̶i���s���u�@�A�o�ӮɭԡA�z���D���N�i�H���h�H�i�����
Linux �B�⪺�\��աI
�b�����������@�ɸ̡A�ѩ�u�� Unix �����A�ӥB�ӤH�q���٤��y�檺�ɭԡA
�Q�n�ϥΤj���D���Ӷi��ƭȵ{�����B���(�b�ڭ̤u�{�ɡA����`�ϥ�
Fortran �o�@�����{���y���A�ܩ� C �y���h���ָI��)�A�N�ݭn�V�Ǯճ��ӽ� Unix �u�@�����b���A
�åB�H���ݳs�u�{���s�i�D���A�H�ϥ�
Unix ���귽�Ӷi��ڭ̪��ƭȼҦ��B��I�ҥH�աA���ӻ��ݳs�u���A�����]�w�A
���t�κz���O�ܭ��n���I�ר���j���u�@��������
Unix-Like �D���A�ѩ�ܦh�H���ݭn�ϥΨ�L���B��\��A�Ϊ̬O�L���sĶ�{��(
compiler )�Ӷi��B��A�o�ɪ����ݳs�u�N��έ��n�աI
����O�_�C�@���s�W Internet �W�����D�������ӭn�}�ݳs�u���\��O�H���ä��ɵM�A
�٬O�ݭn�w��z���D���Ӷi��W�����A�ڭ̩��U�����A���P�u�@���ӻ����G
���A������( Server )���s�u�{���G
�b�@��}����ں����A�Ȫ����A�����A�ѩ�}�A�ȥi��|���������n����T�A
�ӻ��ݳs�u�{���s�i�D������A�i�H�i�檺�u�@�S�Ӧh�F(�X�G�N���b�D���e���u�@�@��I)�A
�]�����ں��������ݳs�u�{���q�`�Ȱw��ֳ����t�κ��@�̶}��Ӥw�I
���D���n�A�_�h
Server �������D���ٯu������ij�}��s�u���A�ȩO�I
�H�������ҡA�ڪ��D�����ѤF�ڭ̬�s�Ǩϥ�
Mail �P Internet �W���� WWW �A�ȡA�p�G�٥D�ʴ��ѻ��ݳs�u���ܡA
����U�@���p�߳Q�J�I�A���i�N�˸����F�I�]���A�����ȶ}��y�ܤp����������z���t�κz���s�i�ӡA
��L�ӷ��� IP �@�ߩ�סI���\�ϥλ��ݳs�u���\��O�I
�u�@������( Workstation )���s�u�{���G
�ܩ�u�@�������p�N����A�����Ӥ@�ˤF�I�u�@���`�`�Ȱw�鷺�����X�ӨϥΪ̶}��Ӥw�A
�q�`�O���Ʊ�s�W Internet ���աI�ӥB�ҿת��u�@���۵M�N�O�ΨӰ��u���I
�Ҧp�������䤤�@�� Linux �N�O�M���ΨӶi��j�����ƭȼҦ��p��������ΡI
�o�ӮɭԪ����ݳs�u���A���i��N�o�n��h�H�ҰʤF�I
�]���u�@�����j�j�B��\��i�H���ܦh�H�@�P�ϥΥL���p���O�I�ӥB�]�i�H�K���C���q�����o�n�w��
compiler ���~�ҡI�n���D�A�Y�Ǥu�{�Ϊ� compiler �O���Q����
�����ǥi�ѵn�J�������H
����ثe���ݳs�u���A�����D�n���������ǡH�p�G�H��ܪ������Ӥ����A
�W����r�����P�ϧΤ�����ءC
�b��r�����n�J�譱�����A���A�D�n���H�y���X�z�ǰe��ƪ�
telnet ���A���A�ΥH�[�K�N�i��ʥ]�[�K�Ӷǰe�� SSH ���A���I���M telnet
�i�H�䴩�� client �ݳn�����h�A���L�ѩ�L�O�ϥΩ��X�Ӷǰe��ơA
�z����ƫܮe���D�즳�ߤH�h���^���I�ҥH��ӧڭ̳��I�~�j�a�h�ϥ�
SSH �o�@�سs�u�覡�A�ӱ˱� telnet �o�Ӥ�����w�����N�N�o�I
�ܩ�ϧΤ��������A���A���²�檺�� Xdmcp �A�[�] Xdmcp ��²��A
���L client �ݪ��n�����֡C�t�~�@�ڥثe�ܱ`�������A���A�N�O VNC (Virtual Network Computing)�A
�z�L VNC server/client �n��Ӷi��s���C�ϧΤ����̤j���u�I�O�y�ϧΡz�ڡI
���L�A�]���O�z�L�ϧΨӶǰe�A�ǿ骺��ƶq�۷����j�A�ҥH�t�P�w���ʳ����ݦҶq�C
�]���A�ڭ̶ȫ�ij�z�N�ϧΤ��������ݵn�J���A���}��b�������� (LAN) �N�n�F�I
����O�y���X�z�P�y�[�K�z����ƫʥ]�ǰe�Ҧ��O�H
������ telnet �ϥΩ��X�N������w���H�ҿת����X�N�O�G
�y
���ڭ̪���ƫʥ]�b�����W�y«�ɡA�Ӹ�ƫʥ]�����e����ƪ���l�榡�z�A
�ٰO�o�ڭ̦b
�����`�Ϋ��O���`�������Ъ� tcpdump �a�H
�ڭ̦b telnet �U�F�����O�P�K�X�����A���|�H���� ASCII ���榡�ǰe��D���ݡA
�ӥD���ݴN�ǥѳo�Ǹ�ƨӤU�F���O�C�p�G�o�Ǹ�ƫʥ]�b�g�L�Y��
broadcast �Ϊ̬O Router �ɡA�Q���ߤH�h���h�A����L�N�|���㪺���o�z����Ƴ�I
�ҥH�աA�U�@�z����ƫʥ]�̭��t���H�Υd��ơB�K�X�B�����T�{�����n��T�ɡA�O�_�ܦM�I�o�H�I
�]���A�ثe�ڭ̳q�`���Ʊ�ϥΥi�H�N�o�Ǧb�����W���]����ƥ[�K���N�A�H�W�[��Ʀb
Internet �W���ǰe���w���ʰڡI
���D telnet �O����ܡH�x�I���N�O�s�� BBS ���u��ܡH�S���I�L�T��]�O
BBS �n�������@�Ӧ��A���աI���L�o�̧ڭ̼Ȥ����� BBS �I telnet
�i�H���O���v�۷��y�[�����ݳs�u���A�����I�ӥB�䴩�L���n��]�۷����h�I�Ҧp���W��
netterm �N�����䴩�L�աI�s�u���᪺�ɭ��]�}�G�A�b client �ݪ�����ǿ�P��J�]�S�����D�I
�۷��������ΡI���L�A�L�̳·Ъ��a��N�O.....������w���Ӥw�ա�
���U�ڭ̽ͤ@�ͫ��ҰʻP�ϥ� telnet ���A���a�I
�w�ˡB�ҰʻP�����A��
�w�ˡG
��~�ӥѩ� telnet �O�H���X�b�ǿ骺���D�A�ҥH�b�s�� Linux �����W���A
�w�g���N
telnet �o�Ӧ��A���ư��b�y���o�W��z���~���A�]�N�O���A�ܦh Linux
distributions �w�]�O���w�� telnet ���A���L�A�b�C�ӥD�n�� Linux distributions
�٬O������
telnet �M��b���з������I�ҥH�z�n���X�쪩���СA�åB�w�˦n�L�N�i�H�ΰաI�p��T�{�O�_�w�g�w�ˤF
telnet �O�H��²�檺��k�N�O�ϥγ̼s�x�Q�ϥΪ� RPM �աI
[root@linux ~]# rpm -qa | grep telnet
telnet-0.17-31.EL4.3
telnet-server-0.17-31.EL4.3
# �W���O CentOS 4.x �w�]���M���C�p�G�O��L�� distribution�A
# �ɦW�i��|���Ӥ@�ˡ�i�Q�� yum �� apt ���覡�Ӧw�˳�I
|
�ݭn�S�O�d�N���O�A�p�G�n���� telnet �s�u�A�ȡA�q�`�ݭn�w�˨�� RPM ��G
- �@�ӬO telnet�A�o�ӮM�Ѫ��O telnet �Τ�ݪ��s�u�{���F
- �t�@�ӬO telnet-server �M��A�o�Ӥ~�O�u���� Telnet server �n���I
�p�G�䤣�� telnet-server ���ܡA�Ю��X�쪩���ШӦw�ˡA�Ϊ̪����ϥ� yum �a�I
�_�h�N�L�k�i��U�@�B���]�w�աI^_^
�ҰʻP�����G
�ٰO�o�y
������ Linux �p�е� -- ��¦�Dz߽g�z�̭���
�y
�{�ѪA��( daemon )�z���ӳ��`�a�H
�n�O�o super daemon ��I�]���ڭ̪�
telnet �N�O���b super daemon ���U���@��A�ȦӤw�I���өN�N�N�O���W�� xinetd �o�I
�b�Y���ª����M��W���]���ϥ� inetd ���A�Ұʪ��覡���I���Ӥ@�ˡA���L�t�����j�աI
�u�n���o���`�ѡA����N���|�����D�o�I�ҥH�����~�|�n�j�a��Ū��
Linux ��¦�g �աI
�Ұʪ��覡�N�O�G
- �N xinetd �̭����� telnet �����ض}�ҡA�M��
- ���s�Ұʤ@�� xinetd �N���\�աI
����p��}�� telnet �����ةO�H��²��A����Ӥ覡�G
- �ϥ� ntsysv ��
chkconfig�G
�ٰO�o Red Hat �t�C(�t CentOS)���M��̭��� ntsysv
�o�Ӧn�Ϊ��F��ܡH��F�A�b CentOS ���U���o��@�Ӧn�Ϊ��]�w�u��A�z�i�H�ϥ�
ntsysv
�X�{�����������A�N telnet �Ŀ�_�ӡA�M����U OK ���}�Y�i�o�I
- �ϥ� vi �ק�
/etc/xinetd.d/telnet �o���ɮסG
����p�G���O Red Hat �t�C�� Linux �t�ΩO�H�W�A ntsysv �]�u�O�ק� /etc/xinetd.d
�o�ӥؿ��U����ƦӤw�A�ҥH�ڭ̷��M�i�H��ʦۤv�ק�L�աI
[root@linux ~]# vi /etc/xinetd.d/telnet
service telnet
{
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.telnetd
log_on_failure += USERID
# disable = yes
disable = no
# �W�A��W���o���N���F�I�N disable �]�w�� no ���ܭn�ҰʡI
}
|
�]�w���}�Ҥ���A�۵M�N�O�n�ҰʰաA��责��
telnet
�O���b xinetd ���U���A�ҥH�۵M�u�n���s�Ұ� xinetd �N����N /etc/xinetd.d/ ���Y���]�w���sŪ�i���A
�ҥH���]�w�Ұʪ�
telnet �۵M�]�N�i�H�Q�ҰʰաI�ӱҰʪ��覡�]����ؤ覡�A�䤤 service �o�ӫ��O�Ȥ䴩�b
CentOS �P Mandriva ���U�A�ҥH�q�`�����٬O�H /etc/init.d ���U�� scripts
���Ұʪ��D�n��k�աI
�ȾA�X Red Hat �t�C / Mandriva �t�C���D���Ұʤ覡
[root@linux ~]# service xinetd restart
Stopping xinetd: [ OK ]
Starting xinetd: [ OK ]
�A�X�U�������D���Ұʤ覡
[root@linux ~]# /etc/init.d/xinetd restart
Stopping xinetd: [ OK ]
Starting xinetd: [ OK ]
# �Y�Ǫ����èS�� restart ���ﶵ�A�o�ӮɭԴN�ݭn�Gstop �A start �o�I
|
����n�ݦ��S���ҰʪA�ȩO�H���ݡH���]��²��աA�ٰO�o�ڭ̦b�e�X�����쪺�y
���� Linux port ���s�u �z���@���ܡH�ϥ�
netstat
�N�i�H�աI
[root@linux ~]# netstat -tlup
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 *:telnet *:* LISTEN 23817/xinetd
|
�ݨ�F�ܡH�S���A���� telnet �N�O�Ұʪ����ذաI����n�p�������O�H�����I
���N�u���O��²��աI�N�N��誺�B�J�A���@���A�ӱN�]�w�����ܤ@�U�Y�i�I�B�J�p�U�աI
�o�̦Ҥ@�Ӱ��D�A���� port �������A�ȦW�٦b���@���ɮ̭��d�ߨ쪺�O�H
�b�C�@�� Linux �t�γ������ɮ���I�ѰO�F�r�I�H�A�^��e���ݬ�
���� Linux port ���s�u �A
�M���
vi �h�ݬݨ��@���ɮת����e�a�I ^_^
Step 1: �ק�]�w��
[root@linux ~]# vi /etc/xinetd.d/telnet
service telnet
{
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.telnetd
log_on_failure += USERID
disable = yes <== �N�O�o�̰աI�N�L�令 yes �N�O�����I
}
Step 2: ���s�Ұ� xinetd �o�� super daemon
[root@linux ~]# /etc/init.d/xinetd restart
|
�n���s�u�n��
���W�����쪺���O�b���A���ݪ��]�w�Ӥw�I����b�Ȥ�ݦ�����n�Ϊ��n��i�H�s�W
Server ���O�H�̱`���쪺���ӴN�O netterm �o�ӹ����j�W���s�u�n��F�a�I
�ڷQ�A�u�n���L BBS ���j������o�o�ӳn��~��I�ҥH�o�̴N�����F�I
�t�~�A�ثe�X�G�Ҧ����@�~�t�γ����ѤF telnet �o�ӵ{���A�o�ӵ{���i�H�����������N�s�W
telnet server �O�I�Ҧp�z�n�b Linux �W���s�W�ۤv�� telnet ���A���A�i�H�o�˰��G
[root@linux ~]# telnet localhost
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
CentOS release 4.4 (Final)
Kernel 2.6.9-42.0.2.EL on an i686
login: dmtsai <== �N�O�o�̰աI�п�J�y�@��z�b���A����� root ��I
Password: <== �o�̿�J�ӱb�����K�X�I�Ъ`�N�A��J�ɡA�ù����|�������T�I
Last login: Fri Jul 1 09:31:21 from 127.0.0.1 <== �W���n�J����T����?
[dmtsai@linux ~]$ <== �o�̴N�O�w�g�n�J���a��I��Y���ݥD���F�I
[dmtsai@linux ~]$ exit <== �o�˴N������} telnet �P���ݥD�����I
|
�o�˴N�s�u�i�ӰաI��²��a�I����b Windows �����ҩ��U�O�H�P�˪��A�]�O�i�H�ϥ�
telnet ���{���s�u�� Linux �� telnet server �̭��ӡI�S�����D���աI�i�H�̧dzo�˰��G
- ���U Windows ���� �y�}�l�z
- ��� �y����z
- �b�X�{����������J �ytelnet your.IP.or.hostname�z
�o�˴N�i�H�i�J Linux �����Ҥ��F�I�ܤ�K�a�I���M�աI�z�]�i�H�ϥ�����
netterm �o�ӫܴΪ��s�u�n��ӳs�u���A�o�̧ڭ̴N���ܽd�աI
�b Linux tty1 ~ tty6 ���ݾ��w�]�Ҧ��U�A�ڭ̬O�S����k�ݨ줤�媺�I
���D�w�ˬY�ǯS�������夶���~��I��p JMCCE �������N�N�I
�]�����O�ܭ��n�A�ҥH�����o�̴N���[���ФF�C ^_^
�t�~�A�ݭn���d�N���O�A���F�t�Φw�����Ҷq�A
�w�]�� telnet
�O�y�����\�z�ϥ� root �o�ӱb���n�J����
�o�ӫܭ��n��I�z���n�ϥ� root ���յn�J telnet �ڡI ^_^
iptables, TCP_Wrappers, �«�ij
telnet �o�Ӧ��A����K�k��K�A��
�`�O�@�Ӥ��Ӧn���s�u�ѨM����A
�]�������L�O�@�ӥH�y���X�z�ǿ骺��w�A�ҥH�ܤ��A�X�b Internet �W���ϥΰաI
�A�`���Ʊ�A���b���K�X�b Internet �W���Q�Ѩ��a�H���L�A�p�G telnet �O�Ұʦb�������ҷ������N�٦n�աI
�ר䦳�ǪB�ͦ]���³n�骺���Y�A�٬O�ݭn�ϥΨ� telnet �ӳs�u�C����ڭ̴N���@�ǰ��`�N�ƶ��n�F�I
�H�������]�w�ɨӳW�d�s�u�� IP �G
�ƹ�W�A xinetd �N�w�g���Ѩdz\���O�@���I�F�A
�z�i�H�w��z�D�����h������(���鷺�H�ι�~��I)�Ӵ��Ѥ��P�O�@���Ū����I�I
���U�C�X�@�ӽd�ҡA���L�A��h����T�ЦA�^��y
������
Linux �p�е� -- ��¦�Dz߽g�z�����h�d�\�@�U
�y
�{�ѪA��
�z���@���̭����Բӳ]�w�����A�Ϊ̪��� man xinetd.conf �a�I
[root@linux ~]# vi /etc/xinetd.d/telnet
# This file had been modified by VBird 2002/11/04
# �����������������ѼƳ]�w
service telnet
{
disable = no
bind = 192.168.1.2
only_from = 192.168.1.0/24
# �W���o��满���ȴ��Ѥ�������I
instance = UNLIMITED
nice = 0
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/sbin/telnetd
server_args = -a none
log_on_failure += USERID
}
# �A�ӫh�O�w��~�����쪺�]�w
service telnet
{
disable = no
bind = 140.116.142.196
only_from = 140.116.0.0/16
no_access = 140.116.32.{10,26}
# �W���o�T��]�w�~�������Y�檺����
instance = 10 <==�̦h���\�P�� 10 �ӳs�u
umask = 022
nice = 10
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/sbin/telnetd
server_args = -a none
log_on_failure += USERID
}
|
root ���ઽ���H telnet �s���W�D���G
�J�M telnet ���O�ܦw���A�۵M�w�]�����p���U�N�O�L�k���\
root �H telnet �n�J Linux �D�����I���ƹ�W�A telnet
�u�O�Q�Τ@�Ǹ����w�������� (���N�O PAM �Ҳհ�) �Ө���
root �n�J�Ӥw��ҥH�o�A���p�z�T�w�z�����Ұ��w��(�Ҧp�z���D���èS���s�W
Internet )�A�åB�Q�n�}�� root �H telnet �n�J Linux �D�����ܡA�Ъ����N /etc/securetty
����ɦW�Y�i�I
[root@linux ~]# mv /etc/securetty /etc/securetty.bak
|
�o�ˤ@�ӡAroot �N�i�H�n�J�աI���L�A�۷�������ij�o�˰���I�������O�ܦw���աI���~�A�z�]�i�H�ǥѭק�
pam �ҲըӹF���P�˪��\��I�ק� /etc/pam.d/login �o���ɮת��ĤG��]�w�Y�i�G
[root@linux ~]# vi /etc/pam.d/login
#%PAM-1.0
#auth required pam_securetty.so <== �N�O�o�ˤ@��A�N�L���ѧY�i�I
auth required pam_stack.so service=system-auth
auth required pam_nologin.so
account required pam_stack.so service=system-auth
password required pam_stack.so service=system-auth
# pam_selinux.so close should be the first session rule
session required pam_selinux.so close
session required pam_stack.so service=system-auth
session required pam_loginuid.so
session optional pam_console.so
# pam_selinux.so open should be the last session rule
session required pam_selinux.so multiple open
|
�p���@�ӡA root �N�i�H�����i�J Linux �D���F�I���L�A�J�M�ڭ̥i�H�z�L su �� sudo �Ӥ��������A
����F���ٻݭn�}�� root �� telnet �n�J�D���O�H�u�O�S���n��ҥH�A
�٬O����ij�p�������I
�[�W������ iptables�G
�w�� telnet �[�]������ iptables �O�@�Ӧn�D�N�I�p�G�z�w�g�ѦҤF�e�����`���쪺�y
²��������[�] �z�@��A�åB�ϥθ̭���
scripts ���ܡA���ξ�� telnet �աI�W�A�L�쥻�N�ȹ鷺���}�� telnet
�A�~���O�L�k�s�W�z�� telnet ���I���O�A�Y�O�z�ۤv�]�w�F�ۤv������������A����Q�n�w��
192.168.0.0/24 �o�Ӻ���A�� 61.xxx.xxx.xxx �o�� IP �i�� telnet ���}��O�H�i�H�W�[�o�X��b�z��
iptables �W�h����(�Ъ`�N�G�����𪺳W�h���ǬO�ܭ��n���I�ҥH�A�^�Y�ݬ�
²��������[�] �@��O�����n���I)
iptables -A INPUT -p tcp -i $INIF -s 192.168.0.0/24 --dport 23 -j ACCEPT
iptables -A INPUT -p tcp -i $EXTIF -s 61.xxx.xxx.xxx --dport 23 -j ACCEPT
iptables -A INPUT -p tcp -i $EXTIF --dport 23 -j DROP
|
�W�����W�h���A$EXTIF �����O��~���s�u�����A$INIF �h�O�鷺�������C
�Ĥ@�B�G��O�w��ӷ��� IP �Ӷ}�� port 23 ��Y�O telnet ����w�աI
�ӳ̫�@��h�O�N��L���Ҧ��ӷ����A�Q�n�s�W
telnet ���s�u�ʥ]���ᱼ���N��I���ˡI��²��a�I
�[�W������ /etc/hosts.allow(deny) ����G
�����𪺾���O�V�h�V�n�I�û��]�����h���աI�o�̤]�i�H�ϥ� TCP_Wrappers
������O�I���O�}��F 192.168.0.0/24 �o�Ӻ��q�A���O�p�G�z�u�Q�n�䤤��
192.168.0.1 ~ 192.168.0.5 �i�J�O�H�Ө�L�� IP �u�n�@�g�s�u�A�N�|�Q�O����
IP �A�H���� root �d�ߩO�H�i�H�o�˰��G
[root@linux ~]# vi /etc/hosts.allow
in.telnetd: 192.168.0.1, 192.168.0.2, 192.168.0.3, 192.168.0.4
in.telnetd: 192.168.0.5
[root@linux ~]# vi /etc/hosts.deny
in.telnetd : ALL : spawn (/bin/echo Security notice from `/bin/hostname`; \
/bin/echo; /usr/sbin/safe_finger @%h ) | \
/bin/mail -s "%d -%h security" root@localhost & \
: twist ( /bin/echo -e "\n\nWARNING connectin not allowed. \n\n\n" )
|
��ij�ƶ��G
�ƹ�W�A telnet �̤j�����w���b���ƬO�H���X�ǿ�A�ҥH�b Internet
�o�Ӥj�a������s�W���a��Ӷǿ��ƮɡA��b�ܤ��w���I�ҥH�G
- �D���n�ɡA���n�Ұ� telnet �A�p�G�u���ݭn�Ұ� telnet
�A����]�Цb�ҰʨåB�ϥΧ�������A�ߧY�N�L�����I
- �p�G�T�w�u���n�Ұ� telnet �ɡA�нT�w�n����s�u�d��A�ϥ�
iptables �ӳ]�w�s�u������ϰ�F
- �[�W TCP_Wrappers �����U�A�[�j�����𪺥\��I
- �H�ɪ`�N�n���ɮ̭����� login ���ƶ��I�åB���n��
root ��H telnet �n�J Linux �D���I
�J�M telnet ����Ʀb Internet �W���O�ܦw���A����ڤS�ݭn�H���ݳs�u�A�ȨӾޱ��ڪ� Linux
�D���A�������ӫ���r�H�̦n����k���M�N�O�H�����w�����s�u����ӸѨM�s�u�����D�o�I
����Ӧp��ѨM�o�˪����D�O�H�o�]�����աA�ϥ�
SSH �Y�i�C���� SSH �O����O�H�L������S���\��H
²�檺�ӻ��A
SSH
�O Secure SHell protocol ��²�g�A�L�i�H�g�ѱN�s�u���ʥ]�[�K���N�A
�Ӷi���ƪ��ǻ��A�]���A��Ʒ��M�N����w���o�I�o��
SSH �i�H�ΨӨ��N Internet �W�������w���� finger, R Shell (rcp, rlogin,
rsh �����O), talk �� telnet ���s�u�Ҧ��C���U�ڭ̱N��²���@�U SSH ���s�u�Ҧ��A�ӻ���������
SSH �|����w���O�I
�S�O�`�N�G�o�� SSH ��w�A�b�w�]�����A���A�����N���Ѩ�Ӧ��A���\��G
- �@�ӴN�O���� telnet �����ݳs�u�ϥ� shell �����A���A��Y�O�U�٪� ssh �F
- �t�@�ӴN�O���� FTP �A�Ȫ� sftp-server �I���ѧ�w���� FTP �A�ȡC
�s�u�[�K�N²���G
����O�y��ƥ[�K�z�O�H²�檺���A�N�O�N�H�̬ݪ����o�q�l��ơA�g�L�@�ǹB��A
���o�Ǹ���ܦ��S���N�q��(�ܤֹ�H���ӻ�)�N�N�A�M��o�өN�N�i�H�b�����W���ǿ�A
�ӷ��ϥΪ̷Q�n�d�\�o�Ӹ�ƮɡA�A�z�L�ϦV�B��A�N�o�ǩN�N�ϱ��X��l���q�l��ơC
�ѩ�o�Ǹ�Ƥw�g�Q���s�B�z�L�A�ҥH�A�Y�ϸ�Ʀb Internet �W�Q cracker
��ť���Ѩ��A�L�̤]���e���N����o�X�ӭ�l��Ƥ��e���C
�����ʥ]���[�K�N�q�`�O�ǥѩҿת��y
�@�綠�_�P�p�_�z
��Y�y
Public and Private �զX���� key pair�z
�Ӷi��[�K�P�ѱK���ʧ@�I�p�U�ϩҥܡC�D���ݩҭn�ǵ� client �ݪ���ơA�|���g�Ѥ��_�[�K��~������W�ǿ�C
�Ө�F client �ݤ���A�A�g�Ѩp�_�N�[�K����ƸѶ}�ӡ�ѩ�b Internet �W���]����ƬO�[�K�L�᪺�A
�ҥH�A����Ƥ��e���M�N����w���աI

�Ϥ@�B���_�P�p�_�b�i���ƶǿ�ɪ�����ܷN��
��ƥ[�K���N�u���۷����h�A�]�U�����u���I�A�����B��t�ק֡A
���O�����w���F�������w���A���O�[�K/�ѱK���t���C��
�ثe�b SSH �ϥΤW�A�D�n�O�Q�� RSA/DSA/Diffie-Hellman �������I
����o�Ǥ��_�P�p�_�O�p�ͪ��O�H���U�ڭ̨ӽͤ@�ͥثe
SSH ����ت������s�u�Ҧ��o�I
SSH protocol version 1�G
�C�@�� SSH ���A���D�����i�H�ϥ� RSA �[�K�覡�Ӳ��ͤ@�� 1024-bit �� RSA Key �A
�o�� RSA ���[�K�覡�A�D�n�N�O�ΨӲ��ͤ��_�P�p�_���t���k�I�o��
version 1 ����ӳs�u���[�K�B�J�i�H²�檺�o��ݡG
- ���C�� SSH daemon (sshd) �ҰʮɡA�N�|���ͤ@�� 768-bit
�����_(�κ٬� server key)�s��b Server ���F
- �Y�� client �ݪ� ssh �s�u�ݨD�ǰe�ӮɡA���� Server �N�|�N�o�@�䤽�_�ǵ�
client �A���� client �]�|���@�U�o�䤽�_�����T�ʡC��諸��k���Q��
/etc/ssh/ssh_known_hosts �� ~/.ssh/known_hosts �ɮפ��e�C
- �b Client �����o�� 768-bit �� server key ����AClient �ۤv�]�|�H�����ͤ@��
256-bit ���p�_(host key)�A�åB�H�[�K���覡�N server key �P host key ��X���@�粒�㪺
Key pair�A�åB�N�o�� Key pair �]�ǰe�� server �F
- ����AServer �P Client �b�o�����s�u�����A�N�H�o�@�� 1024-bit �� Key pair �Ӷi���ƪ��ǻ��I
�]�N�O���APublic Key �O��b Server �W���A�� Client �ݪ��n�饲���n��� Public Key �H�έp��X
Private Key �H�զX�����@��W�@�L�G�� key pair �A�]�� Client �ݨC���� 256-bit �� Key
�O�H�������A�ҥH�z�o�����s�u�P�U�����s�u�� Key �i��N�|���@�˰աI���~�b Client �ݪ��ϥΪ̮a�ؿ��U��
~/.ssh/known_hosts �|�O�����g�s�u�L���D���� public key �A�ΥH�T�{�C���Ӧ۸ӥD�����s�u�O���T���C
�o�� ~/.ssh/known_hosts �ɮת��N�q�����ٷ|���Ъ��C
SSH protocol version 2�G
�b SSH version1 ���s�u�L�{�����A�� server �ݱ��� client �ݪ� private key ��A�N���A�w��Ӧ��s�u��
key pair �i������C���ɭY���c�N�� cracker �w��ӳs�u�����c�N���{���X�ɡA�ѩ�D���ݤ��|����s�u�����T�ʡA
�]���i��|�����ӵ{���X�A�i�@�B�y���t�γQ�±������D�C
���F�勵�o�ӯʥ��ASSH version 2 �h�[�F�@�ӽT�{�s�u���T�ʪ� Diffie-Hellman ����A
�b�C����ƪ��ǿ���� server �ݳ��|�H�Ӿ����ˬd��ƪ��ӷ��O�_���T�A
�ҥH�i�H�קK�s�u�L�{�����Q���J�c�N�{���X�����D�I
�]�N�O���A ssh version 2 �O����w������I
�ѩ� SSH version 1 �����s�b�۪��@�ǰ��D�A�]���A��ӧڭ̳��Ʊ�j�a�ϥ� ssh version 2 ���s�u�Ҧ��A
�|����w���@�I�C�ӳs�u�������]�w�h�ݭn�b ssh �D���ݻP�Ȥ�ݧ��]�w�n�~���I
�Ұ� SSH �A�ȡG
�ƹ�W�A�b�ڭ̨ϥΪ� Linux �t�η����A�w�]�N�w�g�t�� SSH ���Ҧ��ݭn���M��F�I
�o�]�t�F�i�H���ͱK�X����w��
OpenSSL
�M��P
OpenSSH
�M��A�ҥH�O�A�n�Ұ� SSH �u���O��²��F�I�N�������L�ҰʴN�O�F�I���~�A�b�ثe��
Linux Distributions �����A
���O�w�]�Ұ� SSH ���A
�ҥH�@�I�����·СA�]�����Υh�]�w�A�L�N�w�g�ҰʤF�I�z�I�u�O�n�֡�L�צp��A
�ڭ��٬O�o���@���o�ӱҰʪ��覡�a�I�����ҰʴN�O�H
SSH daemon �A²�٬� sshd �ӱҰʪ��A�ҥH�A��ʥi�H�o�˱ҰʡG
[root@linux ~]# /etc/init.d/sshd restart
[root@linux ~]# netstat -tlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 *:ssh *:* LISTEN 24266/sshd
|
�Ұʫ�A�Q��
netstat �d�\�@�U
sshd �o�ӵ{�ǬO�_���T���b LISTEN �Y�i�I���M�A�o�ӮɭԱz�� SSH ���A���]�w�ȧ��O�ϥΨt�ιw�]�ȡA
�ण����ȥθ��w���� version 2 �A�h�ݭn�i�@�B���]�w�O�C
���U�ӡA�p�G�z�Q�n�b�}���N�Ұ� SSH ����(�w�]�]�O�Ұʪ��I)�A�i�H�Q��
chkconfig
�ӳ]�w�}���ҰʧY�i�C
���M�s�� Linux distributions ���w�]�|�� SSH �s�b���A���O���ª������N�Ȧ� telnet �Ӥw�C
�Ҧp Red Hat 6.x ���e�������C����p�G�z�Q�n�b�ª� distributions �����w�� SSH �Ӧp��O�n�H
�K�K�I�i�H�ѦҤ@�U�������e�g�L���@�g�N�N�A���ԲӪ����� tarball ���w�ˬy�{���I
�ݭn�`�N���O�A SSH �������ѤF shell ���ڭ̨ϥΡA��Y�O ssh protocol
���D�n�ت��A�P�ɥ紣�ѤF�@�Ӹ����w���� FTP server �A��Y�O ssh-ftp server
���ڭ̷����O FTP �ӨϥΡI�ҥH�A
�o�� sshd �i�H�P�ɴ���
shell �P ftp ��I�ӥB���O�[�c�b port 22 �W�����O�I�ҥH�A���U�ڭ̴N�Ӵ��@���A������˥�
Client �ݳs���W Server �ݩO�H�P�ɡA�p��H FTP ���A�Ȩӳs���W Server �åB�ϥ�
FTP ���\��O�H
ssh �Τ�ݳs�u�G
�ѩ� Linux �P Windows �o��ӥΤ�� Client �s�u�n��/���O�ä��@�ˡA�ҥH�ڭ̤��O�Ӥ��Хi�H�ϥΪ����O�G
Linux Client: ssh
SSH �b client �ݨϥΪ��O ssh �o�ӫ��O�A�o�ӫ��O�i�H���w�s�u������ (version1, version2)�A
�٥i�H���w�D���W�� ssh port (���W ssh port �� 22)�C���L�A�@�몺�Ϊk�i�H�ϥΩ��U���覡�G
1. �����n�J����D������k�G
[root@linux ~]# ssh account@hostname
# �s����ڭ̦ۤv�����W���� ssh �A�ȡI��h�T���A�� man ssh ��I
[root@linux ~]# ssh dmtsai@localhost
The authenticity of host 'localhost (127.0.0.1)' can't be established.
RSA key fingerprint is f8:ae:67:0e:f0:e0:3e:bb:d9:88:1e:c9:2e:62:22:72.
Are you sure you want to continue connecting (yes/no)? yes
# �W���ܭ��n��I�ȥ���J���㪺 "yes" �Ӥ��O Y �� y �Ӥw�C
Warning: Permanently added 'localhost' (RSA) to the list of known hosts.
dmtsai@localhost's password: <== �b�o�̶�J�K�X�A�P�˪��A�ù����|���T�����I
Last login: Fri Jul 1 14:23:27 2005 from localhost.localdomain
[dmtsai@linux ~]$ <== �@�I�w�g�n�J�o��
[dmtsai@linux ~]$ exit <== ��J exit �N������}���D���o�I
2. ���n�J���D���A�����b���D��������O����k�G
[root@linux ~]# ssh dmtsai@localhost date
dmtsai@localhost's password:
Tue Nov 22 11:57:27 CST 2005
[root@linux ~]#
# �ݡI�����٬O root ��I�u�O�H dmtsai �������b���ݥD���W����F�@�ӫ��O�Ӥw�I
|
�o�̽ЯS�O�d�N���O�A�p�G�����H�y
ssh hostname
�z�o�ӫ��O�ӳs���i�J hostname �o�ӥD���ɡA�h
�i�J hostname
�o�ӥD�����y�b���W�١z�N�|�O�ثe�z�Ҧb���o�����ҷ������ϥΪ̱b���I
�H�W�����ҡA�]���ڬO�H root �������b����A�ҥH�p�G�ڰ���F�y ssh host.domain.name �z�ɡA
������ host.domain.name �o���D���A�N�|�H root �����������ڶi��K�X�T�{���n�J�ʧ@�I
�]���A���F�קK�o�˪��·СA�q�`�������O�H²�檺 e-mail ���g�k�ӵn�J���誺�D���A
�Ҧp�y
ssh user@hostname �z�Y���ܡA
�����O�H user �o�ӱb���h�n�J hostname �o���D�����N��C���M�A�]�i�H�ϥ�
-l username �o�˪��Φ��ӮѼg�I�n�J���D������A��L���Ҧ�����欰����b
Linux �D�����S����ˡ�ҥH�A�u���O��²��a�I ^_^ �o�˴N�i�H�F�컷�ݱ��ޥD�����ت��F�I
���~�A
�b�w�]�����p�U�A SSH �O�y���\�z�H root �������n�J�z��
�I�����I��O�n�ְաI�n�S�O�d�N���O�A���z�n�s�����誺�D���ɡA�p�G�O�����s���A����
Server �|�ݱz�A�z���s�u�� Key �|���Q�إߡA�n���n���� Server �ǨӪ� Key
�A�ëإ߰_�s�u�O�H�����I�o�ӮɭԽСy
�ȥ��n��J yes
�Ӥ��O y �� Y�z�A�o�˵{���~�|������I
���� Server Keys ��������ơG ~/.ssh/known_hosts
�p�G�z��観��s�L SSH ���s�u�y�{���ܡA�|�o�{��� client �ݱ����Ӧ� server �ݪ�
public key ����A�|�D�ʪ����o�� Key �����T�ʡC�Ӥ�諸�ɮO ~/.ssh/known_hosts �C
�Y�O�����쪺�o�� public key �èS���Q�����b�o�ɮפ��A����W�����檺�T���A
�N�O�n�z�^�� yes/no �����ӰT���~�|�X�{��ӱz�^�� yes ����A�� public key
��T�N�|�Q�O���_�ӡA�H�d�ݤU���n�J�P�@���D���ɪ��ˬd���ΰڡI
�p�G Server Key �P ~/.ssh/known_hosts ��令�\�A
����z�N�|�����i�J���ݱK�X��J���e���A
���N�����C�����o�n��J (yes/no) �o��
���L�A�z�γ\�]�|�o�{�@��Ʊ��ڡA�ڭ̪��D SSH server ���M�ϥ� version 2 �w�g���|���ƻs�y
server key (public key) �F�A���O�p�G�ӥD�����s�w�˹L�s�� linux distributions �ɡA
���� server key �N�|�Q���ܰڡI�� client �S�|�h���o�� public key �P ~/.ssh/known_hosts �A
���� Client �N�|�o�{��̤��P�F�A��O�G���ͦp�U�����~�T���F�G
[root@linux ~]# ssh dmtsai@localhost
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
f8:ae:67:0e:f0:a0:3e:aa:d9:77:19:c9:2e:62:22:72.
Please contact your system administrator.
Add correct host key in /root/.ssh/known_hosts to get rid of this message.
Offending key in /root/.ssh/known_hosts:1
RSA host key for localhost has changed and you have requested strict checking.
Host key verification failed.
|
�o�ӿ��~�T���b�i�D�z�A�W���ҵn�������� SSH �D���� Keys
�w�g�Q��L�F(�̥i���]�N�O Server �ݭ��s�}��/���s�w��/��s�M���աI)�A
�ҥH�L�k�~��n�J������I�o�Ӯɭԫ���H��²��ڡI
�i�J�z���a�ؿ���
~/.ssh �̭��A�s��@�U known_hosts �A�N���s�����D���W�٪� Key ���L�����A�N�i�H���s�s�u�աI
[root@linux ~]# vi ~/.ssh/known_hosts
localhost ssh-rsa AAAAB3NzaC1yc2Euowireffodjoiwjefmoeiwhoqhwupoi
t[egmlomowimvoiweo6VpTHTw2/tENp4U7Wn8J6nxYWP36YziFgxtWu4MPSKaRmr
E4eUpR1G/zV3TkChRZY5hGUybAreupTVdxCZvJlYvNiejfijoejwiojfijeoiwx5
eRkzvSj7a19vELZ5f8XhzH62E=
|
�W�����檺���e���O�P�@�檺�㨺�@��N���y localhost �o���D���A�Q�Ϊ��O ssh-rsa �s�u����A
�ӫ���ƫh�O���� Server Key �����e�C�z�p�G�z�T�w�o�������L�k���\�O���`���A
����z�i�H�N�o�@�浹�L�R���A�o�ˤU���n�A�n�J�ɡA�N�S�|�A�����X�{�� (yes/no) ���e���ڡI
Linux Client: sftp
����p��ϥ� SSH FTP ���\��O�H�]�O�ܮe���աI�N�O�ϥ�
sftp �o��{���Y�i�I�ӵn�J���覡�P ssh �ۦP�A���O�ϥ� sftp -l username hostname
�Ϊ̪����H sftp user@hosname �ӮѼg�I���椧��|�����U���ҼˡG
[root@linux ~]# sftp dmtsai@localhost
Connecting to localhost...
dmtsai@localhost's password: <== �o�̽п�J�K�X�ڡI
sftp> <== �o�̴N�O�b���ݱz��J ftp �������O���a��F�I
|
�i�J�� sftp ����A���N��b�@�� FTP �Ҧ��U���ާ@��k�S����ˤF�I���U�ڭ̴N�ӽͤ@�͡A
sftp �o�Ӥ����U���ϥΫ��O�a�I
�w�ﻷ��D��(Server)���欰 |
�ܴ��ؿ��� /etc/test �Ψ�L�ؿ� |
cd /etc/test cd PATH |
�C�X�ثe�Ҧb�ؿ��U���ɦW |
ls dir |
�إߥؿ� |
mkdir directory |
�R���ؿ� |
rmdir directory |
��ܥثe�Ҧb���ؿ� |
pwd |
����ɮשΥؿ��s�� |
chgrp groupname PATH |
����ɮשΥؿ��֦��� |
chown username PATH |
����ɮשΥؿ����v�� |
chmod 644 PATH �䤤�A644 �P�v�������I�^�h�ݰ�¦�g�I |
�إ߳s���� |
ln oldname newname |
�R���ɮשΥؿ� |
rm PATH |
����ɮשΥؿ��W�� |
rename oldname newname |
���}���ݥD�� |
exit (or) bye (or) quit |
�w�糧��(Client)���欰(���[�W l, L ���p�g ) |
�ܴ��ؿ��쥻���� PATH ���� |
lcd PATH |
�C�X�ثe�����Ҧb�ؿ��U���ɦW |
lls |
�b�����إߥؿ� |
lmkdir |
��ܥثe�Ҧb�������ؿ� |
lpwd |
�w���ƤW��/�U�����欰 |
�N�ɮץѥ����W�Ǩ컷�ݥD�� |
put [�����ؿ����ɮ�] [����]
put [�����ؿ����ɮ�]
�p�G�O�o�خ榡�A�h�ɮ|��m��ثe���ݥD�����ؿ��U�I |
�N�ɮץѻ��ݥD���U���^�� |
get [���ݥD���ؿ����ɮ�] [����]
get [���ݥD���ؿ����ɮ�]
�Y�O�o�خ榡�A�h�ɮ|��m�b�ثe�����Ҧb���ؿ������I�i�H�ϥθU�Φr���A�Ҧp�G
get * get *.rpm ��O�i�H���榡�I |
�N����Ө��A sftp �b Linux ���U�A�p�G���Ҽ{�ϧΤ����A����L�w�g�i�H���N
FTP �F�O�I�]���Ҧ����\�ೣ�w�g�[�\�աI�]���A�b���Ҽ{��ϧΤ����� FTP �n��ɡA�i�H��������
FTP ���A�ȡA�ӧ�H sftp-server �Ӵ��� FTP ���A�ȧa�I ^_^
Linux Client: scp
�p�G�ڭn�b��ӥD�������ƻs�ɮת��ܡA���F sftp ���~�A�٦��S����²�檺�覡�H
�����A���N�O�Q�� scp �o�ӫ��O�աI�o�ӫ��O���Ϊk�P cp �ܬ۹��A���L�A
�b���ݥD�����ؿ��g�k�A����ݭn�`�N�N�O�F�C�|�Ҧp�U�G
1. �N��ƥѥ����W�Ǩ컷�ݥD���W�h
[root@linux ~]# scp /etc/crontab dmtsai@localhost:/home/dmtsai/
dmtsai@localhost's password: <== �o�̽п�J�K�X�ڡI
crontab 100% 620 0.6KB/s 00:00
# �o�ӨҤl�b�����A�ڱN�����ؿ��� /etc/crontab �o���ɮǰe�� dmtsai
# �o�ӨϥΪ̡A�ӳo�ӨϥΪ̬O�b "localhost" �����D���W����I
# �J�Ӭݤ@�U�A�|���@�Ӷǿ��ƪ��T���]�X�ӳ�I
2. �N��ƥѻ��ݥD���U���쥻���W�I
[root@linux ~]# scp dmtsai@localhost:~/.bashrc .
# �o�ӨҤl�h�O�b�����A�ڭn�N localhost ���������W�� dmtsai �o�ӤH�A
# �L�a�ؿ��U�� .bashrc �ƻs��ڪ������W�I
|
�]�N�O���A���ݥD���W���ɮשΥؿ��n�ƻs�ɡA�O�H�y
hostname:PATH �z
�覡�ӮѼg���㤣�n�g���F��I�Ӧp�G�Q�n�ƻs�ؿ����ܡA����i�H�[�W -r ���ѼơI
Windows Client: putty
�b Linux ���U�Q�n�s�� SSH ���A���A�i�H�����Q��
ssh �o�ӫ��O
�A����p�G�b Windows �@�~�t�Ω��U�A�S�Ӧp��s���� SSH ���A���O�H�i�H�����ϥ�
putty �� pietty �o���������s�u�n��O�A�L�]�O�K�O���ۥѳn���I���o���覡�i�H�Ѧҩ��U�������G
�b putty ���x������W���ܦh�� client �n��i�H�ϥΪ��A�]�A putty/pscp/psftp �����C
�L�̤��O�����F ssh/scp/sftp �o�T�ӫ��O�N�O�F�C�ӤW�z���T�� putty/pscp/psftp �D�n�O�b Windows
�W���s���� Unix like ������ SSH ���A���� Client �n��O�C�Цۦ�U���ӳn���C
�ƹ�W�A����������w�L���w���ͪ� pietty�A�]���o�ӳn�餣���O����䴩 putty
�A�ӥB���Ѫ���r�s�X���״I�A ��b�ܦn�ΡC�b�A�U���F pietty �᪽�������L�A
�|���������U���ϥܥX�{�C

�ϤG�Bpietty ������ϥܤ��@
�b�W�� 1 ���a��ж�g�������D���W�٩Ϊ̬O IP �A2 ���M�ȥ���� SSH ���@���A
�ܩ� 3 ���a��A����������w���X�{���˦��A�ҥH�ڬO��ܿ��աI�Y�S�����D�A���U�y�s�u�z��A
�N�|�X�{�p�U�˦��G

�ϤT�Bpietty ������ϥܤ��@
�ܹ��b�D���e���u�@�a�I�ӥB�W�Y�٦����i�H�H�ɽվ������r�ΡB�r��B�r���s�X�����C
�ר�O�r���s�X�C���ɭԧA�|�o�{�}���ɮɡA���M�e�������|���ýX�Ӥ��O���`��������ܡA
���N�O�s�X�����D�C�n�ѨM�o�Ӱ��D�ɡA�A�����n�c�O�G
- ��r�ɮץ����b�s�ɮɩҬD�諸�y�t�F
- Linux �D�������ҨϥΪ��y�t (�i�� LANG �ܼƽվ�)�F
- pietty �ҨϥΪ��y�t�C
�o�T�өN�N���y�t�n�����ۦP�ɤ~�|���T����ܥX����I�d�n�n�c�O�ڡI
���p��վ� pietty ������s�X�O�H

�ϥ|�Bpietty ������ϥܤ��@
�b�y�ﶵ�z���y�r���s�X�z�̭��i�H�D�� big5 �Ϊ̬O utf8 ������s�X�A
���L�ŦX�A�� Linux �P�ɮש��x�s����Ʈ榡�A���N OK ���աI ^_^�I
�p�G�Q�n�@��ӳ����]�w�ɡA�i�H��ܹϥ|�W�Y�̩��U�����ӡy�Բӳ]�w�z���ءA
�N�|�X�{�p�U�ϥܡC�䤤���n���O�y��L�k�����Ʀr��Q�n�ͮġz�ɡA
�i�H���ӤU�Ϫ����ܨӱҰʼƦr�䪺�\��G

�Ϥ��Bpietty ������ϥܤ��@
�p�W�ϩҥܡA�b�A��J�yApply�z����A�N�i�H�۰ʪ��ͮĤF�I�{�b�A�i�H����L�k�䪺���s�F�A
�u��K�C�A�ӧA�i�H�վ� pietty ���b���O�Ц�ơA�o�˷���ƤӦh�ɡA�A���¥i�H�վ㱲�b�Ӭd�\���e����ơC
�]�w����k�p�U�G

�Ϥ��Bpietty ������ϥܤ��@
�վ㧹�F�ù����j�p����A�A�ӳo�O�̭��n���G�y�z�n�H���@�Ӫ����� SSH
�t��k�n�J�H�I�z�e�����L�A�ڭ̹w�]�O�H version2 �ӵn�J���A�ҥH�o�̧ڭ̥i�H�վ㬰
2 ���Ӷ��ءI�o�˨C���n�J���|�H version 2 ���Ҧ��n�J�D���F�I

�ϤC�Bpietty ������ϥܤ��@
��� pietty �j�P�W���y�{�N�O�o�ˡI�p���@�ӡA�z�N�i�H�b Windows �W���H
SSH ����w�A�n�J���ݪ� Linux �D���P�I����K�a�I ^_^ �I
����p�G�Q�n����䴩���ܡA�ثe
pietty �w�g�䴩����աI�z�i�H��J�����I���L�ݭn�ק�@�U�r�����A
��ܹϥ|���y�ﶵ�z�����y�r���z�A�|�X�{�p�U�ϥܡG

�ϤK�Bpietty ������ϥܤ��@
�N(1)�r���]�w���ө���
(2)�r���]�w���yBig5�z�A�p���@�ӡA�z�� pietty �N�䴩���媺��J�o�I ^_^
����W���ڭ̧@���o�dz]�w�ȳ��O���b���̰ڡH�����I���O���b Windows ���n���ɷ����ڡI
�z�i�H�b Windows ���t�η����A�b�y�}�l�z-->�y����z��A�X�{���خؤ���J�yregedit�z�A
����|�X�{�@�Ӥj�����C�Цb���䪺�e��������ܡy
HKEY_CURRENT_USER --> Software --> SimonTatham --> PuTTY --> Sessions�z�A
�N�i�H�ݨ�z���]�w���o�I ^_^�I �o�ˡA�]�N�i�H�x�s�z���]�w���o��
Windows Client: psftp
�b putty ���x������W�]���� psftp �o��{���C�o�@��{�������I�h�O�b��H sftp
�s�u�W Server �C�s�u���覡�i�H�����I��
psftp �o���ɮסA���L�����ҰʡA�h�|�X�{�U�����ϼˡG
psftp: no hostname specified; use "open host.name" to connect
psftp>
|
�o�Ӯɭԥi�H��J�z�n�s���W�h���D���W�١A�Ҧp�ڪ��ϰ줺���� linux.dmtsai.tw �o�ӥD��
psftp: no hostname specified; use "open host.name" to connect
psftp> open test.linux.org
login as: dmtsai
Using username "dmtsai".
dmtsai@linux.dmtsai.tw's password:
Remote working directory is /home/dmtsai
psftp> <== �o�̴N�b���ݱz��J FTP �����O�F�I
|
�����I�o�˴N�n�J�D���աI��²��a�I�M���L���ϥΤ覡��e�����쪺 sftp �@�˭��I�[�o���ϥΧa�I
Windows Client: Fliezilla
���� SSH �Ҵ��Ѫ� sftp �\��u��Q�ί¤�r������ psftp �ӳs�u�ܡH���S���ϧΤ������n��O�H�����I���M���I
���N�O�D�`���Ϊ� Filezilla �o�IFilezilla �O�ϧΤ������@�� FTP �Τ�ݳn��A�ϥΤW�D�`����K�A
�ܩ�ԲӪ��w�˻P�ϥάy�{�аѦ�
vsftpd ���`��������I
�Բӳ]�w sshd ���A��
�W�A�Ҧ��� ssh �����]�w����b
/etc/ssh/sshd_config
�̭��I���L�A�C�� Linux distribution ���w�]�]�w�����ӬۦP�A
�ҥH�ڭ̦����n���A�Ѥ@�U��ӳ]�w�Ȫ��N�q����~�n�I
[root@linux ~]# vi /etc/ssh/sshd_config
# 1. ���� SSH Server ������]�w�A�]�t�ϥΪ� port �աA�H�ΨϥΪ��K�X�t��覡
# ���d�N�@�U�A�b�w�]���ɮפ��A�u�n�O�Q���Ѫ��]�w��(#)�A�Y���y�w�]�ȡI�z
Port 22
# SSH �w�]�ϥ� 22 �o��port�A�]�i�H�ϥΦh��port�A�Y���ƨϥ� port �o�ӳ]�w���ءI
# �Ҧp�Q�n�}�� sshd �b 22 �P 443 �A�h�h�[�@�椺�e���G
# Port 443
# �o�˴N�n�F�I���L�A����ij�ק� port number �աI
Protocol 1,2
# ��ܪ� SSH ��w�����A�i�H�O 1 �]�i�H�O 2 �A
# �p�G�n�P�ɤ䴩��̡A�N�����n�ϥ� 2,1 �o�Ӥ��j�F(Protocol 1,2)�I
# �ثe�ڭ̷|��ij�z�A�����ϥ� Protocol 2 �Y�i�I
#ListenAddress 0.0.0.0
# ��ť���D�������d�I�|�ӨҤl�ӻ��A�p�G�z����� IP�A
# ���O�O 192.168.0.100 �� 192.168.2.20 �A����u�Q�n
# �}�� 192.168.0.100 �ɡA�N�i�H�g�p�P�U�����˦��G
ListenAddress 192.168.0.100
# �u��ť�Ӧ� 192.168.0.100 �o�� IP ��SSH�s�u�C
# �p�G���ϥγ]�w���ܡA�h�w�]�Ҧ����������� SSH
#PidFile /var/run/sshd.pid
# �i�H��m SSHD �o�� PID ���ɮסI���C���w�]��
#LoginGraceTime 2m
# ���ϥΪ̳s�W SSH server ����A�|�X�{��J�K�X���e���A�b�ӵe�����A
# �b�h�[�ɶ����S�����\�s�W SSH server �A�N�_�u�I�Y�L���h�w�]�ɶ������I
#Compression yes
# �O�_�i�H�ϥ����Y���O�H���M�i�H�o
# 2. �����D���� Private Key ��m���ɮסA�w�]�ϥΤU�����ɮקY�i�I
#HostKey /etc/ssh/ssh_host_key # SSH version 1 �ϥΪ��p�_
#HostKey /etc/ssh/ssh_host_rsa_key # SSH version 2 �ϥΪ� RSA �p�_
#HostKey /etc/ssh/ssh_host_dsa_key # SSH version 2 �ϥΪ� DSA �p�_
# �ٰO�o�ڭ̦b�D���� SSH �s�u�y�{�̭��ͨ쪺�A�o�̴N�O Host Key ��
# 2.1 ���� version 1 ���@�dz]�w�I
#KeyRegenerationInterval 1h
# �ѫe���s�u�������i�H���D�A version 1 �|�ϥ� server �� Public Key �A
# ����p�G�o�� Public Key �Q�����ܡA�Z�����J�H�ҥH�ݭn�C�j�@�q�ɶ�
# �ӭ��s�إߤ@���I�o�̪��ɶ������I���L�ڭ̳q�`���Ȩϥ� version 2 �A
# �ҥH�o�ӳ]�w�i�H�Q������I
#ServerKeyBits 768
# �S���I�o�ӴN�O Server key �����סI�ιw�]�ȧY�i�C
# 3. ����n���ɪ��T����Ʃ�m�P daemon ���W�١I
SyslogFacility AUTHPRIV
# �����H�ϥ� SSH �n�J�t�Ϊ��ɭԡASSH�|�O����T�A�o�Ӹ�T�n�O���b���� daemon name
# ���U�H�w�]�O�H AUTH �ӳ]�w���A�Y�O /var/log/secure �̭��I����H�ѰO�F�I
# �^�� Linux ��¦ �h½�@�U�C��L�i�Ϊ� daemon name ���GDAEMON,USER,AUTH,
# LOCAL0,LOCAL1,LOCAL2,LOCAL3,LOCAL4,LOCAL5,
#LogLevel INFO
# �n���O�������šI�K�K�I����T���I�P�˪��A�ѰO�F�N�^�h�ѦҡI
# 4. �w���]�w���ءI�����n�I
# 4.1 �n�J�]�w����
PermitRootLogin no
# �O�_���\ root �n�J�I�w�]�O���\���A���O��ij�]�w�� no�I
#UserLogin no
# �b SSH ���U���ӴN������ login �o�ӵ{�����n�J�I
#StrictModes yes
# ���ϥΪ̪� host key ���ܤ���AServer �N�������s�u�A�i�H��׳������차�{���I
#RSAAuthentication yes # �O�_�ϥίª� RSA �{�ҡI�H�Ȱw�� version 1 �I
#PubkeyAuthentication yes # �O�_���\ Public Key �H���M���\�աI�Ȱw�� version 2
#AuthorizedKeysFile .ssh/authorized_keys
# �W���o�Ӧb�]�w�Y�n�ϥΤ��ݭn�K�X�n�J���b���ɡA���ӱb�����s���ɮשҦb�ɦW�I
# �o�ӳ]�w�ȫܭ��n��I�ɦW���L�O�@�U�I
# 4.2 �{�ҳ���
#RhostsAuthentication no
# �����t�Τ��ϥ� .rhosts�A�]���Ȩϥ� .rhosts�Ӥ��w���F�A�ҥH�o�̤@�w�n�]�w�� no
#IgnoreRhosts yes
# �O�_�����ϥ� ~/.ssh/.rhosts �Ӱ����{�ҡI���M�O�I
#RhostsRSAAuthentication no #
# �o�ӿﶵ�O�M���� version 1 �Ϊ��A�ϥ� rhosts �ɮצb /etc/hosts.equiv
# �t�X RSA �t��覡�Ӷi��{�ҡI���n�ϥΰڡI
#HostbasedAuthentication no
# �o�Ӷ��ػP�W�������������A���L�O�� version 2 �ϥΪ��I
#IgnoreUserKnownHosts no
# �O�_�����a�ؿ����� ~/.ssh/known_hosts �o���ɮשҰO�����D�����e�H
# ���M���n�����A�ҥH�o�̴N�O no �աI
PasswordAuthentication yes
# �K�X���ҷ��M�O�ݭn���I�ҥH�o�̼g yes �o�I
#PermitEmptyPasswords no
# �Y�W�����@���p�G�]�w�� yes ���ܡA�o�@���N�̦n�]�w�� no �A
# �o�Ӷ��ئb�O�_���\�H�Ū��K�X�n�J�I���M���\�I
ChallengeResponseAuthentication no
# ���\���K�X�{�ҡI�ҥH�A���� login.conf �W�w���{�Ҥ覡�A���i�A�ΡI
# ���ثe�ڭ̤�����w�ϥ� PAM �Ҳ������z�{�ҡA�]���o�ӿﶵ�i�H�]�w�� no ��I
UsePAM yes
# �Q�� PAM �z�ϥΪ̻{�Ҧ��ܦh�n�B�A�i�H�O���P�z�C
# �ҥH�o�̧ڭ̫�ij�z�ϥ� UsePAM �B ChallengeResponseAuthentication �]�w�� no
�@
# 4.3 �P Kerberos �������ѼƳ]�w�I�]���ڭ̨S�� Kerberos �D���A�ҥH���U���γ]�w�I
#KerberosAuthentication no
#KerberosOrLocalPasswd yes
#KerberosTicketCleanup yes
#KerberosTgtPassing no
�@
# 4.4 ���U�O�����b X-Window ���U�ϥΪ������]�w�I
X11Forwarding yes
#X11DisplayOffset 10
#X11UseLocalhost yes
# 4.5 �n�J�᪺���ءG
PrintMotd no
# �n�J��O�_��ܥX�@�Ǹ�T�O�H�Ҧp�W���n�J���ɶ��B�a�I�����A�w�]�O yes
# ��Y�O�C�L�X /etc/motd �o���ɮת����e�C���O�A�p�G���F�w���A�i�H�Ҽ{�אּ no �I
PrintLastLog yes
# ��ܤW���n�J����T�I�i�H�ڡI�w�]�]�O yes �I
KeepAlive yes
# �@��Ө��A�p�G�]�w�o���ت��ܡA���� SSH Server �|�ǰeKeepAlive ���T����
# Client�ݡA�H�T�O��̪��s�u���`�I�b�o�ӱ��p�U�A����@�ݦ�����ASSH�i�H�ߨ誾�D�I
# �Ӥ��|�����͵{�Ǫ��o�͡I
UsePrivilegeSeparation yes
# �ϥΪ̪��v���]�w���ءI�N�]�w�� yes �a�I
MaxStartups 10
# �P�ɤ��\�X�ө|���n�J���s�u�e���H���ڭ̳s�W SSH �A���O�|����J�K�X�ɡA
# �o�ӮɭԴN�O�ڭ̩ҿת��s�u�e���աI�b�o�ӳs�u�e�����A���F�O�@�D���A
# �ҥH�ݭn�]�w�̤j�ȡA�w�]�̦h�Q�ӳs�u�e���A�Ӥw�g�إ߳s�u�����p��b�o�Q�ӷ���
# 4.6 ����ϥΪ̩�ת��]�w���ءG
DenyUsers *
# �]�w����ת��ϥΪ̦W�١A�p�G�O�������ϥΪ̡A���N�O�����קa�I
# �Y�O�����ϥΪ̡A�i�H�N�ӱb����J�I�Ҧp�U�C�I
DenyUsers test
DenyGroups test
# �P DenyUsers �ۦP�I�ȩ�״X�Ӹs�զӤw�I
# 5. ���� SFTP �A�Ȫ��]�w���ءI
Subsystem sftp /usr/lib/ssh/sftp-server
|
�W�ACentOS �w�]�� sshd �A�Ȥw�g��O���w�����F�A���L�٤����I
��ij�A (1)�N root ���n�J�v�������F (2)�N ssh �����]�w�� 2 �C
��L���]�w�ȴN�бz�̷Ӧۤv���ߦn�ӳ]�w�F�C�q�`����ij�i���H�K�ק�աI
�t�~�A�p�G�z�ק�L�W���o���ɮ�(/etc/ssh/sshd_config)�A����N���ݭn���s�Ұʤ@��
sshd �o�� daemon �~��I��Y�O�G
�s�@���αK�X�i�ߧY�n�J�� ssh �Τ�G
�x�I�J�M SSH �i�H�ϥ� Key �Ӥ���ơA�åB���ѨϥΪ̸�ƪ��[�K�\��A
����i���i��Q�γo�� Key �N���ѨϥΪ̦ۤv�i�J�D���A�Ӥ��ݭn��J�K�X�O�H
�����I�n�D�N�I�ڭ̥i�H�N Client ���ͪ� Key ���L������ Server �����A�ҥH�A
�H�� Client �n�J Server �ɡA�ѩ��̦b SSH �n�s�u���T���ǻ����A�N�w�g���L Key �F�A
�]���A�i�H�ߧY�i�J��ƶǿ餶�����A�Ӥ��ݭn�A��J�K�X�O�I�b��@�W���B�J�i�H�O�G
- �����A���b Client �W���إ� Public Key �� Private Key �o����_�͡A�Q�Ϊ����O��
ssh-keygen �o�өR�O�F
- �A�ӡA�N Private Key ��b Client �W�����a�ؿ��A��Y $HOME/.ssh/ �A
�åB�ק��v�����Ȧ��� User �iŪ�����A�F
- �̫�A�N���� Public Key ��b����@�ӱz�Q�n�Ψӵn�J���D���� Server �ݪ��Y
User ���a�ؿ����� .ssh/ �̭����{���ɮקY�i������ӵ{�ǡC
���O�n���ܧx�����ˤl�A���B�J�u����²��A�ڭ̨̧ǨӶi��@�~�n�F�I���]�e���G
- Server ������ linux.dmtsai.tw �o�� 192.168.0.2 ���D���A���ϥΪ� User �� test �o�ӱb���F
- Client ������ test2.dmtsai.tw �o�� 192.168.0.100 PC �� test2 �o�ӱb���A
�L�n�Ψӵn�J 192.168.0.2 �o���D���� test �o�ӱb���C
- �b Client �ݫإ� Public �P Private Key �G
�إߪ���k�u���O²��줣��I�����b 192.168.0.100 �o�� Client �W���A�H
test2 �o�ӱb���A�ϥ� ssh-keygen �o�ӫ��O�Ӷi�� Key �����ͧY�i�I���L�A�ݭn�`�N���O�A
version 1 �P version 2 �ϥΪ��K�X�t��覡���P�A���~�A version 2
���Ѩ�ӱK�X�t�⪺��k�A�ڭ̳o�̶Ȱw�� version 2 �� RSA �o�Ӻt���k�i�满���I
[test2@test2 ~]$ ssh-keygen -t rsa <==�o�ӨB�J�b���� Key pair
Generating public/private rsa key pair.
Enter file in which to save the key (/home/test2/.ssh/id_rsa): <==�o�̫��UEnter
Enter passphrase (empty for no passphrase): <==�o�̫� Enter
Enter same passphrase again: <==�A���@�� Enter
Your identification has been saved in /home/test2/.ssh/id_rsa. <==�o�O�p�_
Your public key has been saved in /home/test2/.ssh/id_rsa.pub. <==�o�O���_
The key fingerprint is:
c4:ae:d9:02:d1:ba:06:5d:07:e6:92:e6:6a:c8:14:ba test2@test2.linux.org
# �`�N�G -t �����O�y�ϥΦ�رK�X�t��覡�H�z�ѩ�ڭ̨ϥ� RSA �A
# �ҥH������J -t rsa �Y�i�إߨ�� Keys �I
# ���~�A�إߪ���� Keys ����m�b�a�ؿ��U�� .ssh �o�ӥؿ����I
# ��ݤ@�U�o��� Keys �a�I
[test2@test2 ~]$ ll ~/.ssh
total 12
-rw------- 1 test2 test2 887 Nov 12 22:36 id_rsa
-rw-r--r-- 1 test2 test2 233 Nov 12 22:36 id_rsa.pub
-rw-r--r-- 1 test2 test2 222 Oct 31 11:20 known_hosts
|
�Ъ`�N�W����A�ڪ������O test2 �A�ҥH���ڰ��� ssh-keygen �ɡA
�~�|�b�ڪ��a�ؿ����U�� .ssh/ �o�ӥؿ��̭����ͩһݭn����� Keys
�A���O�O�p�_(id_rsa)�P���_(id_rsa.pub)�C�t�~�@�ӭn�S�O�`�N���N�O����
id_rsa ���ɮ��v���աI�L�����n�O -rw-------
�~�n�I�_�h���e�Q�H�a���D�F�A����z�� Keys ���N���i��~���F�H�ҥH�ЯS�O�d�N�L���v����I
���� id_rsa.pub �h�O�y���_�I�z�o���ɮץ����n�Q��m�� Server �ݤ~��I
- �b Client �ݩ�m�p�_�G
�b�w�]�����A�ڭ̪��p�_���ݭn��m�b�a�ؿ����U�� .ssh �̭��A����p�G�O
version 2 �� RSA �t��k�A�N�ݭn��m�b $HOME/.ssh/id_rsa �����I�x�I��n�ϥ�
ssh-keygen �N�O�w�g���ͦb�o�ӥؿ��U�F�A�ҥH�۵M�N���ݭn�h�վ�L�F�I�H�ڪ�
test2.dmtsai.tw �ӬݡA����ڪ��ɮ״N�|��m�b /home/test2/.ssh/id_rsa �o���ɮ״N�O�p�_�աI
- �b Server �ݩ�m�i�H�n�J�����_�G
�J�M�ڭ̭n�� test2 �i�H�� test �o�ӱb���n�J linux.dmtsai.tw �o���D���A����o���D���۵M�ݭn�O��
test2 �� public key �o�I�諸�I�ҥH�ڭ̥��ݭn�N Client �ݫإߪ� id_rsa.pub
�ɮ��L������ linux.dmtsai.tw ���Y�� test �o�ӨϥΪ̪��a�ؿ����U�I����p�G�z�ٰO�o�W����
sshd_config �o���ɮת��]�w���ܡA�������ӴN�O�o�y
AuthorizedKeysFile �z�o�ӳ]�w�a�I�O���I
�b�Q�n�J���D�����Y�ӱb���A�L�����_��m���ɮצW�ٹw�]�N�O�o�Ӷ��ةҰO�����I�ӥL�w�]���ɦW�N�O
authorized_keys
�o���ɮצW�ٰաI�������ӫ�O�H
1. ���b Client �ݥH sftp �N���_��� test �W���h�I
[test2@test2 ~]$ cd ~/.ssh
[test2@test2 .ssh]$ scp id_rsa.pub test@192.168.0.2:~/
test@192.168.0.2's password:
id_rsa.pub 100% 233 0.2KB/s 00:00
2. �� Server �W���A�N���_��s�� authorized_keys �ɮפ��I
[test@linux ~]$ cd ~/.ssh
[test@linux .ssh]$ cat ../id_rsa.pub >> authorized_keys
|
�Ъ`�N�W���������I�ѩ� authorized_keys �i�H�O�s�۷��h�����_���e�A�]���A
�i�H�ϥ� >> ���覡�ӱN Client �ݪ����_�s�W����ɮפ��I�����I�����o�@�B�@��A����
test2 �N�i�H�����b test2.dmtsai.tw �H
[test2@test2 ~]$ ssh test@linux.dmtsai.tw
|
�o�˴N�i�H���ݭn��J�K�X�o�I���O�Ъ`�N�A test ����H test2 �n�J test2.linux.org ��I
��²�檺�B�J�a�I�o�ˤ@�ӡA�N�i�H���ݱK�X������F�I�L�צp��A�z�n�O�o���O�G
- Client �����s�@�X Public & Private �o��� keys�A�B Private �ݩ�� ~/.ssh/ ���F
- Server �����n�� Public Key �A�B��m��ϥΪ̮a�ؿ��U�� ~/.ssh/authorized_keys�F
���ӡA���z�ٷQ�n�n�J��L���D���ɡA�u�n�N�z�� public key (�N�O id_rsa.pub �o���ɮ�) ���L
copy ���L�D���W���h�A�åB�s�W��Y�b���� ~/.ssh/authorized_keys �o���ɮפ��I�����I���\�I
�w���]�w�G
�ѹ껡�A�j�a���Q�y
SSH �O�Ӧw�����A�ȡz�Ҵ��F�F�I���
sshd �ä����w�����I½�} openssh ���L�h���v�ӬݡA�T�꦳�ܦh�H�O�Q�� ssh ���{���|�}�Ө��o���ݥD�� root
���v���A�i�@�B�±���誺�D���I
sshd ���ҿת��y�w���z�������O�y
sshd ����ƬO�[�K�L���A�ҥH�L����Ʀb Internet �W���ǻ��ɬO����w�����C
�ܩ� sshd �o�ӪA�ȥ����N���O���˦w���F�I�ҥH���G�y
�D���n�A���n�N sshd ��
Internet �}��i�n�J���v���A�ɶq�]���b�X�Ӥp�d�� IP �ΥD���W�٧Y�i�I
�o�ܭ��n����I
�n�F�A��������w�����]�w�譱�A���S������ȱo�`�N���O�H���M�O���աI
�ڭ̥i�H����ij�X�Ӷ��اa�I���O�i�H�ѡG
- /etc/ssh/sshd_config
- /etc/hosts.allow, /etc/hosts.deny
- iptables
�o�T�譱�ӵۤ�i��I���U�ڭ̴N���@���a�I
/etc/ssh/sshd_config
�@��Ө��A�o���ɮת��w�]���شN�w�g�ܧ��ƤF�I�ҥH�A�ƹ�W�O���ӻݭn��ʥL���I
���O�A�p�G�z���ǨϥΪ̤譱���U�{�A����i�H�o�˭ץ��@�ǰ��D�O�I
- �T�� root ���n�J�G
����ɭԡA���\ root �H���ݳs�u���覡�n�J�A���|�O�@�Ӧn�D�N�I�ҥH�o���Z��ij�j�a�����N
root ���n�J�v�������a�I�ҥH�A�i�H�ק� /etc/ssh/sshd_config �o���ɮת����e���G
[root@linux ~]# vi /etc/ssh/sshd_config
PermitRootLogin no <== �N�L�令 no �a�I
[root@linux ~]# /etc/init.d/sshd restart
|
�p���@�ӡA�H�� root �N����H ssh �n�J�o�I�o���٬O����n���աI ^_^
- ���\�Y�Ӹs�յn�J�G
���ǯS�����p���A�ڭ̷Q�n���ϥΪ̥u��ϥ�
sendmail, pop3, ftp ���A���O���Ʊ�L�i�H���ݳs�u�i�ӡA����z�i�H�o�˰��G
1. �N�o�ǨϥΪ̳��k�Ǧb�Y�@�ӯS���s�դ��U�A�Ҧp nossh �o�Ӹs�զn�F�F
2. �b /etc/ssh/sshd_config �����[�J�o�@��G�y
DenyGroups nossh �z
3. ���s�Ұ� sshd �G /etc/init.d/sshd restart
�o�˴NOK�աI
- ���\�Y�ӨϥΪ̵n�J�G
�� DenyGroups �����A�ϥ� DenyUsers �Y�i�I�Ѧ� sshd_config ���]�w��I
/etc/hosts.allow �� /etc/hosts.deny
²�檺��k�N�O�G
[root@linux ~]# vi /etc/hosts.allow
sshd: 192.168.0.1, 192.168.0.2, 192.168.0.3, 192.168.0.4, 192.168.0.5: allow
[root@linux ~]# vi /etc/hosts.deny
sshd : ALL : spawn (/bin/echo Security notice from host `/bin/hostname`; \
/bin/echo; /usr/sbin/safe_finger @%h ) | \
/bin/mail -s "%d -%h security" root@localhost & \
: twist ( /bin/echo -e "\n\nWARNING connectin not allowed.". )
|
iptables
�h�X�h�O�@�]�ܦn���I�ҥH�]�i�H�ϥ� iptables ��I�ѦҡG
²��������[�] �@���o�I
�̫�A�y
�����I�~�j�a�A���n�}�� SSH ���n�J�v�����Ҧ� Internet �W�����D�����z
�o�ܭ��n���]���p�G���i�H ssh �i�J�z���D���A����......�ӦM�I�F��
�Ҽ{�@�ӱ��p�A�p�G�z�� Linux �D���W���D�n�O�Ψӧ@���ϧγB�z�ɡA�ӥB�P�ɦ��h�H�ݭn�Ψ쨺�ӥ\��A
����@�� Linux �O�_�@���ȯണ�Ѥ@�ӤH�B�z���ӳn��O�H�K�K�I���i���@�w��I�]�� Linux
���۷��u�q�� X Window System �ڡI
X Window �� Server/Client �[�c
X Window System ���[�c���`�`���������B�ͨӻ�(�o�]�]�A�����աI @_@)��b���Ӧn�z�ѡ�
�]�� X Window System �b�B�@���L�{���A�P�˥]�t�F X Server �P X Client �o��ӪF��A
���O�L���@�Ϋo�P�����D���� Server/Client �[�c�j���������ӻ��� X Server/Client �ҭt�d���F��G
- X Server�G �L�D�n�t�d���O�ù��e����ø�s�P����C
X Server �i�H�����Ӧ� X client ���ƾڡA
�N�o�Ǽƾ�ø�s�e�{���ϭ��b�ù��W�C���~�A�ڭ̲��ʷƹ��B�I����ơB����L��J��Ƶ����A
�]�|�z�L X Server �ӶǹF�� X Client �ݡA�ӥ� X Client �ӥ[�H�B��F
- X Client�G �L�D�n�t�d���O��ƪ��B��C
X Client �b������ X Server �ǨӪ���ƫ�A�|�g�ѥ������B��A�ӱo��ƹ����ӭn�p�ʡB
�I�������G���ӭn�X�{����˪���ơB��L��J�����G���ӭn�p��e�{�����A
�M��N�o�ǵ��G�i�� X Server �A���L�ۦ�hø�s��ù��W�C
�o�˻��i�H�z�ѶܡH�]�N�O���A�ڭ̲��ʷƹ��κV����L�ɡA X server �i�H������o�ǵw��ҿ�J����ơA
���L�����D���ӭn���@�~�n�A�N��o�Ǹ�Ƨi�D X Client �A���ɡA X Client �N�|�N�o�Ǹ�ƭp��A
�̫�o��ƹ����ӭn�p�ʻP��L��������ӭn�p��e�{�A�ñN�o�ǵ��G�i�� X Server �A
�� X Server �N�|�g�� X Client ���i���A�ӱN���Ǽƾڸ�Ʀb�ù��W���e�{�X�ӡC
�ƹ�W�A X Server �P X Client �q�`�O�b�P�@�������W�����A
�Ҧp�ڭ̦b Linux �W�����榳�W�� KDE �o�Ӯୱ�@�ˡC
���O X Server/Client �o�����M�@�w�n�b�P�@�������W���A
�]�N�O���A�ڭ̥i�H�z�L�����s���ⳡ�D���� X �t�ΩO�I
�o�]�O�̦� X �t�ζ}�o�ɪ������C���L�A�o�ӮɭԪ� X server �����O���@���O�H
�|�ӨҤl�ӻ��A�ڭ̥i�H�b Windows �t�ΤW������@�M X Win32 ���n��A
�L�i�H�s���� Linux �� X �W�Y�����ϥΪ̥H�ϧΤ����n�J Linux �C
���ɡA�]���yX Win 32�z�D�n�O�b�ù��W����ܡA�L�����δN�O�ù�ø�s�A�]���L�O X Server �C
���H���ܡA���@�U�ڭ̴��թ��U����ƮɡA�z�|�o�{�A�Ұ� X win32 �o�M�n���A
�b Windows �t�ΤW�N�|�X�{ port 6000 �o�� X server �� port �O��ӳo�Ӯɭ� X Win 32
�n����N�O�s���� Linux ���Y�ӵ{�ǡA�ڭ̵��@�U�n���Ъ� XDMCP �N�O�䤤�@�ءC
�o�� XDMCP �i�H�N X Win32 �ǰe�L�Ӫ���ƹB�⦨�i�Hø�s���ƾڦӦ^�ǵ� X win 32 ���M�n��A
���ɪ� XDMCP �{�ǴN�O�@�� X Client �o��
�ҥH�աI�p�G�z�� Windows �Q�n�s���� Linux �D�����ܡA���� Windows �N�o�n���i�H���檺 X Server �n��ա�
�� Linux �D���h�����n�Ұʤ@�ӥi�H���� X Server ��ƹB�⪺ X Client �ա�
�N�O�o�˻���
���O�A�o�˰�������n�B�O�H������̤j���n�B�N�O�A
�b���A���W�� X Client ���ݭn���D
X Server ���w��O������]���t�d��ܪ��O X server ���Ʊ��A�z�w�骺�ʧ@�]�O X server �b���A
�b�D���W�� X Client �u�O�N�o�Ƿƹ����ʻP�I���٦���L����J������Ʀb�D���ݹB���A
�̫�N���G�ǰe�� X Server ��ܦӤw�C(���M�աA
X Client ���B�⤺�e�٬O�|�Ψ�D���ݪ��]�w�ɻP�禡�w�N�O�F�C)

�ϤE�BX server/client ���[�c
����ɭԷ|�X�{�h�ϥΪ̳s�J X �D�������p�O�H�H�������Ҥl�ӻ��A�ڭ̹���Ǧ��@�� Linux �b�i��ƭȼ����A
�L��X�����G�O NetCDF �ɮסA�ڭ̥����ϥ� PAVE �o�@�M�n��h�B�z�o�Ǹ�ơA
�Hø�s���@�ϵ������C���O�ڭ̦���T�ӤH�P�ɳ��|�ϥΨ쨺�ӥ\��A
���� Linux �D���O��b���[�d�̭����A�n�ڭ����b���Ӥp�p���Ŷ��e���y���ۡz�ާ@�q���A
�i�u�O�Q�H���ڡ�o�ӮɭԡA�ڭ̴N�|�[�]�ϧΤ��������ݵn�J���A���A
���ڭ̥i�H�y
�h�H�P�ɥH�ϧΤ����n�J Linux �D���z�Ӿާ@�ڭ̦ۤv���{�ǡI
�ܴΡA���O�ܡH�I
�]�w XDMCP
XDM �O X Display Manager ��²�١A�L���\��O����O�H
²�檺���A�N�O�z�ޱ� X Server ����ܰա�L�D�n����غz�覡�A
�p�G X Server/Client �b�P�@�������W�A����Ұ� xdm ����A�N�|���ͤ@�� X server �F�F
�Ӧp�G X server/client ���b�P�@���D���W���A����Ұ� xdm ��A�L�N�|�z�L�����h�z���ݨ����D����
X server �F�C�� XDMCP (X Display Manager Control Protocol) �N�O�t�d��ť�Ӧۺ����W�����
xdm ���n�D���ա�
�� X11 (CentOS �ϥΪ��O Xorg �o�ӭp�e�� X11)���Ѫ� display manager �� xdm �A�]�w�ɦb
/etc/X11/xdm/xdm-config �A
�ӵۦW�� KDE �P GNOME �]�����ۤv�� display manager �z�{�ǡA���O�O kdm �P gdm �A
�]�w�ɫh�O
/etc/X11/xdm/kdmrc �P /etc/X11/gdm/gdm.conf
(���P�� distribution �o���ɮש�m���ؿ����Ӥ@��)�C�ڭ̥i�H�z�L�T�̤�����@�̪� display manager
���]�w�ɨӱҰ� xdmcp �o�Ө�w�O��
�n�ҥ� xdmcp ���\��u����²��A�p�G�z�n�ҥ� xdm ���ܡA�ק� /etc/X11/xdm/xdm-config �o���ɮסA
��쩳�U�o�@��(�@��b�̫�@��)�G
DisplayManager.requestPort: 0
|
�N�L�ק令���G
!DisplayManager.requestPort: 0
|
��Y�O���ѱ��A�M��A���s�Ұ� xdm �N�n�F�C�� kdm �P gdm ���]�w�]�����A���U�����D�n�H kdm
�Ӷi�� xdmcp ���[�]�C���L�n�`�N���O�A�Y�Ϧb Linux �D���ݤ��ҥ� X Server (port 6000)
�]�O�i�H���T�L�~������ X �������n�J����N�p�P�W�����쪺�����@���
���O�A�p�G�n��o������T���T���A�����٬O��ij�z�A
�ҥ� kdm �ɤ@�֥��T���Ұ� X �A
�u�O�w���ʤW���N�n�`�N�@�ǤF�I�n�F�A�h���L�q�A�ӹ�@�a�I
1. ���� kdm �䴩 xdmcp �Ҧ�
[root@linux ~]# cd /etc/X11/xdm
[root@linux xdm]# vi kdmrc
[Xdmcp]
Enable=1
# �j���O�b 70 �楪�k�C���n�h�áI�u���u�n�o�˴N�n�F�I
2. �� client �i�H�z�L X �ӵn�J�t�ΡI�P�v���������]�w
[root@linux xdm]# vi Xaccess
*
# ���F�w���ʤW�����ݭn�A�Q�n�n�J X ���ܡA�o�n�q�L�o���ɮת����Ҥ~��C
# ���W���o�@��A�p�G�S���o�@�檺��(���u���@�� * )�A
# �N�ۦ�[�J�C�o���ܡy���רӦۭ��̡A�ڳ����� X �n�J�z���N��I
3. �Ұ� kdm ��I
[root@linux xdm]# /etc/init.d/xfs start
# �N�p�P�ڭ̤W�����쪺�A kdm �����A�i��ܡA�|�b�����ݱҰʤ@�� X server ���A
# �ӧڭ̳o�@���� Xorg �n���Q���ҰʡA�o�n���ҥ� X font Server �~��A
# �_�h���ܡA�z�N�o�n�� /etc/X11/Xorg.conf �̭��h�]�w�n�C�Ӧr�������|�~��C
[root@linux xdm]# kdm
[root@linux xdm]# netstat -tlunp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:6000 0.0.0.0:* LISTEN 5920/X
tcp 0 0 :::6000 :::* LISTEN 5920/X
udp 0 0 :::177 :::* 5918/kdm
# �n�ݨ즳 177 �� udp port �X�{�~��� �]�����O xdmcp ��w����ť��f�C
# ���L�A�p�G�n�ݬݬO�_�����\�Ұ� X ���ܡA�N�o�n�d�\ 6000 �o�� port �o��
# �p�G�S���ݨ� port 6000 ���ܡA�Ьd�\ /var/log/Xorg.0.log ��I
# �p�G�Q�n�]�w�}���N�۰ʰ��檺�ܡA�i�H�Q�� chkconfig �[�J xfs �A
# �]�i�H�N kdm �o�ӫ��O�g�� /etc/rc.d/rc.local �o���ɮפ���
|
���M�O�D���ƪ��A���L���F�קK�x�Z�A�o���٬O�o�n�����j�a�C(�]�� CentOS ���ݭn�Ұ� X �N������� xdmcp �n�J)
�����W�������լO�b run level �� 3 �����ҤU�A�B����b���檺�ɭԡA
/var/log/messages �P /var/log/Xorg.0.log �o����ɮפ��e���èS�� kdm ���������~�T����
�ܭ��n�ڡI�]���Y�ǮM��p�G�S�����\���Ұ� X �ɡA�L�N�L�k���ѵn�J�O��
�Τ�ݵn�J
�Τ�ݬO Linux �D���G
�p�G�Q�n�i�� XDMCP ���Ѫ� X �������n�J Linux �D���ɡA�b Linux ���U�i�O�e�����ܡ�
���U���y�{�O�b�y�Τ�ݡz���檺��㤣�O��診�� XDMCP �Ҧb�� Linux �D���աI
0. �аȥ��n�b X Window �����A�i�J X Window ���覡���G
[root@client ~]# startx
# ��
[root@client ~]# init 5
�@
1. �b X Window ���e�������A�ҥΤ@�� shell �A�M���J�G
[root@client ~]# xhost + 192.168.1.100
192.168.1.100 being added to access control list
# ���]�ڭ�診�� Linux �D���� IP �� 192.168.1.100
[root@client ~]# init 3 <== ���� X Server
2. �b��r�����U��J�G
[root@client ~]# X -query 192.168.1.100
# �i�J X Window �o�I
|
�p�G�@�����Q���ܡA�z���ӴN����� X Window ���e�����U�h�n�J���ݥD���o��
�Τ�ݬO Windows �D���G
���� XDMCP
�p�G�Q�n�������ܡA�N�o�˰��G
[root@linux xdm]# killall -9 kdm
[root@linux xdm]# /etc/init.d/xfs stop
|
�o�˴N�i�H�N xdmcp ���L�����o�� ^_^
���M xdmcp �N�w�g�ܦn�ΤF�A���L�A�N�H�ǿ�t�פW�����A�L�u���O�C�ڡ��
�o�ӮɭԡA�ڭ̥i�H�Q�� VNC (Virtual Network Computing) �o�Ӧn�Ϊ��N�N�Ӷi�@�B�]�w�ڭ̪�
X Window �n�J�t�γ�C
VNC �����n�z�L VNC Server �P VNC client �n�骺�I�۷f�t�A�N�i�H�i�����ֳt�@�I����ƶǿ�C
�� VNC �p�G�Q�n�}�G���@�I���ܡA�]�O�ݭn�f�t xdmcp ���ա�]���p�G�O�º�ϥ� VNC �s���� Xorg
(�� XFree86) ����²�檺�e���A�u���O....���I���n�Ρ�
��� VNC Server �|�b�D���h�}�@�ӵ{�Ǧb���� Client ���n�J�n�D�A
���� Client �n�J����A�~�h���� Window manager ���ҰʡC�ӳo�� Window manager ���Ұʤ覡���ܦh�ءA
�̶��K���N�O�Q�� Xorg �w�]�� twm �o�ӵ����z�{���A�L�u���O���n�ݡ�
�e�����I���o�ˡG

�� 19 �B�ϥ� twm �s�u�� VNC Server ������d��
�u�����ܦn�ݳ�㨺����H���ڭ̥i�H�z�L��� VNC ���Ұʳ]�w�ɡG xstartup �ӳ]�w���P�� Window manager �A
�t�~�A�ڭ̤]�i�H�z�L�ҥ� kdm �� gdm �o��Ӧn�Ϊ� display manager �ӥN���z Window manager �O��
����������w�ϥάd�� (Query) XDMCP ���覡�ӱҰ� VNC �A�Ӥ��O�����Ұ� startkde �o�ӵ{��������
�ҥH�A���U�ڭ̴N�����ӳ]�w�i�H�s���� xdmcp �W�� VNC Server �a�I
1. ���� kdm �䴩 xdmcp �Ҧ�
[root@linux ~]# cd /etc/X11/xdm
[root@linux xdm]# vi kdmrc
[Xdmcp]
Enable=1
2. �� client �i�H�z�L X �ӵn�J�t�ΡI�P�v���������]�w
[root@linux xdm]# vi Xaccess
*
3. �Ұ� kdm ��I
[root@linux xdm]# /etc/init.d/xfs start
[root@linux xdm]# kdm
[root@linux xdm]# netstat -tlunp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:6000 0.0.0.0:* LISTEN 5920/X
tcp 0 0 :::6000 :::* LISTEN 5920/X
udp 0 0 :::177 :::* 5918/kdm
# �n�ݨ즳 177 �� udp port �P port 6000 �~��F
# �p�G�S���ݨ쪺�ܡA�N�o�n�d�ߩ��U�X���ɮת����e�A�ݬݿ��~�T���F�I
# a. �����d�\ netstat -tlunp
# b. �����d�\ /var/log/Xorg.log.0
# c. �����d�\ /var/log/messages
# d. �����d�\ /var/log/kdm.log
4. �άY�����إ� passfile �� VNC �s�u�ɨϥ�
# �]�� VNC �}���C�� port ���O���Y�S�w�ϥΪ̵n�J���A�]���A
# �C�� VNC server ���|�ҥΦۤv�� port �O��ڻ��̤j�i�}��� 10 �ӡ�
# �����o�̰��]�Q�� dmtsai �o�ӨϥΪ̨Ӱ��� VNC �A����L�N�����n�����U�X�Ӱʧ@�G
4.1 �إ߳s�u�αK�X
[root@linux xdm]# su dmtsai
[dmtsai@linux xdm]$ vncpasswd
Password: <== �o�̽п�J�K�X
Verify: <== �A��J�@����
# �S�O�`�N�A���F�w���_���A�K�X�����O������I
# �ܤ֭n�j�Ӧr���A�B����P�b���ۦP��
# �K�X�إ߫�A�|�b /home/dmtsai/.vnc/passwd �o���ɮפ��O���F�A���K�X��
# �P�ɡA�b�o�ӥؿ��U�A�٦��]�w�� xstartup �i�H�Q�γ�I ^_^
4.2 �ק�]�w�� xstartup
[dmtsai@linux xdm]$ vi /home/dmtsai/.vnc/xstartup
# �N�o���ɮפ����Ҧ���Ƴq�q���L���ѱ��㤣�ݭn�O�d��
4.3 ���}���@�����ϥΪ̪��e��
[dmtsai@linux xdm]$ exit
5. �ק� /etc/sysconfig/vncserver �ɮפ��e
# �o���ɮO FC4 �w�]���Ұ� VNC ��Ū���ɡA�ҥH�ڭ̥i�H�ק�L��
[root@linux xdm]# vi /etc/sysconfig/vncservers
# �N�쥻����Ƨ令�o�ˡG
VNCSERVERS="2:dmtsai"
VNCSERVERARGS[2]="-geometry 800x600 -query localhost"
# �N��O���A�ڭ̭n�Ұʤ@�� VNC �b port 5900+2 �Y 5902 ���N��A
6. �Ұ� VNC server
[root@linux xdm]# /etc/init.d/vncserver start
# ���ɦb /home/dmtsai/.vnc/ �̭����ӷ|���X���ɮױz���ӭn�`�N���A
# �̭��n���N�O dmtasi.linux.dmtsai.tw:2.log �o���ɮסA�ɦW���ѨӬO�G
# username.hostname.domainname:[port number].log �A�]���ڭ̬O�ҥ� 5902 �A
# �ҥH�N�� :2.log �����ɦW�ա�ȥ��ݨ�̭��S�����~�~����
# �p�G�o�{�䤣��/usr/X11R6/lib/X11/xserver/SecurityPolicy �����~�A�����L���n���
7. �d�\�]�w���G
[root@linux xdm]# netstat -tulnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:5802 0.0.0.0:* LISTEN 15287/Xvnc
tcp 0 0 0.0.0.0:5902 0.0.0.0:* LISTEN 15287/Xvnc
tcp 0 0 0.0.0.0:6000 0.0.0.0:* LISTEN 15019/X
tcp 0 0 0.0.0.0:6002 0.0.0.0:* LISTEN 15287/Xvnc
tcp 0 0 :::6000 :::* LISTEN 15019/X
tcp 0 0 :::6002 :::* LISTEN 15287/Xvnc
udp 0 0 0.0.0.0:32924 0.0.0.0:* 15287/Xvnc
udp 0 0 :::177 :::* 15017/kdm
|
�]�w�n���]��²���㨺���F�����o��h��z�H
��]�L�L�A�]���Ʊ�j�a�i�H�b���P�� Linux distributions �]������Q���[�]�n
XDMCP �P VNC �A�p�G�z������εn���ɪ����e��T�A
�������ӷ|����e�� debug ���ա� ^_^
�t�~�A�ƹ�W�Ұ� VNC �� script �O�� vncserver �o�ӫ��O�ұҥΪ��A
�z�]�i�H�����Q�άY�Ө��������U�F�G
[root@linux ~]# vncserver :3
You will require a password to access your desktops.
Password: <== �N��J�K�X�a�I
Verify: <== �A��J�K�X�a�I
New 'dmtsai.linux.dmtsai.tw:3 (dmtsai)' desktop is dmtsai.linux.dmtsai.tw:3
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/dmtsai.linux.dmtsai.tw:3.log
|
�p���@�ӡA�N�i�H�ҥΤ@�� port �� 5903 �� VNC �A���o��
�z�i�H�A�ת��h�� logfile �d�@�d�ڡ�ܩ��������ܡA�i�H�ΡG
[root@linux ~]# vncserver -kill :3
|
�o�˴N��������o������I����p�G�Q�n�s���� VNC Server ���ܡA
�b Linux ���U�i�H�Q�� KDE �� krdc �o�价�ݳs�u�{���A�p�G�O Windows ���ܡA
�N�o�ݭn VNC Client �o��z�i�H�e�����U�������G
�����U�� Free Edition �Ӵ��լݬݴN�n�F�C�w�˹L�{�ڭ̴N�����F��
�w�˧�������A��������y�}�l�z-->�y�{�����z-->�yRealVNC�z-->�yRun VNC viewer�z��A
�X�{�p�U�������G

�� 20 �BVNC viewer ����d��
��J�F�z���D�� IP �P�� VNC ������ port ����A�|�X�{�@�ӱK�X�����G

�� 21 �BVNC viewer ����d��
�O�o�ڡ�o�̪��K�X�����O�y�z�Q�� vncpasswd �ҫإߪ��K�X�z�A�Ӥ��O�n�J�̪��K�X�ڡ�
���U Enter ����A�p�G���Q���ܡA�N�|�X�{�p�U���ϥ��o��

�� 22 �BVNC viewer ����d��

�� 23 �BVNC viewer ����d��
�ܤ����a�I ^_^ �o�˴N����b Client �ݵn�J Linux �D���o��
�ӥB�٥i�H�h�H�@�ΩO��u�O�Ρ� ^_^�C���O�A�p�G�z�]�w��������A
�b�n���ɦѬO�X�{�o�өN�N�G
�yXDMCP fatal error: Manager unwilling Host unwilling�z�A
�N�O /etc/X11/xdm/Xaccess �o���ɮת��]�w�ݭn�ܧ�F�I
�t�~�A���ǪB�ͤ@�w�|ı�o�_�ǡA���N�O�A���ƻ�ڪ� VNC ���A���� server / client �ݵe���ä��O�P�B���O?
�o�O�]�� Linux �������Ѧh�� VNC server �A�o�̬O�U�ۿW�ߪ��A�ҥH���M�N���|�P tty7 ���e���P�B�F�C
���O�p�G�z�Q�n�P Linux �� tty7 �P�B���ܡA�i�H�Q�� VNC ���X���� X Server �ϥΪ��Ҳըӥ[�H�]�w�Y�i�C
�p�G�z�O CentOS 4.x �o�� distribution ���ܡA���߱z�A�t�ιw�]�w�g�N vnc.so �o�ӼҲ����X�F�A�z�i�H�d�\
/usr/X11R6/lib/modules/extensions/ �o���ɮסA�Y�i���D���S�� vnc.so �o�ӼҲաC�p�G�z�S���o�ӼҲժ��ܡA
�аѦ�
http://phorum.study-area.org/viewtopic.php?t=25713 �o�@�g�峹�������A
�̧Ǩӳ]�w�a!
[root@linux ~]# vi /etc/X11/xorg.conf (�� XF86Config)
Section "Module"
....
Load "vnc"
EndSection
# �b Module �o�� section �����[�J vnc �o�ӼҲէY�i
Section "Screen"
Identifier "Screen0"
Device "Videocard0"
Monitor "Monitor0"
Option "passwordFile" "/etc/vnc/passwd"
DefaultDepth 16
......
EndSection
# ���]�z�� vnc �K�X�ɮש�m�b /etc/vnc/passwd ���Y�A
# �o�ӮɭԴN�o�n�N�K�X�ɤ��e�g�� Screen �o�� section �����F
|
���ɵ��L���s�Ұʤ@�U kdm �Ϊ̬O���s�i�J run level 5 ���ɭԡA�z�N�|�o�{�h�F�@�� port 5900 �O�A
�K�K�A�dzƦP�B�n�J�a ^_^
����O RSH ���A���O�H���A�o�O���������P�D���������ۡy�����ާ@�z���귽���@�Ӥ�k�C
���N�n���ϥΡy ssh dmtsai@localhost date �z�����������k�աI
�ڭ̥i�H�z�L rsh �Ӿާ@���D���ڡC�o�� RSH �N�O�Q�٬� R Shell ���N�N�o��
�ثe RSH �ܤֳQ�ϥΨ�@�몺���A���W���A�ר�O�� Internet �}�D���A
�o�O�]�� RSH ���M�I�ʫܰ��I�L�����O���X�ǿ�A�ӥB�@�ӳ]�w���}�A�i��|���Ҧ��H����ϥ� RSH �ӵn�J�D���I
���L�ARSH �o�O�ާ@�O���q�� (cluster) �̭��̱`�����A�Ȥ��@�I
�ҿת��O���q���A²�檺���N�O�y
�N�ܦh���D���z�L�����s���b�@�_�A
�H�䤤�@���D���@���D�n�ޱ��q�� (�Ϊ̺٬� master) �A��L�D���ȭt�d�Ӧ� master ���n�D
(�ҥH�Q�٬� slave)�F�Ҧ����q���u�@���O�� master �Ҵx���A slave �ȭt�d�B�⪺�����C�z
�o�]�N�O���A slave �j���N�ȴ��� CPU ���B��椸�A��L���Ƴ��O master �t�d�ӹB�@�C
���M�A�ڭ̤]�O�u�n�ޱ� master �����D�n�q���Ӥw�C�b�o�˪����p�U�A slave ���� master �����O�A
�̥D�n�N�O�z�L RSH �ڡI (���M�A�]�i�H�z�L SSH �t�X���_�ӹF���o�˪��u�@�I)�C
�����h�� cluster �����СA�i�H�ѦҤ@�U�������e�g���@�g�p�峹�G
�ܩ� RSH server �P Client �����ʥi�H�ϥΤU�����ϥܨӬd�\�G

�� 24 �BRHS Server/Client ���ʥܷN��
�W�Ϥ��b RSH server �������X�ӳ]�w�ɬO�o�˪��G
- /etc/hosts�G�D�n�W�d RSH server/client ���D���W�ٻP IP �����I
- /etc/hosts.equiv�G�W�d�X���@�� client �i�H�s�W�o�� RSH server�F
- ~user/.rhosts�G�W�d�X���ӨϥΪ̥i�H���ݭn��J�K�X�Y�i���� RSH�F
- /etc/pam.d/rsh�G�W�d root ��_�ϥ� RSH ���]�w�ɡC
���M RSH �ثe�w�g�ܤֳQ�ϥΡA���O�b�����D�����s�u�W���٬O���L���s�b�����ȰաI
�]���A���U�ڭ̴N�ӽͤ@�ͦp�˳o�� RSH �a�I
RSH Server
��� R Shell ���ܦh���u��P�Ұʪ� port �A�`���� R Shell �u�㦳 rexec, rlogin, rsh ���A
�ӳo�Ǥu�㳣�����줣�P�� port �W���A�A�i�H�� /etc/services �W�d�\�@�U 512, 513, 514 �o�T�� port �a�I
RSH Server ���ҰʡG
�p
�� 24 �ҥܡA�ڭ̦b RSH Client �q���W���Q�n�ϥ� RSH Server �W�Y����ƮɡA
���� RSH server �۵M�N�o�n�Ұ� RSH �o���A���o�I����p��ҰʩO�H²�檺�ܡ�
�N�Q�� super deamon �ӱҰʡA
�ڭ̻ݭn�� rsh �� rsh-server ��ӮM��~���I�Цۦ�w�˧a�I
�t�~�A rsh-server �@���ѤT�ӪA�ȡA���O�O�y rexec, rlogin, rsh �z�A�ڭ̥���°Q�� rsh �a�I
�w�˧�������A�����ҰʧY�i�G
[root@linux ~]# vi /etc/xinetd.d/rsh
service shell
{
disable = no
socket_type = stream
wait = no
user = root
log_on_success += USERID
log_on_failure += USERID
server = /usr/sbin/in.rshd
}
# �S���I�u�n�N disable �令 no �Y�i�I
[root@linux ~]# /etc/init.d/xinetd restart
[root@linux ~]# netstat -tlnp | grep 514
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:514 0.0.0.0:* LISTEN 23369/xinetd
# ���ݨ� 514 �� port �X�{�N��F�I
|
�]�w�i�H�ϥ� RSH ���ӷ��D���P�b���G /etc/hosts,
/etc/hosts.equiv, ~user/.rhosts
���]�ڤw�g�b /etc/hosts �̭����n�F�ڤ����D���� IP �P�D���W�٪������F�A
�Ҧp�A�� 192.168.1.2 ������ /etc/hosts �̭��O�o�˪��G
[root@linux ~]# vi /etc/hosts
127.0.0.1 localhost localhost.localdomain
192.168.1.2 rsh.server rshserver
192.168.1.100 rsh.client rshclient
# �W���Ȧ��ⳡ�D���A���] RSH server �� IP �O 192.168.1.2 �աI
|
�o���ɮܭ��n�A�]���ڭ̪� RSH �q�`�O�Q�ΥD���W�٨ӧ@�����O���U�F���A
�ҥH�o�A�z�ϰ���������D���W�ٻP IP �����n�]�w������������_�ӡA�_�h���D�N�j�F�C
�b�W�������A�A�|�o�{��A��곾�������I�O���� rsh.server �������A
���ڷQ�n�� 192.168.1.100 ��Y�O rsh.client ���������s�i�� rsh.server ����@�ǫ��O���ܡA
���ڴN�o�n�Ұ��v���~��I���ɴN�o�n /etc/hosts.equiv �ӳB�z�F�C�o���ɮת��榡�O�o�˪��G
[root@linux ~]# vi /etc/hosts.equiv
rsh.client dmtsai
# �o���ɮת��榡�O [hostname] [username]
# �N�A�n�}�ϥΪ̻P�Y�D�����L�����n�g�W�h�Y�i�I
|
�o�˴N���n�F�]�w�F�I���ӥ���Q�n�n�J�o�� rsh.server �������D���A�u�n�N�L���D���W�ٻP IP �����g�J
/etc/hosts �A�M��A�N�ӥD���W�ټg�J /etc/hosts.equiv �A�N���\�F�I
�o���ɮת��]�p�u�n�O�b�W�d�y�i�H���ο�J�K�X�N����i�J����������O�z���]�w�աI
���O�Ъ`�N�A�y
�b�w�]�����p�U�A root �O�����\�ϥ� rsh
�n�J rsh.server �������C�z�o�ӫܭ��n�I���n�ϥ� root �@�����հڡI�S���Ϊ��C
��h�� hosts.equiv �]�w�ȡA�аѦ� man hosts.equiv �o�I
���A�i��|�o�{�@��ơA���N�O�C���D���P�ϥΪ̳��ݭn�t�X���ܡA�� /etc/hosts.equiv �w�]�Ȧ� root �i�ק�A
�p���@�ӹ�b���n�z�I���ɧڭ̥i�H�ϥΨϥΪ̮a�ؿ����ɮרӳB�z��I���N�O ~/.rhosts �o�I
�o���ɮת��]�w�N��²��F�I�u�n�N�ϥΪ̹w�p�n�n�J�������D���W�ټg�J�Y�i�I
[root@linux ~]# vi ~dmtsai/.rhosts
rsh.client
|
�o�˴N OK �աI�N��O���A�ڳo�� rsh.server �W���� dmtsai ���ϥΪ̡A�L�i�H�� rsh.client
�o�ӥD���n�J�åB���ݭn�K�X�Y�i�i�� R Shell ���������O�U�F�u�@�I
�P�˪��A�p�G���ٷQ����L�ϥΪ̥i�H�Ѥ��P���D���n�J�o�� rsh.server �i�� RSH ���ܡA
�P�˦b�L���a�ؿ��s�W .rhosts �o���ɮקY�i�I�p�G�Q�n�����ӷs�W���ϥΪ̳��㦳�o�ӥ\��A
���N�o�˰��G
[root@linux ~]# vi /etc/skel/.rhosts
rsh.client
|
���ӷs�W�ϥΪ̮ɡA�L�̪��a�ؿ����U�N�|�۰ʲ��� .rhosts ���ɮ��o�I ^_^
�� root �]�i�H�ϥ� RSH �G
���q���@�n�A��������ij�z�o�˰��I���O�A�p�G�U�@�z�ݭn�Y�ǪA�ȬO root �]�ݭn���A
���γ\�N�o�n�}�� root �ϥ� RSH �n�J�D���F�C��� root ����ϥ� rsh
�O�]�� PAM �����D�Ӥw�A�ҥH�A�A�u�n�N /etc/pam.d/rsh �o���ɮ��ѱ��@��Y�i�G
[root@linux ~]# vi /etc/pam.d/rsh
#%PAM-1.0
# For root login to succeed here with pam_securetty, "rsh" must be
# listed in /etc/securetty.
auth required pam_nologin.so
#auth required pam_securetty.so
auth required pam_env.so
auth required pam_rhosts_auth.so
account required pam_stack.so service=system-auth
session required pam_stack.so service=system-auth
|
�N�W���o�@����ѱ��A�ߨ�N���� root �n�J rsh �D���աI���M�աA�p�G�z��ߦ����D�A
����ק�t�@���ɮפ]�i�H�G
[root@linux ~]# vi /etc/securetty
.....(�ٲ�).....
rsh
|
�[�J�o�@��]��I�`�N�A�W���o����ɮO�㦳�����ʪ��A�ҥH�A�z�u�n�ק����@�ӧY�i�A
������ӦP�ɶi��I�M��N�D���W�ٻP root �������g�J
/etc/hosts.equiv
�ɮפ��Y�i�I�A�� root �N����ϥ� rsh �o�I���O�A�����٬O���ܫ�ij�}�� root �ϥ� RSH ��I�`�N�`�N�I
RSH Client
�o�� RSH client �����O rsh �w�]�O���� root ���檺�I�ҥH���n�ϥ� root �Ӵ��աI
�t�~�A RSH Client �̦n�P RSH server �㦳�ۦP���b���Ӱ��� rsh ������|�����D��I
���� RSH �G
���U�ӡA���M�n�i������o��Ш� rsh.client ���������W���A�ϥ� rsh �o�ӫ��O�ӤU�F���O�a�I
[dmtsai@rshclient ~]$ rsh [-l ���ݱb��] [���ݥD���W] [���ݥD�����O]
�ѼơG
-l �G�@��ӻ��A server �P client �y�n���ۦP���ϥΪ̱b���W�١z����n���I
�p�G�S�����ܡA����z�����n���w server ���ϥΪ̱b���W�~��I
���ݥD���W �G�z�n�n�J������ rsh.server �D���W�١A�O�o�P /etc/hosts �����I
���ݥD�����O�G�z�n�b���ݾ����W���U�F������O�H
�d�Ҥ@�G�b rsh.server �W���U�F ls -l / �o�ӫ��O�G
[dmtsai@rshclient ~]$ rsh rsh.server 'ls -l /'
.....��X�ٲ�.....
# �`�N��A�ڬO�ϥ� dmtsai �o�Ӥ@�먭���ϥΪ̡A�ӥB rshserver rshclient
# �ⳡ�D���W�������@�ӦW�� dmtsai ���ϥΪ̱b���~���I�ܩ� ls -l /
# �h�O�b rsh.server �D���W�������O�I�d�N�d�N�I
|
�@��ӻ��A�ѩ� RSH server/client �̦n�O�n���ۦP���b���A�p���@�Ӥ~����קK�ܦh�����n���v�����D(
permission denied. )�C�ҥH���A�q�` RSH �i��|�f�t����|�~��ͨ쪺 NIS/NFS �����A���~�O�I
�o���A�I�H
�t�~�A rsh �����O�q�`�ȾA�X��@���O�Ӥw�A�ҥH�p�G�A�����O��ܪ� (���F�ܦh�Ѽ�)�A
���̦n�N���@�����O�γ���A�_�ӡA�i�H�קK���O�U�F���~�����D��I ^_^
�Q�� rcp �ƻs�G
���F rsh �i�H�b���ݪ����ޱ��t�Υ~�A�ڭ̥i�H�z�L rcp �Ӷi��ƻs��I���o�� rcp �P scp �X�G�@�Ҥ@�˰աI
�ӥB rcp ���ѼƴX�G�P cp �@�Ҥ@�˭��I�t�~�A rcp �]�O�z�L RSH �o�� 514 �� port �Ӷi���ƪ��ǿ骺�C
²�檺�����p�U�G
�d�ҡG���d�\���ݥD���������ơA�M��N�L�ƻs�L�ӡG
[dmtsai@rshclient ~]# rsh rsh.server 'ls -l ~'
drwx------ 3 dmtsai dmtsai 4096 Dec 27 2005 Desktop
-rw-r--r-- 1 dmtsai dmtsai 3385 May 29 17:52 bashrc
drwx------ 3 dmtsai dmtsai 4096 Mar 6 2006 mail
-rw-r--r-- 1 dmtsai dmtsai 883888 May 29 17:51 netcdf.tar.gz
drwxr-xr-x 2 dmtsai dmtsai 4096 Jul 26 16:05 test
-rw-rw-r-- 1 dmtsai dmtsai 34816 Mar 19 2006 testing.ppt
[dmtsai@rshclient ~]# rcp -r dmtsai@rsh.server:~/mail .
# �[�W -r �O���F�n�ƻs�ؿ���I�_�h���ܡA�i�H�����ƻs�Y�i�I
|
�A���@���A���o�� RSH �ثe�Ȧ��b�Y�ǯS�������X�~�|�Ψ�F�I
�Ҧp���Ӭy�檺�s��T�y Cluster �z�I���L�p�G�n�� Cluster ���ܡA
�o�n�[�J NIS/NFS �����A�����I���N���z�n�n�o�i�աI ^_^
�ڭ̴��b��¦�g�̭��L
Linux ���ƥ������A
�ӽg�����б`�Ϊ��ƥ����O�A�]�A tar, dd, cp �����A���L���ɨå����к����A�ҥH���ӫܴΪ������u��S�����СA
���N�O�o�Ӧa��n�ͨ쪺 rsync �աI�o�� rsync �i�H�@���@�Ӭ۷��Ϊ����a�ƴ��t�Ϊ��ƥ����O��I
�]�� rsync �i�H�F�������y��� (mirror) �z���\��O�I
rsync �̦��O�Q�n���N rcp �o�ӫ��O���A�]�� rsync �����ǿ骺�t�ק֡A�ӥB�L�b�ǿ�ɡA
�i�H��糧�a�ݻP���ݥD�����ƻs���ɮפ��e�A�ӶȽƻs��ݦ��t�����ɮצӤw�A�ҥH�ǿ骺�ɶ��N�۹諸���C�ܦh�I
���~�A rsync ���ǿ�覡�ܤ֥i�H�z�L�T�ؤ覡�ӹB�@�G
- �b�����W�����B�@�A�Ϊk�N�P cp �X�G�@�Ҥ@�ˡA�Ҧp�G
rsync -av /etc /tmp (�N /etc/ ����Ƴƥ��� /tmp/etc ��)
- �z�L rsh �� ssh ���q�D�b server / client �����i���ƶǿ�A�Ҧp�G
rsync -av -e ssh user@rsh.server:/etc /tmp (�N rsh.server �� /etc �ƥ��쥻�a�D���� /tmp ��)
- �����z�L rsync ���Ѫ��A�� (daemon) �Ӷǿ�A���� rsync �D���ݭn�Ұ� 873 port�G
1. �A�����n�b server �ݱҰ� rsync �A �� /etc/xinetd.d/rsync �Y�i�F
2. �A�����s�� /etc/rsyncd.conf �]�w�ɡF
3. �A�����]�w�n client �ݳs�u���K�X��ơF
4. �b client �ݥi�H�Q�ΡGrsync -av user@hostname::/dir/path /local/path
���T�ضǿ�Ҧ��t���b�S���_�� (:) �Ӥw�A���a�ݶǿ餣�ݭn�_���A�z�L ssh �� rsh �ɡA�N�o�n�Q�Τ@�ӫ_�� (:)�A
�p�G�O�z�L rsync daemon ���ܡA�N�o�n��ӫ_�� (::) �A���Ӥ����z�ѰաI�]�����a�ݳB�z��²��A
�ӧڭ̪��t�Υ��ӴN������ ssh ���A�ȡA�ҥH�A���U�����N�������ЧQ�� rsync �z�L ssh �ӳƥ����ʧ@��C
���L�A�b�����e���̥��Ӭݬ� rsync ���y�k�a�I
[root@linux ~]# rsync [-avrlptgoD] [-e ssh] [user@host:/dir] [/local/path]
�ѼơG
-v �G�[��Ҧ��A�i�H�C�X��h����T�F
-q �G�P -v �ۤϡA�w�R�Ҧ��A��X����T����֡F
-r �G���j�ƻs�I�i�H�w��y�ؿ��z�ӳB�z�I�ܭ��n�I
-u �G�ȧ�s (update)�A���|�л\�ؼЪ��s�ɮסF
-l �G�ƻs�s���ɪ��ݩʡA�ӫD�s�����ؼЭ�l�ɮפ��e�F
-p �G�ƻs�ɡA�s�P�ݩ� (permission) �]�O�s���ܡI
-g �G�O�s��l�ɮת��֦��s�աF
-o �G�O�s��l�ɮת��֦��H�F
-D �G�O�s��l�ɮת��˸m�ݩ� (device)
-t �G�O�s��l�ɮת��ɶ��ѼơF
-I �G������s�ɶ� (mtime) ���ݩʡA�ɮפ��W�|����ֳt�F
-z �G�[�W���Y���ѼơI
-e �G�ϥΪ��q�D��w�A�Ҧp�ϥ� ssh �q�D�A�h -e ssh
-a �G�۷��� -rlptgoD �A�ҥH�o�� -a �O�̱`�Ϊ��ѼƤF�I
��h�����аѦ� man rsync ���ѻ��I
�d�Ҥ@�G�N /etc ����Ƴƥ��� /tmp ���U�G
[root@linux ~]# rsync -av /etc /tmp
....�e����X�ٲ�....
sent 23007335 bytes received 32280 bytes 5119914.44 bytes/sec
total size is 22870014 speedup is 0.99
# �Ĥ@���B�@�ɷ|�����[���ɶ��A�]�������إ߹��I�p�G�A���ƥ��O�H
[root@linux ~]# rsync -av /etc /tmp
building file list ... done
sent 77105 bytes received 20 bytes 154250.00 bytes/sec
total size is 22870014 speedup is 296.53
# �@�I�ߨ�N�]���F�I�ǿ骺��Ƥ]�ܤ֡I�]���A�����A�Ȧ��t�����ɮ|�Q�ƻs�C
�d�ҤG�G�Q�� dmtsai �������A�N rsh.server �ϥΪ̮a�ؿ��ƻs�� /tmp
[root@linux ~]# rsync -av -e ssh dmtsai@rsh.server:~ /tmp
The authenticity of host 'rsh.server (192.168.1.2)' can't be established.
RSA key fingerprint is 29:b8:a9:32:ea:d8:ff:97:6c:42:3b:aa:11:ab:55:dd.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'rsh.server' (RSA) to the list of known hosts.
dmtsai@rsh.server's password:
receiving file list ... done
....�ɮ�X�ٲ�....
sent 8436 bytes received 43224862 bytes 2789245.03 bytes/sec
total size is 43189031 speedup is 1.00
[root@linux ~]# ll -d /tmp/dmtsai
drwxr-xr-x 22 dmtsai dmtsai 4096 Sep 18 23:25 /tmp/dmtsai
# �@�I�o�˴N���n�ƥ��աI��²��a�I
|
�A�i�H�Q�ΤW�����d�ҤG�Ӱ����ƥ� script ���ѦҡI���L�n�`�N���O�A
�]�� rsync �O�z�L ssh �Ӷǿ��ƪ��A�ҥH�A�i�H�w�� dmtsai �o�ӳå�s�@�X�K�αK�X�n�J�� ssh ���_�I
�p���@�ө��Ყ�a�ƴ��t�δN����۰ʪ��H crontab �Ӷi��ƥ��F�I²����z�I
�K�K�X�� ssh �b���ڭ̦b�W�Y�w�g���L�F�A���g shell script ����O�]�O�����n�����I
�Q�� rsync �Ӷi��A���ƥ��u�@�a�I ^_^�I
�ܩ��h�� rsync �Ϊk�i�H�Ѧҥ����᭱�ҦC�X��
�ѦҸ��������I
- Telnet �P SSH ���O���ݳs�u���A���A����ڭ̳��|���˨ϥ� SSH ���קK�ϥ� Telnet �O�H��]��b�H
�]�� Telnet ���F�ϥΡy���X�z�ǰe��ƥ~�A���� telnet �N�O�ܮe���Q�J�I���@�Ӧ��A���A�ҥH���M�]�N����M�I�F�C
�ܩ� ssh ���]���O�ܦw�����I�ѥx�W�q���M���B�z�p�ժ����i�H���㪺�o�{ openssl + openssh
�]�O�`�`���|�}�b�o�G�I���L�A��_ telnet �ӻ��A�T��O�y�L�w���@�ǡI
- �й��ջ��� SSH �b Server �P Client �ݳs�u�ɪ��ʥ]�[�K����F
�Q�� key pair �ӹF��[�K������GServer ���� Public Key �� Client �ݺt�� Private key �A�H���ѫʥ]�ǰe�ɪ��[�K�B�ѱK�I
- �а� SSH ���]�w�ɬO���@�ӡH�p�G�ڭn�ק��� root �L�k�ϥ� SSH �s�u�i�J�ڪ�
SSH �D���A���Ӧp��]�w�H�S�A�p�G�n�� badbird �o�ӨϥΪ̵L�k�n�J SSH �D���A�Ӧp��]�w�H
SSH �]�w���ɦW�� sshd_config �A�q�`��m�b /etc/ssh/sshd_config ���F�p�G���Q�� root �n�J�A�i�H�ק�
sshd_config �����ѼƦ����G�yPermitRootLogin no �z�A�í��s�Ұ� ssh �ӳ]�w�I�p�G�n�� badbird
�ϥΪ̵L�k�n�J�A�P�˦b sshd_config �̭��]�w���G�yDenyUsers badbird�z�Y�i�I
- �b Linux �W�A�w�]�� Telnet �P SSH ���A���ϥΪ���f(port number)�U���h�֡H
telnet �P ssh ����f���O�O�G23 �P 22�I�аѦ� /etc/services ��I
- �p�G�o�{�ڵL�k�b Client �ݨϥ� ssh �{���n�J�ڪ� Linux �D���A���O Linux
�D���o�@�����`�A�i���]����H(������Bknown_hosts...)
�L�k�n�J����]�i��ܦh�A�̦n���d�ߤ@�U /var/log/messages �̭������~�T���ӧP�_�A���M�A�٦���L�i���]���G
- �Q������צ��F�A�ХH iptables -L -n �ӹ�ݡA���M�]�n��� /etc/hosts.deny�F
- �i��ѩ�D�����s�}���L�A public key ���ܤF�A�Эק�z�� ~/ssh/known_hosts �̭����D�� IP �F
- �i��ѩ� /etc/ssh/sshd_config �̭����]�w���D�A�ɭP�z�o�ӨϥΪ̵L�k�ϥΡF
- �b /etc/passwd �̭��A�z�� user ���㦳�i�H�n�J�� shell �F
- ��L�]��(�p�b���K�X�L������)
- �J�M ssh �O����w������ƫʥ]�ǰe�覡�A����ڴN�i�H�b Internet �W���}��ڪ�
Linux �D���� SSH �A�ȤF�ܡH�I�л����z��ܪ����ת���]�I
�̦n���n�� Internet �}��z�� SSH �A�ȡA�]�� SSH ���[�K�禡�w�ϥΪ��O openssl �A�@�� Linux distribution �ϥΪ�
SSH �h�O openssh �A�o��ӮM��ƹ�W�������֪��|�}�Q�o�G�L�A�]���A�̦n���n�� Internet �}��A����
SSH ���D�����ϥ��v���O�ܰ����I
- �p�G�ڷQ�n�N server �����n��Ƴƥ��� backserver�A�p�G�i�H�ϥ� rsync �z�L ssh ���q�D�A
�A�i�H�й��ճo�˰��G
- ���b server �W���H root �ظm ssh �� public �P private key pair �F
- �N public key �ǰe�P�]�w�� backserver �W���Y�ӨϥΪ����ҤU�F
- �b backserver �W���s�@�n�w�p�n�s��ƥ���ƪ��ؿ��I���I�b��y�v���z���]�w�W�I
- �b server �W���]�w�n rsync ���ƥ� script ��
- �Q�� crontab �C�j�@�q�ɶ��۰ʲ��a�ƥ��C
�Ш̷ӤW�z���@�k�b�z���ⳡ�D���W���i����ջP��@�C(�����Ѹѵ�)