�����m�点
�{�e�̃^�C�g�����u�~�߂��Ȃ���Ɩ��T�[�o�̊Ǘ���v�Ƃ��Ă���܂������AUNIX�ɓ��������L�����e�͈̔͂��u�~�߂��Ȃ�UNIX�T�[�o�̃Z�L�����e�B��v�ƃ^�C�g���̕ύX�������Ă��������܂����B�i2003/10/25�A�ҏW�ǁj
�@�u��3�� �T�[�r�X���Z�L���A�ɂ��邽�߂̗��p�����v�͋Ɩ��T�[�o�̗��p�����ɂ��Z�L�����e�B�̌���Ƃ��āA�ғ����̃T�[�r�X�ɑ���A�N�Z�X�������Љ���B����́A�@�����ƈ���ғ����`���t�����Ă����Ɩ��T�[�o�Ȃǂ̉^�p�ɂ����āA���ӂ��ׂ��d�v�Ȏ�����1�Ƃ��āA���ׂẴR�}���h���g�p�ł��Ă��܂��Ǘ��ҁ��������[�U�[�i�X�[�p�[���[�U�[�j�̗��p�����ɂ��Đ�������B
�@UNIX�T�[�o�̉^�p�Ǘ����s�����߂ɂ́A�^�p�Ǘ����s�����[�U�[�A�J�E���g�ɊǗ��ғ����i�X�[�p�[���[�U�[�����j���t�^����Ă���K�v������BUNIX�ł́A�X�[�p�[���[�U�[�����������[�U�[�Ƃ��āAUID 0�̃A�J�E���g�\�\�����̏ꍇroot���Y������B
�@�X�[�p�[���[�U�[�����邽�߂ɂ́AUNIX�V�X�e����root�Ń��O�C�����邩�A�������͈�ʃ��[�U�[�Ń��O�C��������ɁA��q��su��sudo���g����root�̌�������@������B�O�҂́A��q�́uroot���O�C���̊댯���v�Ő�������Ƃ���A�Z�L�����e�B�゠�܂�D�܂����Ȃ��B���̂��ߒʏ�́A��҂̕��@���g���ăX�[�p�[���[�U�[�����邱�Ƃ������߂���B���ɁA�l�b�g���[�N�o�R�Ń��O�C������ꍇ�́A�O�҂�root���O�C���ɂ����@�͔����������悢���낤�B
�@���[�U�[root�Œ���UNIX�V�X�e���Ƀ��O�C�������ꍇ�A���Ȃ��Ƃ����Ɏ����댯���������B
���o�b�N�h�A�̍쓮
���O�C���Ɠ����ɁA�����I�Ƀo�b�N�h�A���N������悤�Ȏd�|��������Ă����ꍇ�A�Ǘ��ғ����������̂ɁA�V�X�e���t�@�C���̍폜�ȂǁA�e���͈͂��V�X�e���S�̂ɋy�ԋ��ꂪ������1�B
������~�X�ɂ��V�X�e���j��
���O�C���Ɠ����ɓ��͂���R�}���h���ׂĂ��Ǘ��ғ����Ŏ��s�����B�Ǘ��ғ����ō�Ƃ��鎞�Ԃ�������Β����قǁA����~�X�ɂ��V�X�e���j��̉\���������Ȃ�B
�@root���O�C���́A�Z�L�����e�B�゠�܂�D�܂����Ȃ����Ƃ��q�ׂ����Aroot���O�C���ȊO�ŊǗ��ғ�������@�Ƃ��ẮAsu��sudo�i�ڍׂ͌�q�j�Ƃ������R�}���h�i�c�[���j���悭�m���Ă���B
�@�{�e�ł́Asu��sudo�̎g�p��O��Ƃ��āAroot��������@�A����ɂ�su��sudo�̗��p�҂𐧌�������@�ɂ��Đ�������B
�@��ʃ��[�U�[�A�J�E���g����su��sudo���g����root������ꍇ�́A�T�[�o�ւ�root���O�C���̕K�v���͂Ȃ��Ȃ�B�f�t�H���g��root���O�C�����֎~�ɂ��邱�Ƃ������߂���B
�@�ŋ߂̊eUNIX�ł́Atelnet�ɂ��root���O�C���̓f�t�H���g�ŋ֎~����Ă���̂Őݒ�̕K�v�͂Ȃ���������Ȃ����A�O�̂��ߊm�F���Ă������ƁB
�@�Ⴆ��Solaris 2.x�̏ꍇ�́A/etc/default/login��CONSOLE�̒l���R���\�[������̂� root ���O�C����������Ă��邱�Ƃ��m�F����B
CONSOLE=/dev/console
�@�����[�g�����e�i���X��ssh�iOpenSSH�j���g���Ă���ꍇ�Asshd_config�i��F/etc/ssh/sshd_config�j��PermitRootLogin�Ɂuno�v��ݒ肷�邩�A�����i�擪��#��t���j�ɂ���悢�B
PermitRootLogin no
�@ftp��telnet���l�A�f�t�H���g�ł͖����ɂȂ��Ă��邱�Ƃ������BOS�W����ftp�T�[�o�̏ꍇ�A/etc/ftpusers��root��1�s���m�F����B/etc/ftpusers��root�̂L�q�A�܂���root deny�ƂȂ��Ă����root���O�C�����֎~����Ă��邱�Ƃ�������B
root deny
�@ftpusers�̋L�q�́A�eftp�T�[�o�ɂ���ĈقȂ�ꍇ������̂ŁA�uman 5 ftpusers�v�ȂǂŊm�F����Ƃ悢�B
�@su�R�}���h�́A��ʃ��[�U�[����root�ւȂǁA���݂̃��[�U�[�A�J�E���g����ʂ̃��[�U�[�A�J�E���g�Ɍ������ւ���i�X�C�b�`����j���߂̃R�}���h���BUNIX�ł͌Â����痘�p����Ă���A�قƂ�ǂ�UNIX�nOS�ɕW���ŃC���X�g�[������Ă���B
�@su�R�}���h�ň�ʃ��[�U�[����root�����ɃX�C�b�`�������ꍇ�́A�P��su�����s����悢�B
% id uid=1003(kimu) gid=100(users) groups=100(users) % su Password: root�̃p�X���[�h����� # id uid=0(root) gid=0(wheel) groups=0(wheel),2(kmem),3(sys),4(tty),5(operator),20(staff),31(guest)
�@root�ɃX�C�b�`�������Ƃ�id�R�}���h�Ŋm�F�ł���B
�@�܂��Aroot�ł͂Ȃ��A�ʂ̂��郆�[�U�[�i����yasu�j�ɃX�C�b�`�������ꍇ�́Asu�̌�ɃX�C�b�`��̃��[�U�[�����w�肷��B
% su yasu Password:yasu�̃p�X���[�h�����
�@����ɂ́A-c�I�v�V�����œ���R�}���h�݂̂����s�����邱�Ƃ��\���B�Ⴆ�Aless�R�}���h���g���āA/var/log/secure�t�@�C���̓��e��root�����œǂޏꍇ�͈ȉ��̂Ƃ���ƂȂ�B
% su root -c "less /var/log/secure"
�@su�R�}���h��root�ɃX�C�b�`�ł��郆�[�U�[�𐧌�����Bsu�R�}���h�̓V�X�e����������̂ݎ��s�\�ł��邽�߁A�ꌩ����ƑO��̂悤�ȃA�N�Z�X�����͕K�v�Ȃ��悤�Ɏv����B�������A�Ⴆ�ΑΏۂƂȂ�T�[�o��100?1000�ȏ�̃��O�C���V�F���������[�U�[������Ă����ꍇ�͂ǂ��Ȃ邾�낤���B��Ɩ��T�[�o�Ƃ��Ȃ�A���ꂮ�炢�̋K�͂͒������Ȃ����낤�B�����āA�����������吨�̈�ʃ��[�U�[�̒��ɂ́A���ӂ͂Ȃ��ɂ���Aroot�̃p�X���[�h���e�ՂȂ��̂ɐݒ肳��Ă��Ȃ����ǂ������������肪�����f�ȃ��[�U�[��A�����ʃ��[�U�[��������A�������炳���su�R�}���h��root������D�����Ƃ���U���҂����ɂ͂��邩������Ȃ��B
�@�O�u���������Ȃ��Ă��܂������A�����������P�[�X��z�肵�Asu�R�}���h��root�ɂȂ�郆�[�U�[�����肵�Ă��܂��������A�Z�L�����e�B�������コ���邱�ƂɂȂ���B
�@����ł́A�eUNIX���su root�𐧌�������@�ɂ��Đ������悤�B
��*BSD�̏ꍇ
BSD�nUNIX�̑����́A�f�t�H���g��su root�̗��p���O���[�vID�iGID�j�� 0�i�ʏ��wheel�j�ɑ����郆�[�U�[�ɂ̂�����Ă���Bwheel�O���[�v�ɑ����Ă��Ȃ����[�U�[��su root�����s����ƁA�^�[�~�i����Ɏ��̂悤�ȋ��ۃ��b�Z�[�W���\�������B
% susu: you are not listed in the correct secondary group (wheel) to su root.
���胆�[�U�[��su root�����������ꍇ�́Awheel�O���[�v�ɒlj����邾���ł悢�Bwheel�O���[�v�ɒlj�����ꍇ�́Avi��/etc/group��ҏW����̂��ȒP���B
��Fwheel�O���[�v�Ƀ��[�U�[kimu��lj�����
# vi /etc/group
�ۑ�������A���[�U�[kimu���su�R�}���h�����s���āAroot�ɂȂ�邩�ǂ������m�F����B����ɒlj�����Ă���ꍇ�́A��̋��ۃ��b�Z�[�W���\�����ꂸ�ɁAsu root�R�}���h�����s�ł���B
��Linux�iRed Hat Linux 7.3�j�̏ꍇ
Red Hat Linux 7.3��su�R�}���h�ɂ́A*BSD�̂悤��su root�𐧌�����@�\�͔�����Ă��Ȃ��B���̂���Linux��su root�𐧌����邽�߂ɂ́APAM�iPluggable Authentication Module�j��p���邱�ƂɂȂ�BPAM�́A�����̃R�}���h��T�[�r�X��ύX���邱�ƂȂ��A�V���ȔF�̃v���O�C������������@�\�ŁA������UNIX�ō̗p����Ă���BPAM�͊e�F�؋@�\�����W���[���Ƃ��Ē��Ă���A�����su root�̐�����pam_wheel.so�Ƃ������W���[���𗘗p����B
�܂���pam_wheel.so�����݂��邩�ǂ������m�F����B�قƂ�ǂ̏ꍇ��RPM�Ƃ��ĕW���C���X�g�[������Ă���͂����irpm -qa | grep pam�Ŋm�F�j �B
% ls -l /lib/security/pam_wheel.so -rwxr-xr-x 1 root root 9566 Apr 10 2002 /lib/security/pam_wheel.so
�C���X�g�[���ς݂̏ꍇ�́A������su�R�}���h��PAM�̐ݒ�i/etc/pam.d/su�j��ύX����B/etc/pam.d/su��pam_wheel.so�̐ݒ��lj�����B
#%PAM-1.0 auth sufficient /lib/security/pam_rootok.so auth required /lib/security/pam_stack.so service=system-auth account required /lib/security/pam_stack.so service=system-auth �c�c �ȗ� �c�c
#%PAM-1.0 auth sufficient /lib/security/pam_rootok.so auth required /lib/security/pam_wheel.so group=wheel auth required /lib/security/pam_stack.so service=system-auth account required /lib/security/pam_stack.so service=system-auth �c�c �ȗ� �c�c
�Ō��/etc/login.defs�Ɉȉ���1�s��lj�����B
SU_WHEEL_ONLY yes
/etc/login.defs�̓��e�́A���[�U�[�����Ƀ��O�C���������_�ŗL���ƂȂ�B�m�F����ꍇ�́A�ݒ�ɂ�薜���ꃍ�O�C�����s�\�ɂȂ邱�Ƃ��l���A��ƒ��̃^�[�~�i���Ƃ͕ʂ̃^�[�~�i������s�����ƁB
������Ă��Ȃ����[�U�[��su root�����s����ƁA�ȉ��̂Ƃ��苑�ۂ����B
% su Password: su: incorrect password
��Solaris 8�̏ꍇ
Linux���l�ASolaris�̏ꍇ��PAM���̗p����Ă���̂ŁApam_wheel.so���W���[���𗘗p����悢�̂����A�ȑO����Ă���Solaris�p��pam_wheel.so�͂��łɃ����e�i���X����Ă��Ȃ����߁A�����������ꍇ�̑Ώ����ł��Ȃ��B���̂���Solaris��su root�̐������s���ꍇ�̍ŗǍ�͂��܂̂Ƃ���Ȃ��Ƃ����Ă悢���낤��2�B
����ł�su root�̐������s�������ꍇ�́A��ɏq�ׂ�pam_wheel.so���W���[�����g�����@�ƁA����su�R�}���h�̎��s�����𐧌�������@������B
��su�R�}���h�̎��s�����𐧌�
su�R�}���h�̎��s�ł��郆�[�U�[���A���L�҂���уO���[�v�ɑ����郆�[ �U�[�݂̂ɐ�������B
# cp -p /usr/bin/su /usr/bin/su.bak # chgrp wheel /usr/bin/su # chmod 4750 /usr/bin/su
���̎��_�ŁAsu�R�}���h��root��wheel�O���[�v�ɑ����郆�[�U�[�݂̂����p�\�ƂȂ�B�������̂��Ƃ����Awheel�O���[�v�ɂ́Asu�R�}���h�����s�����������[�U�[��lj����Ă����K�v������B
�Ō�Ƀo�b�N�A�b�v�p�ɃR�s�[����su.bak���폜���Ă����B
# rm /usr/bin/su.bak
�������A���̕��@�̓I���W�i���t�@�C���Ɏ�������邱�ƂɂȂ�A��������Ă��Ȃ����[�U�[��su�R�}���h���܂������g���Ȃ��Ȃ��Ă��܂��Ƃ�������p������B
��PAM�ipam_wheel.so�j�ɂ�鐧��
����1�̎�@�́APAM�ipam_wheel.so�j���g�����@���B�������A����͐�قǏq�ׂ��Ƃ���A���݃����e�i���X����Ă��Ȃ���Ԃ̂��߁A������肪�������ꍇ�ɂ͎����őΏ����Ȃ���Ȃ�Ȃ��Ȃ�B
�g�p����ꍇ�́Apam_wheel-1.3.tar.gz�iMD5�j��W�J���A�\�[�X���R���p�C�����ăC���X�g�[������K�v������B
% gunzip -cd pam_wheel-1.3.tar.gz | tar xvf - % cd pam_wheel-1.3 % make # install-wheel.sh
install-wheel.sh�����s����ƁApam_wheel�̃I�����C���}�j���A����C�u������/usr/local/man/man5�ɁA���C�u�������W���[����pam_wheel.so.1��/usr/lib/security�ɃR�s�[�����B����ɁAGID 0��wheel�O���[�v�̒lj���/etc/pam.conf�t�@�C���Ɉȉ��̐ݒ�̒lj����s����B
su auth requisite /usr/lib/security/pam_wheel.so.1 debug su auth required /usr/lib/security/pam_UNIX.so.1 debug su account required /usr/lib/security/pam_UNIX.so.1 su session required /usr/lib/security/pam_UNIX.so.1
install-wheel.sh�̎��s���I��������A���Ƃ�su root�������Ă��Ȃ����[�U�[�iwheel�O���[�v�ɑ����Ȃ����[�U�[�j����Asu�R�}���h�����s���Ċm�F���Ă݂�B
% su su: Sorry
�gsu: Sorry�h��1�s���o�͂����A�K�ɐ�������Ă���Ƃ������Ƃ�������B
�@����́Asu�̃Z�L�����e�B��̖��_��sudo�̊�{�I�Ȏg�����ɂ��ďЉ��B
Copyright © ITmedia, Inc. All Rights Reserved.