Skip to content

Commit a2f8099

Browse files
zhangweiJonathan Corbet
authored andcommitted
docs/zh_CN: Add sak index Chinese translation
Translate lwn/Documentation/security/sak.rst into Chinese Update the translation through commit 4d3beaa ("docs: security: move some books to it and update") Reviewed-by: Yanteng Si <[email protected]> Reviewed-by: Alex Shi <[email protected]> Signed-off-by: zhangwei <[email protected]> Signed-off-by: Jonathan Corbet <[email protected]> Link: https://lore.kernel.org/r/[email protected]
1 parent fcf22a9 commit a2f8099

File tree

2 files changed

+87
-1
lines changed

2 files changed

+87
-1
lines changed

Documentation/translations/zh_CN/security/index.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
:maxdepth: 1
1717

1818
lsm
19+
sak
1920
siphash
2021
digsig
2122
landlock
@@ -26,7 +27,6 @@ TODOLIST:
2627
* IMA-templates
2728
* keys/index
2829
* lsm-development
29-
* sak
3030
* SCTP
3131
* self-protection
3232
* tpm/index
Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
.. SPDX-License-Identifier: GPL-2.0
2+
.. include:: ../disclaimer-zh_CN.rst
3+
4+
:Original: Documentation/security/sak.rst
5+
6+
:翻译:
7+
8+
张巍 zhangwei <[email protected]>
9+
10+
===========================
11+
Linux 安全注意键(SAK)处理
12+
===========================
13+
14+
:日期: 2001年3月18日
15+
:作者: Andrew Morton
16+
17+
操作系统的安全注意键是一种安全工具,用于防止系统上存在特洛伊
18+
木马密码捕获程序。它提供了一种无法规避的方式,用于终止所有可
19+
能伪装成登录应用程序的程序。用户需要在登录系统之前输入这个安
20+
全键。
21+
22+
从键盘输入的方式生成安全注意键,Linux提供了两种相似但不同的
23+
方式。一种是按下ALT-SYSRQ-K组合键,但你不应该使用这种方式,
24+
因为它只有在内核启用了SYSRQ支持的情况下才能使用。
25+
26+
正确生成SAK的方式是使用``loadkeys``来定义键序列。无论内核是否
27+
编译了sysrq支持,这种方式都能够正常工作。
28+
29+
当键盘处于原始模式时,SAK 能够正常工作。这意味着,一旦定义,
30+
SAK 将终止正在运行的 X 服务器。如果系统处于运行级别 5,X 服
31+
务器将重新启动,这正是你希望发生的情况。
32+
33+
你应该使用什么键序列? CTRL-ALT-DEL用于重启机器,CTRL-ALT-
34+
BACKSPACE对X服务器有特殊作用。我们将选择CTRL-ALT-PAUSE。
35+
36+
在你的rc.sysinit(或rc.local)文件中,添加以下命令::
37+
38+
echo "Control Alt keycode 101 = SAK" | /bin/loadkeys
39+
40+
就这样!只有超级用户才能重新编程SAK键。
41+
42+
.. note::
43+
44+
1. Linux SAK据说并不是C2级安全性的系统所要求的"真正的SAK"。
45+
该原因作者也不知道
46+
47+
2. 在键盘输入的模式下,SAK会终止所有打开了/dev/console的应用
48+
程序。
49+
50+
但是不幸的是,这也包括一些你实际上不希望被终止的程序。原因是
51+
这些程序错误的保持了/dev/console的打开状态。务必确保向你的
52+
Linux发行版提供商投诉这个问题。
53+
54+
你可以用以下的命令来识别将被SAK终止的程序::
55+
56+
# ls -l /proc/[0-9]*/fd/* | grep console
57+
l-wx------ 1 root root 64 Mar 18 00:46 /proc/579/fd/0 -> /dev/console
58+
59+
然后::
60+
61+
# ps aux|grep 579
62+
root 579 0.0 0.1 1088 436 ? S 00:43 0:00 gpm -t ps/2
63+
64+
所以``gpm``会被SAK杀死。这应该gpm中的bug。它应该正在关闭标准输入,
65+
你可以通过查找initscript来启动gpm并更改它:
66+
67+
老的::
68+
69+
daemon gpm
70+
71+
新的::
72+
73+
daemon gpm < /dev/null
74+
75+
Vixie cron似乎也有这个问题,并且需要采取相同的处理方式。
76+
77+
此外,某个著名的Linux发行版在它的rc.sysinit和rc scripts的脚本中
78+
包含了以下三行代码::
79+
80+
exec 3<&0
81+
exec 4>&1
82+
exec 5>&2
83+
84+
这些代码会导致所有的守护进程将文件描述符3、4和5关联到/dev/console。
85+
所以SAK会将他们所有都终止。一个简单的解决办法就是删掉这些代码,但是
86+
这样做会导致系统管理应用程序出现异常 - 要对所有的情况进行充分测试。

0 commit comments

Comments
 (0)