����� ����� �� ������: ����������� ����� Linux �� ��, ��� ��� "���������" �������, �� ������������ �������� � ������� ������� Linux-���������� �� ���� ����. ��������� ����� �������� �� ����� ��������, ��� ������ �� ��������� �� ������������ ���������, ��� ������� BBC World Service radio, ��� �������� � Linux'��. ����������:
|
����� - ���������� ����������������: ��� ������ ������� �� ���� ������: ������ ���������� ��������Linux - ��� ��������������������� �������, � ��� ������ ������������ ����� ������������� ��������� ���� ������� � ����� ������. ������ ������������ ����� ���������� ������������� (user-ID). ����� ����� ������������ ����� ������������ � ���� ��� ����� �����. ����� ������� � ������ ��� ������ ������������� ��������������� ���������� �� ���� ��������� �������������. ��� - ������� ����������� ��� ���������� �������� ����� ��������� "������" �������������. ����� ������ ���� user-ID � ����������, � ����� ������ �� ��������, ����� ��������������� �������� id:
��� ������ ����� ��������������� �������������� ����� ������� �� ���������� "��������" owner, "������" group � "������" others . � ���� ������� ��� ������ ��������� ����� ���� ������ ����� �� ������ (r), ������ (w) � "����������" (x) �����. ����� ������� ����� ������� ����� ������� ls -l:
�� ������� �����, ��� ���������� ����� /usr/bin/id �������� ������������ root, ���� ������� � ������ ������������� root. ������ -rwxr-xr-x���������� ������� ����� ������� � ����� �� ������� ��������� ��������� �������������. ���� �������� �� ������ (r), ������ (w) � ���������� (x) ��� ���������. ��� ��������� "������" � "������" ���� �������� �� ������ (r) � ���������� (x). ����� ������� ����� ����������� � ���� ������� ������, � ������� ������ 3 ���� ���������� ����� ������� ��� ��������������� ��������� �������������. �.�. ������ r-x ������������� ������� ������ 101 ��� 4+1=5 � ���������� ������. � ������ ��������� ��� (r) ����� �������� 4, ��� (w) - 2, � ��� (x) - 1 � ���������� ������� ���������.
��� ��������� ���� ������� � ������ ������������ ������� chmod.
�� ������������ ������������ ��������� ���� ����� ����������� ������
root ��� �������� �����. ������� chmod "��������" ��� ���������, ���
� ������������� ������������� ���� �������.
������������� ������������� �������� ���: [ugoa][+-][rwx].
������ ����� ������������� ����� ���������:
������� chmod 644 file.txt ������������� "�������" ����� �������, �.�. �������� ����� ������ � ���������� � ����, � ��� ��������� ������������ - ������ ������. ������ � �������� (�������� �� ������� cd) ����� ������������ �� ������ ������ ������, ����������� � ���� ��������, �� � �� ����������. ������� "��������" ������� ��� ������ ��������� (directory) �������� 755 � �� 644:
������� umask ���������� ���� ����� ������� "�� ���������". ����� "�� ���������" ������������ ��� �������� ����� ������, ��������� � �.�. � �������� ��������� ������� ���������� ������� ����� ����, ������� �� ������ ������������� ����� ����������� ������. �������� ������� umask 022 - ��� ���������� �����. �����
022 ������� � ���, ��� ��� ������ ����� ������������� ����
�������� ��� ������ ������ �� ����� ������, �� �������� ���� ��� ����� �������
������ ������ ��. ������� ����� ���� ����� ������, ����� ������� umask
��� ����������.
��� ������, ��� ����� ������������ ������� umask � chmod:
�������, ��� ��� �������� ���������� ������� ������������� ����
"����������". ����� �����, ���� ������ ���� �������� �� ������, �����
������������� (shell) ��� ��������� ������� �� �����.
��� �������� ������ ��� ���������� ��������������� ������������.
���������� ������ ������� ���� ��������� ���������: hello alice This file ( ./myscript ) has the following permissions: -rwxr-xr-x T-���, SUID � SGID��������� � Linux �����-�� �����, ��, ��������, �������� ��������, ��� ����� ������� "rwx" � ������ ������� � ��������� ������ ����������� ����� ����� "s" � "t":
��� �� ��� �����, � ����� ����� ������������� ��� "s" � "t"? � ����������������, ������� ����� ���� ������� � ������ �������� 4 ������ �� 3 ���� � ������. ������� chmod 755 ��� ����� ���� ������� ������ ������ ����� �������: chmod 0755. t-���t-��� (������ ��� �������� �����-��� ("sticky bit") ��� "�������") ������������ ������ � ����������. ��� ����� �� ������ �������, ���� ��� ���������� ��� �������� /tmp.������ (�.�. ���� t-��� ��� �������� �� ����������) ���� �� ����� �������� ����� ������� ����� ������������, ������� � ������� �������� ������ �� ������. �.�. ���� � ��� ���� �������, ���� ����� ������������ ����� ��������� ����, �� ����� ������������ ����� � ������� ����� �� ����� ��������. t-��� �������� ��� �������. ���� ��� ��������� ���������� t-���, �� ������� ���� �� ������ �������� ����� ������ �������� ����� �������� ��� �����. ���������� t-��� ����� ��� ������ ������ chmod a+tw ��� chmod 1777. ��������:
S-��� - ��������� ��� ��������������� �������� � Linux ����������� � ��������� ��������������� ������������ (user-ID). ��� ��������� ��������� �������� �������� � �������� �������, ������ � �.�. �� ��� ������� �������� ����� ���������� ��� user-ID: ����������� � �����������. ������� ������� � ������ �������� ������ ����������� user-ID. ��������� ��������� ������ idinfo � �������� ��� ���������� (chmod 755 idinfo):
�������� ������ ����� ������ ������� �������� ������������, ������������ � ���������� user-ID (�������� ��� ������������ Alice): effective user-ID: alice real user-ID: alice group ID: users����� ���� ������ �������� ����, �� �� ������ ���-�� ��������. ����� ����� ������� ������� ������ �� ����, ��� ��� ��������� � ����� �� ������ � ���, ��� �������� ���������� �����. �� ������������ ������������ s-��� �������� ������ ��� �������� ������, �� �� ��� �������� (�� ����������� �������� �� ����� Perl). ������� �������� ������� �-���������, ������� ����� �������� ��� ������:
������������ ���������:
���������. ������ �� ���������? � ������ �������� ��� ��������� �� ����� ������� ������������!. ������ suidtest ������� ����� �, �� ������ ������, ���� � ������������� s-����� ����� ���� �����, ��� � ������� ���� (�.�. � ����� "x"). ������ ��� ���������� ������ ����� ���������� ������� ������������ user-ID (�.�. user-ID ������������, ������������ ���������) �� ����������� user-ID, ��� user-ID ��������� �����! ���� ���������� ���� ��������� ��������� ��� ���������, �� �� ������:
��� �� �����, ��� ����� ������ ��������, �������� ���� s-��� ����������
��� ��������, ���������� ������� �������� root. ����� ������������,
�������� ����� ���������, ������� ����� ����������������� � ������ ������ ��
��� ������ ���� �������� ������ root'�.!
����� ���������� SUID-��������� �������� root �� ����� ������������� � ����������� � ����������� user-ID ��������� ������� setreuid(). ����� � ������������ user-ID ����� ������������ ��� ����, ����� ���� ������� ������������� ������ � ��������� �������� �������������� �������. ��������, ���� �� ����� ����� root, �� ������ �������������� ���� ��������� suidtest.c ����� ��������� ������ ������������ ��������� ������� ppp-on/ppp-off �� ����� ������. S-��� ������������� ��� ���������������� ����� � ������� s-��� ���������� ��� ������ ����������� � ����������� group-ID ��������� �����. ������� ����������� ������������ group-ID ������ ������������ group-ID ����� ����� �� ���, ��� ��� ������ ����.����� ��������� s-��� ��������������� ��� ��������, �� ������ ����, ����������� � ���� �������� ����� ������� � ������, � ������� ��������� � ��� ������� (�� �� ������������, ��������� ���� ����). ��������, ����� �������� � ��� ������:
������, ��� �����, ������� ������� �����, ��������� � ������ users. �� ���� ������� ������� � ������ disk, �� � ��� �����, ������� ����� ������� � ���� ��������, ����� �������� � ������ disk � ������� ��������������� group-ID.
��� ������� ����������� ��� ���������� ������� � ���������, � ������� �����
������ ����� ��������� ������� �������������. ����� ���� ���������, ���
group-ID, ��� ���� ������ ����� �������� ����� ���������� ��������� �
��� ����� ������� ����� �������� ������� ������� �� ������� � ������
(�� ������ ������. ����. �����.).
��� �������� ��������� ���� ��� ������ ������������� ���������������
����� "�� ���������" umask 027, �.�. ��� ��-������ ������
����� ��������� ����������.
|
This website is
maintained by Miguel Angel Sepulveda
� Guido Socher 1999 LinuxFocus 1999 |