1 |
nimiux 11/01/27 12:55:53 |
2 |
|
3 |
Modified: hardenedfaq.xml |
4 |
Log: |
5 |
added the new hardenedfaq.xml for hardened proj |
6 |
|
7 |
Revision Changes Path |
8 |
1.5 xml/htdocs/proj/es/hardened/hardenedfaq.xml |
9 |
|
10 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/xml/htdocs/proj/es/hardened/hardenedfaq.xml?rev=1.5&view=markup |
11 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/xml/htdocs/proj/es/hardened/hardenedfaq.xml?rev=1.5&content-type=text/plain |
12 |
diff : http://sources.gentoo.org/viewvc.cgi/gentoo/xml/htdocs/proj/es/hardened/hardenedfaq.xml?r1=1.4&r2=1.5 |
13 |
|
14 |
Index: hardenedfaq.xml |
15 |
=================================================================== |
16 |
RCS file: /var/cvsroot/gentoo/xml/htdocs/proj/es/hardened/hardenedfaq.xml,v |
17 |
retrieving revision 1.4 |
18 |
retrieving revision 1.5 |
19 |
diff -u -r1.4 -r1.5 |
20 |
--- hardenedfaq.xml 20 Aug 2010 01:13:47 -0000 1.4 |
21 |
+++ hardenedfaq.xml 27 Jan 2011 12:55:53 -0000 1.5 |
22 |
@@ -1,20 +1,30 @@ |
23 |
<?xml version="1.0" encoding="UTF-8"?> |
24 |
<!DOCTYPE guide SYSTEM "/dtd/guide.dtd"> |
25 |
+<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/proj/es/hardened/hardenedfaq.xml,v 1.5 2011/01/27 12:55:53 nimiux Exp $ --> |
26 |
|
27 |
<guide link="/proj/es/hardened/hardenedfaq.xml" lang="es"> |
28 |
<title>Preguntas de Uso Frecuente de Gentoo Hardened</title> |
29 |
<author title="Autor"> |
30 |
<mail link="tocharian@g.o">Adam Mondl</mail> |
31 |
</author> |
32 |
-<author title="Contribuidor"> |
33 |
+<author title="Colaborador"> |
34 |
<mail link="solar@g.o">solar</mail> |
35 |
</author> |
36 |
-<author title="Contribuidor"> |
37 |
+<author title="Colaborador"> |
38 |
<mail link="kang@g.o">Guillaume Destuynder</mail> |
39 |
</author> |
40 |
-<author title="Contribuidor"> |
41 |
+<author title="Colaborador"> |
42 |
<mail link="pageexec@××××××××.hu">El equipo de PaX</mail> |
43 |
</author> |
44 |
+<author title="Colaborador"> |
45 |
+ <mail link="klondike@×××××××××.es">klondike</mail> |
46 |
+</author> |
47 |
+<author title="Colaborador"> |
48 |
+ <mail link="zorry@g.o">Magnus Granberg</mail> |
49 |
+</author> |
50 |
+<author title="Colaborador"> |
51 |
+ <mail link="blueness@g.o">Anthony G. Basile</mail> |
52 |
+</author> |
53 |
<author title="Traductor"> |
54 |
<mail link="jgascon@×××××.com">Jaime Gascón Romero</mail> |
55 |
</author> |
56 |
@@ -27,149 +37,28 @@ |
57 |
lista de correos gentoo-hardened. |
58 |
</abstract> |
59 |
|
60 |
-<version>1.9</version> |
61 |
-<date>2006-02-18</date> |
62 |
+<version>3.2</version> |
63 |
+<date>2011-1-19</date> |
64 |
|
65 |
-<chapter> |
66 |
+<faqindex> |
67 |
<title>Preguntas</title> |
68 |
<section> |
69 |
-<title>Generales</title> |
70 |
-<body> |
71 |
- |
72 |
-<ul> |
73 |
- <li> |
74 |
- <uri link="#toolchain">¿Qué es exactamente el "toolchain"?</uri> |
75 |
- </li> |
76 |
- <li> |
77 |
- <uri link="#whichisbetter">¿Qué debería usar: grsecurity, RSBAC o |
78 |
- SELinux?</uri> |
79 |
- </li> |
80 |
- <li> |
81 |
- <uri link="#aclall">¿Se pueden usar usar grsecurity, RSBAC, |
82 |
- SELinux y PaX al mismo tiempo?</uri> |
83 |
- </li> |
84 |
- <li> |
85 |
- <uri link="#hardenedcflags">¿Necesito usar alguna bandera en |
86 |
- LDFLAGS/CFLAGS para activar la compilación de PIE/SSP?</uri> |
87 |
- </li> |
88 |
- <li> |
89 |
- <uri link="#hardenedcflagsoff">¿Cómo desactivo la compilación de |
90 |
- PIE/SSP?</uri> |
91 |
- </li> |
92 |
- <li> |
93 |
- <uri link="#fsexec">La compilación de mi núcleo falla con el |
94 |
- error: "error: structure has no member named `curr_ip'", ¿cómo lo |
95 |
- arreglo?</uri> |
96 |
- </li> |
97 |
- <li> |
98 |
- <uri link="#hardenedproject">Acabo de encontrar el proyecto |
99 |
- hardened, ¿tengo que instalar todo lo de la página del proyecto |
100 |
- para instalar Gentoo Hardened?</uri> |
101 |
- </li> |
102 |
- <li> |
103 |
- <uri link="#Othreessp">¿Por qué no funcionan mis programas cuando |
104 |
- uso gcc hardened y CFLAGS="-O3"?</uri> |
105 |
- </li> |
106 |
- <li> |
107 |
- <uri link="#cascadebootstrap">¿Qué ha pasado con |
108 |
- bootstrap-cascade.sh?</uri> |
109 |
- </li> |
110 |
- <li> |
111 |
- <uri link="#hardenedprofile">¿Cómo cambio al perfil |
112 |
- hardened?</uri> |
113 |
- </li> |
114 |
- <li> |
115 |
- <uri link="#hardeneddebug">¿Cómo depuro con gdb?</uri> |
116 |
- </li> |
117 |
-</ul> |
118 |
- |
119 |
-</body> |
120 |
-</section> |
121 |
- |
122 |
-<section> |
123 |
-<title>PaX</title> |
124 |
-<body> |
125 |
- |
126 |
-<ul> |
127 |
- <li> |
128 |
- <uri link="#paxinformation">¿Cuál es el sitio Web de PaX?</uri> |
129 |
- </li> |
130 |
- <li> |
131 |
- <uri link="#paxgentoodoc">¿Qué documentación hay en Gentoo sobre |
132 |
- PaX?</uri> |
133 |
- </li> |
134 |
- <li> |
135 |
- <uri link="#paxnoelf">Me sale este mensaje: "error while loading |
136 |
- shared libraries: cannot make segment writable for relocation: |
137 |
- Permission denied." ¿Qué significa?</uri> |
138 |
- </li> |
139 |
- <li> |
140 |
- <uri link="#paxjava">Desde que uso PaX no me funciona Java, ¿por |
141 |
- qué?</uri> |
142 |
- </li> |
143 |
-</ul> |
144 |
- |
145 |
-</body> |
146 |
-</section> |
147 |
- |
148 |
-<section> |
149 |
-<title>grsecurity</title> |
150 |
+<title>Introducción</title> |
151 |
<body> |
152 |
|
153 |
-<ul> |
154 |
- <li> |
155 |
- <uri link="#grsecinformation">¿Cuál es el sitio Web de |
156 |
- grsecurity?</uri> |
157 |
- </li> |
158 |
- <li> |
159 |
- <uri link="#grsecgentoodoc">¿Qué documentación hay en Gentoo sobre |
160 |
- Grsecurity?</uri> |
161 |
- </li> |
162 |
- <li> |
163 |
- <uri link="#grsec2681">¿Puedo usar Grsecurity con un núcleo 2.6.8, |
164 |
- 2.6.8.1, o 2.6.9?</uri> |
165 |
- </li> |
166 |
-</ul> |
167 |
- |
168 |
-</body> |
169 |
-</section> |
170 |
- |
171 |
-<section> |
172 |
-<title>RSBAC</title> |
173 |
-<body> |
174 |
- |
175 |
-<ul> |
176 |
- <li> |
177 |
- <uri link="#rsbacinformation">¿Cuál es el sitio Web de |
178 |
- RSBAC?</uri> |
179 |
- </li> |
180 |
- <li> |
181 |
- <uri link="#rsbacgentoodoc">¿Qué documentación hay en Gentoo sobre |
182 |
- RSBAC?</uri> |
183 |
- </li> |
184 |
- <li> |
185 |
- <uri link="#rsbacinitrd">¿Cómo uso un disco de inicio RAM con |
186 |
- RSBAC?</uri> |
187 |
- </li> |
188 |
-</ul> |
189 |
- |
190 |
-</body> |
191 |
-</section> |
192 |
- |
193 |
-<section> |
194 |
-<title>SELinux</title> |
195 |
-<body> |
196 |
- |
197 |
-<ul> |
198 |
- <li> |
199 |
- <uri link="#selinuxfaq">¿Dónde están las preguntas de uso |
200 |
- frecuente relacionadas con SELinux?</uri> |
201 |
- </li> |
202 |
-</ul> |
203 |
+<p> |
204 |
+Lo que sigue es una serie de preguntas recogidas del canal IRC |
205 |
+#gentoo-hardened y de la lista de correo gentoo-hardened mailing. Estas |
206 |
+preguntas están contestadas de forma rápida y concisa en lugar de |
207 |
+ofrecer una vista detallada de las tecnologías detrás de Gentoo |
208 |
+Hardened. Se recomienda leer el resto de la documentación en la página |
209 |
+del proyecto Gentoo Hardened Project y la presente en las páginas del |
210 |
+proyecto para tener una mejor visión. |
211 |
+</p> |
212 |
|
213 |
</body> |
214 |
</section> |
215 |
-</chapter> |
216 |
+</faqindex> |
217 |
|
218 |
<chapter> |
219 |
<title>Generales</title> |
220 |
@@ -190,54 +79,64 @@ |
221 |
</section> |
222 |
|
223 |
<section id="whichisbetter"> |
224 |
-<title>¿Qué debería usar: grsecurity, RSBAC o SELinux?</title> |
225 |
+<title>¿Qué debería usar: el RBAC de Grsecurity o SELinux?</title> |
226 |
<body> |
227 |
|
228 |
<p> |
229 |
-La respuesta a esta pregunta es muy subjetiva, el proyecto Gentoo |
230 |
-Hardened sólo intenta proporcionar las tecnologías y dejar la elección |
231 |
-de cual usar al usuario. Esta decisión requiere mucha investigación |
232 |
-que esperamos facilitar con esta documentación. Sin embargo, si tiene |
233 |
-preguntas específicas acerca del modelo de seguridad que proporciona |
234 |
-cada una, no dude en preguntar al desarrollador pertinente en el canal |
235 |
-de IRC o en la lista de correo. |
236 |
+La respuesta a esta pregunta es muy subjetiva, y depende mucho de |
237 |
+sus requisitos por lo que el proyecto Gentoo Hardened sólo persigue |
238 |
+proporcionar las tecnologías y dejar la elección de cual usar al |
239 |
+usuario. Esta decisión requiere mucha investigación que esperamos |
240 |
+facilitar con esta documentación. Sin embargo, si tiene preguntas |
241 |
+específicas acerca del modelo de seguridad que proporciona cada una, |
242 |
+no dude en preguntar al desarrollador pertinente en el canal de IRC |
243 |
+o en la lista de correo. |
244 |
</p> |
245 |
|
246 |
</body> |
247 |
</section> |
248 |
|
249 |
<section id="aclall"> |
250 |
-<title>¿Se pueden usar usar grsecurity, RSBAC, SELinux y PaX al mismo |
251 |
+<title>¿Se pueden usar usar Grsecurity, SELinux y PaX al mismo |
252 |
tiempo?</title> |
253 |
<body> |
254 |
|
255 |
<p> |
256 |
-Sí, es posible combinarlos ya que PaX funciona con grsecurity, RSBAC y |
257 |
-SELinux. Sólo habría problemas si sólo puede usar un sistema de |
258 |
-control de acceso. |
259 |
+Sí, es posible combinarlos ya que PaX y algunas características de |
260 |
+Grsecurity funcionan con el RBAC de Grsecurity y SELinux. Sólo |
261 |
+habría problemas si sólo puede usar un sistema de control de acceso |
262 |
+(sea RBAC o SELinux). |
263 |
</p> |
264 |
|
265 |
</body> |
266 |
</section> |
267 |
|
268 |
<section id="hardenedcflags"> |
269 |
-<title>¿Necesito usar alguna bandera en LDFLAGS/CFLAGS para activar la |
270 |
-compilación de PIE/SSP?</title> |
271 |
+<title>¿Necesito usar algún ajuste en LDFLAGS/CFLAGS para activar la |
272 |
+construcción de hardened?</title> |
273 |
<body> |
274 |
|
275 |
<p> |
276 |
No, el toolchain actual implementa el equivalente de <c>CFLAGS="-fPIE |
277 |
--fstack-protector-all" LDFLAGS="-Wl,-z,now -Wl,-z,relro"</c> |
278 |
-automáticamente mediante el archivo de especificaciones de GCC lo |
279 |
-cual, es una solución más apropiada. Los usuarios de hardened-gcc |
280 |
-anteriores deben añadir <c>USE="hardened pic"</c> a su |
281 |
-<path>/etc/make.conf</path> y actualizar con las siguientes ordenes: |
282 |
+-fstack-protector-all -D_FORTIFY_SOURCE=2" |
283 |
+LDFLAGS="-Wl,-z,now -Wl,-z,relro"</c> automáticamente mediante la |
284 |
+especificación definida en GCC y usando los ficheros de especificación |
285 |
+(specfiles) para deshabilitarla lo cual es una solución más apropiada. |
286 |
+Para los usuarios de versiones anteriores de hardened-gcc la mejor |
287 |
+solución es cambiar al perfil hardened y actualizar usando los pasos |
288 |
+descritos en <uri link="#hardenedprofile">la pregunta ¿Cómo cambio a |
289 |
+Gentoo Hardened?</uri> |
290 |
</p> |
291 |
|
292 |
-<pre caption="Instalación del Toolchain Hardened"> |
293 |
-# <i>emerge --oneshot binutils gcc virtual/libc</i> |
294 |
-# <i>emerge -e world</i> |
295 |
-</pre> |
296 |
+<note> |
297 |
+No se recomienda activar los ajustes de hardened manualmente. |
298 |
+</note> |
299 |
+ |
300 |
+<note> |
301 |
+Enviando un ajuste -fno... deshabilitará el ajuste correspondiente, |
302 |
+también -fstack-protector-all y -fstack-protector pueden interferir |
303 |
+cuando son pasados directamente. |
304 |
+</note> |
305 |
|
306 |
<note> |
307 |
Gentoo parchea sus GCCs para permitir que se pasen archivos de |
308 |
@@ -246,14 +145,14 @@ |
309 |
sistemas Gentoo para permitir a los usuarios de arquitecturas |
310 |
soportadas activar o desactivar fácilmente la funcionalidad del |
311 |
toolchain. Para acceder a los archivos de especificación como usuario |
312 |
-puede usar la utilidad gcc-config. |
313 |
+puede usar la utilidad <c>gcc-config</c>. |
314 |
</note> |
315 |
|
316 |
</body> |
317 |
</section> |
318 |
|
319 |
<section id="hardenedcflagsoff"> |
320 |
-<title>¿Cómo desactivo la compilación de PIE/SSP?</title> |
321 |
+<title>¿Cómo desactivo la construcción de hardened?</title> |
322 |
<body> |
323 |
|
324 |
<p> |
325 |
@@ -262,60 +161,85 @@ |
326 |
|
327 |
<pre caption="Ejemplo de salida de gcc-config"> |
328 |
# gcc-config -l |
329 |
- [1] i686-pc-linux-gnu-3.4.4 * |
330 |
- [2] i686-pc-linux-gnu-3.4.4-hardenednopie |
331 |
- [3] i686-pc-linux-gnu-3.4.4-hardenednopiessp |
332 |
- [4] i686-pc-linux-gnu-3.4.4-hardenednossp |
333 |
- [5] i686-pc-linux-gnu-3.4.4-vanilla |
334 |
+ [1] x86_64-pc-linux-gnu-4.4.4 * |
335 |
+ [2] x86_64-pc-linux-gnu-4.4.4-hardenednopie |
336 |
+ [3] x86_64-pc-linux-gnu-4.4.4-hardenednopiessp |
337 |
+ [4] x86_64-pc-linux-gnu-4.4.4-hardenednossp |
338 |
+ [5] x86_64-pc-linux-gnu-4.4.4-vanilla |
339 |
+ |
340 |
+<comment>Para desactivar la construcción PIE, cambie al perfil hardenednopie:</comment> |
341 |
+# gcc-config x86_64-pc-linux-gnu-4.4.4-hardenednopie |
342 |
|
343 |
<comment>Para desactivar el soporte SSP y cambiar al perfil |
344 |
hardenednossp</comment> |
345 |
-# gcc-config i686-pc-linux-gnu-3.4.4-hardenednossp |
346 |
+# gcc-config x86_64-pc-linux-gnu-4.4.4-hardenednossp |
347 |
+<comment>To turn off SSP and PIE building switch to the hardenednopiessp profile:</comment> |
348 |
+# gcc-config x86_64-pc-linux-gnu-4.4.4-hardenednopiessp |
349 |
+<comment>To turn off all hardened building switch to the vanilla profile:</comment> |
350 |
+# gcc-config x86_64-pc-linux-gnu-4.4.4-vanilla |
351 |
</pre> |
352 |
|
353 |
+<note> |
354 |
+La salida anterior puede variar dependiendo de la versión de gcc y de la |
355 |
+arquitectura que use, también los comandos necesarios para deshabilitar |
356 |
+pueden variar dependiendo de la salida del primer comando. |
357 |
+</note> |
358 |
+ |
359 |
<p> |
360 |
Puede conseguir lo mismo cambiando sus CFLAGS: |
361 |
</p> |
362 |
|
363 |
+<impo> |
364 |
+El equipo no recomienda desactivar los ajustes manualmente, ni tampoco |
365 |
+una opcion no soportada. Hágalo por su cuenta y riesgo. |
366 |
+</impo> |
367 |
+ |
368 |
<p> |
369 |
Para desactivar el uso de SSP en la compilación cuando se usa el |
370 |
-toolchain hardened añada <c>-fno-stack-protector-all |
371 |
--fno-stack-protector</c> a sus CFLAGS. |
372 |
+toolchain hardened añada |
373 |
+<c>-fno-stack-protector-all -fno-stack-protector</c> a sus CFLAGS. |
374 |
</p> |
375 |
|
376 |
+<note> |
377 |
+En las vesiones 3.4 de gcc necesitará usar |
378 |
+<c>-fno-stack-protector-all -fno-stack-protector</c> |
379 |
+</note> |
380 |
+ |
381 |
<p> |
382 |
Si quiere deshabilitar el uso de PIE añada <c>-nopie</c> a sus |
383 |
-<c>CFLAGS</c>. |
384 |
+<c>CFLAGS</c> y a sus <c>LDFLAGS</c> (ya que LDFLAGS se usa sin CFLAGS |
385 |
+cuando se usa gcc para enlazar los ficheros objeto). |
386 |
</p> |
387 |
|
388 |
<impo> |
389 |
-No se debe usar la bandera <c>-fno-pic</c> ya que habilita |
390 |
+No se debe usar el ajuste <c>-fno-pic</c> ya que habilita |
391 |
específicamente el código no PIC. En cambio, si usa <c>-nopie</c> |
392 |
revertirá al comportamiento "vanilla" de GCC que seguramente era el lo |
393 |
que deseaba. |
394 |
</impo> |
395 |
|
396 |
-<note> |
397 |
-Si está interesado en usar CFLAGS distintas dependiendo del paquete |
398 |
-con Portage seguro que le interesará el script que ha desarrollado |
399 |
-solar para tal propósito: |
400 |
-<uri>http://article.gmane.org/gmane.linux.gentoo.hardened/1204</uri> |
401 |
-</note> |
402 |
- |
403 |
-</body> |
404 |
-</section> |
405 |
- |
406 |
-<section id="fsexec"> |
407 |
-<title>La compilación de mi núcleo falla con el error: "error: |
408 |
-structure has no member named `curr_ip'", ¿cómo lo arreglo?</title> |
409 |
-<body> |
410 |
+<p> |
411 |
+Si quiere desactivar la opción de unión now (es la que se realiza por |
412 |
+defecto) añada <c>-z,lazy</c> a sus <c>LDFLAGS</c>. |
413 |
+</p> |
414 |
|
415 |
<p> |
416 |
-Para usar PaX con las fuentes hardened-sources debe activar también |
417 |
-Grsecurity en la configuración de su núcleo. Esto debería estar |
418 |
-resuelto en futuros núcleos. |
419 |
+Si desea desactivar la opcion de unión relro (que es la opción por |
420 |
+defecto) añada <c>-z,norelro</c> a sus <c>LDFLAGS</c>. |
421 |
</p> |
422 |
|
423 |
+<note> |
424 |
+Relro es el valor por defecto en binutils, por lo tanto asegúrese de que |
425 |
+quiere desactivarlo antes de hacerlo. |
426 |
+</note> |
427 |
+ |
428 |
+<note> |
429 |
+Si está interesado en usar CFLAGS específicos para cada paquete con |
430 |
+Portage, entonces estará interesado en leer acerca de <uri |
431 |
+link="http://article.gmane.org/gmane.linux.gentoo.hardened/1204">el |
432 |
+guión que solar ha desarrollado para gestionar esto</uri> |
433 |
+</note> |
434 |
+ |
435 |
</body> |
436 |
</section> |
437 |
|
438 |
@@ -342,32 +266,33 @@ |
439 |
<body> |
440 |
|
441 |
<p> |
442 |
-Se sabe que el uso de la bandera de optimización <c>-O3</c> puede dar |
443 |
+Se sabe que el uso del ajuste de optimización <c>-O3</c> puede dar |
444 |
problemas con el uso de la protección de ruptura de la pila SSP |
445 |
-(Stack-Smashing protector). Este bandera de optimización no está |
446 |
+(Stack-Smashing protector) en construcciones oficiales (vanilla) en |
447 |
+algunas situaciones. Este ajuste de optimización no está |
448 |
soportado oficialmente y por lo tanto el equipo de hardened aconseja |
449 |
que no se use. Los problemas de compilación cuando un usuario usa |
450 |
-<c>CFLAGS="-O3"</c> serán marcados como INVALID/CANTFIX e ignorados. |
451 |
+<c>CFLAGS="-O3"</c> serán marcados como INVALID/CANTFIX y/o serán |
452 |
+ignorados. |
453 |
</p> |
454 |
|
455 |
</body> |
456 |
</section> |
457 |
|
458 |
-<section id="cascadebootstrap"> |
459 |
-<title>¿Qué ha pasado con bootstrap-cascade.sh?</title> |
460 |
+<section id="hardenedprofile"> |
461 |
+<title>¿Cómo cambio al perfil hardened?</title> |
462 |
<body> |
463 |
|
464 |
<p> |
465 |
-Recientemente, el antiguo bootstrap.sh y bootstrap-2.6.sh han sido |
466 |
-marcados como obsoletos. En su lugar, bootstrap-cascade.sh se ha |
467 |
-renombrado a bootstrap.sh. |
468 |
+Para cambiar su perfil use eselect y selecciónelo de la lista. |
469 |
</p> |
470 |
-</body> |
471 |
-</section> |
472 |
|
473 |
-<section id="hardenedprofile"> |
474 |
-<title>¿Cómo cambio al perfil hardened?</title> |
475 |
-<body> |
476 |
+<note> |
477 |
+Se recomienda leer el capítulo seis de la primera parte de |
478 |
+"Instalando el sistema base de Gentoo" en el |
479 |
+<uri link="/doc/es/handbook/">Manual de Gentoo</uri> para obtener |
480 |
+instrucciones adecuadas de cómo cambiar su perfil. |
481 |
+</note> |
482 |
|
483 |
<pre caption="Ajustar make.profile"> |
484 |
# <i>eselect profile list</i> |
485 |
@@ -378,8 +303,8 @@ |
486 |
[5] default/linux/amd64/10.0/developer |
487 |
[6] default/linux/amd64/10.0/no-multilib |
488 |
[7] default/linux/amd64/10.0/server |
489 |
-[8] hardened/linux/amd64/10.0 |
490 |
-[9] hardened/linux/amd64/10.0/no-multilib |
491 |
+[8] hardened/linux/amd64 |
492 |
+[9] hardened/linux/amd64/no-multilib |
493 |
[10] selinux/2007.0/amd64 |
494 |
[11] selinux/2007.0/amd64/hardened |
495 |
[12] selinux/v2refpolicy/amd64 |
496 |
@@ -390,6 +315,12 @@ |
497 |
# <i>eselect profile set 8</i> <comment>(Reemplace 8 por el perfil hardened deseado)</comment> |
498 |
</pre> |
499 |
|
500 |
+<note> |
501 |
+La salida anterior puede variar dependiendo de la arquitectura que use. |
502 |
+También los comandos requeridos para elegir el perfil pueden variar |
503 |
+dependiendo de la salida del primer comando. |
504 |
+</note> |
505 |
+ |
506 |
<p> |
507 |
Tras configurar su perfil debería recompilar su sistema usando el |
508 |
toolchain de hardened para tener una base consistente: |
509 |
@@ -397,8 +328,15 @@ |
510 |
|
511 |
<pre caption="Cambio al toolchain hardened"> |
512 |
# <i>emerge --oneshot binutils gcc virtual/libc</i> |
513 |
-# <i>emerge -e world</i> |
514 |
+# <i>emerge -e --keep-going system</i> |
515 |
+# <i>emerge -e --keep-going world</i> |
516 |
</pre> |
517 |
+ |
518 |
+<p> |
519 |
+Se añade la opción <c>--keep-going</c> para asegurarse de que emerge |
520 |
+no parará en caso de que falle la construcción del algún paquete. |
521 |
+</p> |
522 |
+ |
523 |
</body> |
524 |
</section> |
525 |
|
526 |
@@ -407,47 +345,88 @@ |
527 |
<body> |
528 |
|
529 |
<p> |
530 |
-El primer problema es que GDB no resuelve símbolos en ejecutables PIE, |
531 |
-no se da cuenta de que las direcciones en dichos ejecutables son |
532 |
-relativas y no absolutas. Esto se pone de manifiesto, por ejemplo, |
533 |
-cuando se intenta obtener un "backtrace" y se ve un flujo de líneas |
534 |
-con caracteres '??' donde debería estar el símbolo en cuestión. |
535 |
+Hemos escrito un <uri link="/proj/en/hardened/hardened-debugging.xml"> |
536 |
+documento de cómo depurar en Gentoo Hardened</uri> (en inglés), por |
537 |
+lo que siguiendo las recomendaciones se debería solucionar el problema |
538 |
+que aparezca. |
539 |
</p> |
540 |
|
541 |
+</body> |
542 |
+</section> |
543 |
+ |
544 |
+<section id="jitflag"> |
545 |
+<title>¿Porqué está desactivado el ajuste jit en el perfil hardened?</title> |
546 |
+<body> |
547 |
+ |
548 |
<p> |
549 |
-Para solucionar esto realice la etapa final de enlazado con la bandera |
550 |
-<c>-nopie</c>, todas las compilaciones de objetos anteriores serán |
551 |
-<c>-fPIE</c> como es normal (la opción predeterminada con el |
552 |
-compilador hardened), lo que hará el ejecutable sea lo más próximo |
553 |
-posible a como debería ser, aunque el enlazado final creará un |
554 |
-ejecutable normal. Intente añadir <c>-nopie</c> a las LDFLAGS si está |
555 |
-usando emerge. |
556 |
+JIT significa: compilación en ese momento (Just In Time Compilation) y |
557 |
+consiste en tomar código que debe ser interpretado (como bytecode de Java |
558 |
+o código JavaScript), compilarlo en código binario nativo en memoria |
559 |
+y ejecutar el código resultante. Esto significa que el programa necesita |
560 |
+una sección de memoria en la cual tenga permisos de escritura y ejecución |
561 |
+para escribir el código y luego ejecutarlo, lo cual está desautorizado |
562 |
+por PaX, a menos que el ajuste mprotect esté desactivado para el |
563 |
+ejecutable. Como resultado, desactivamos el uso del ajuste JIT para |
564 |
+evitar (por defecto) protestas y problemas de seguridad. |
565 |
</p> |
566 |
|
567 |
<p> |
568 |
-Otra forma de hacerlo, es haciendo un emerge del paquete |
569 |
->=sys-devel/gdb-7.1, que contiene un parche que le permite depurar |
570 |
-ejecutables enlazados con -pie. |
571 |
+Es importante recordad que tener una sección que es escrita y luego |
572 |
+ejecutada puede ser un problema serio de seguridad, ya que un |
573 |
+atacante necesita introducir el código malicioso entre las fases |
574 |
+de escritura y ejecución de esa seccion para ejecutar el código que |
575 |
+desee. |
576 |
</p> |
577 |
|
578 |
+</body> |
579 |
+</section> |
580 |
+ |
581 |
+<section id="enablejit"> |
582 |
+<title>¿Cómo activo el ajuste jit?</title> |
583 |
+<body> |
584 |
+ |
585 |
<p> |
586 |
-El segundo problema es que PaX puede evitar que GDB establezca puntos |
587 |
-de ruptura dependiendo de como se haya configurado el núcleo. Esto |
588 |
-incluye el punto de ruptura en el main que usted necesita para |
589 |
-empezar. Para evitar que PaX interfiera con el ejecutable a depurar |
590 |
-necesita las banderas <c>m</c> y <c>x</c>. La bandera <c>x</c> está |
591 |
-configurada por defecto, así que basta con hacer: |
592 |
+Si lo necesita, le recomendamos activar el ajuste específicamente en |
593 |
+cada paquete que lo necesite usando <c>/etc/portage/package.use</c> |
594 |
</p> |
595 |
|
596 |
-<pre caption="Relajar PaX para depurar"> |
597 |
-# <i>/sbin/paxctl -m foo</i> |
598 |
+<pre caption="Ejemplo de /etc/portage/package.use activando JIT en algunas librerías"> |
599 |
+x11-libs/qt-core jit |
600 |
+x11-libs/qt-script jit |
601 |
+x11-libs/qt-webkit jit |
602 |
</pre> |
603 |
|
604 |
<p> |
605 |
-Llegados a este punto, ya debería estar preparado. Arranque gdb como |
606 |
-lo haría normalmente y ¡buena suerte!. |
607 |
+De todas formas puede activar este ajuste de forma global usando |
608 |
+<c>/etc/make.conf</c>. |
609 |
</p> |
610 |
|
611 |
+<pre caption="Ejemplo de /etc/make.conf con JIT activado"> |
612 |
+CFLAGS="-O2 -pipe -fomit-frame-pointer -march=native" |
613 |
+CXXFLAGS="${CFLAGS}" |
614 |
+# CUIDADO: Cambiar su CHOST no es algo que se deba hacer a la ligera. |
615 |
+# Por favor consulte http://www.gentoo.org/doc/es/change-chost.xml antes |
616 |
+# de hacer el cambio. |
617 |
+CHOST="x86_64-pc-linux-gnu" |
618 |
+# Estos son los ajustes USE que se usaron además de los ya ofrecidos por |
619 |
+# el perfil usado para la construcción. |
620 |
+<comment>#Si tiene más especificaciones use, debería bastar añadir jit al final</comment> |
621 |
+USE="jit" |
622 |
+ |
623 |
+MAKEOPTS="-j2" |
624 |
+ |
625 |
+GENTOO_MIRRORS="ftp://ftp.udc.es/gentoo/" |
626 |
+ |
627 |
+SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" |
628 |
+</pre> |
629 |
+ |
630 |
+<impo> |
631 |
+Recuerde que si activa código JIT en PaX necesitará desactivar mprotect |
632 |
+en los binarios que usen ese código, directamente en ellos o a través |
633 |
+de librerías. Eche un vistazo a la <uri link="#paxjavajit">pregunta |
634 |
+sobre PaX, Java y JIT para ver como se hace esto</uri>. |
635 |
+</impo> |
636 |
+ |
637 |
</body> |
638 |
</section> |
639 |
|
640 |
@@ -456,11 +435,12 @@ |
641 |
<chapter> |
642 |
<title>Preguntas sobre PaX</title> |
643 |
<section id="paxinformation"> |
644 |
-<title>¿Cuál es el sitio Web de PaX?</title> |
645 |
+<title>¿Dónde está la página oficial de PaX?</title> |
646 |
<body> |
647 |
|
648 |
<p> |
649 |
-El sitio Web de PaX es: <uri>http://pax.grsecurity.net</uri>. |
650 |
+Aquí está la <uri link="http://pax.grsecurity.net">página oficial de |
651 |
+PaX</uri>. |
652 |
</p> |
653 |
|
654 |
</body> |
655 |
@@ -471,14 +451,49 @@ |
656 |
<body> |
657 |
|
658 |
<p> |
659 |
-Actualmente la única documentación que hay en Gentoo sobre PaX es la |
660 |
-guía rápida de PaX en |
661 |
-<uri>http://www.gentoo.org/proj/en/hardened/pax-quickstart.xml</uri>. |
662 |
+Actualmente la única documentación que hay en Gentoo sobre PaX es |
663 |
+una <uri |
664 |
+link="http://www.gentoo.org/proj/en/hardened/pax-quickstart.xml"> |
665 |
+guía rápida de PaX</uri> (en inglés). |
666 |
</p> |
667 |
|
668 |
</body> |
669 |
</section> |
670 |
|
671 |
+<section id="paxmarkings"> |
672 |
+<title>¿Cómo funcionan las marcas de PaX?</title> |
673 |
+<body> |
674 |
+ |
675 |
+<p> |
676 |
+Las marcas de PaX son una forma de indicarle a PaX qué características |
677 |
+se deben activar (o desactivar) para un determinado binario. |
678 |
+</p> |
679 |
+ |
680 |
+<p> |
681 |
+Las características se pueden activar, desactivar o simplemente no |
682 |
+definirlas. El hecho de activarlas o desactivarlas hará que se ignore |
683 |
+las acción del núcleo. Por lo que si se activa una característica, ésta |
684 |
+siempre se usará y por el contrario, desactivándola nunca se usará. |
685 |
+</p> |
686 |
+ |
687 |
+<p> |
688 |
+Cuando el estado de una característica no esté definido en el núcleo, |
689 |
+se elegirá su activación o desactivación. Por defecto, el núcleo hardened |
690 |
+activará las características salvo dos excepciones: bien la |
691 |
+característica no está soportada por la arquitectura, bien Pax está |
692 |
+corriendo en modo Soft. En estos casos, la característica será |
693 |
+desactivada. |
694 |
+</p> |
695 |
+ |
696 |
+<note> |
697 |
+Para tener el modo Soft, su núcleo debe tener activada la característica |
698 |
+y debe activarla usando <c>pax_softmode=1</c> en la línea de comandos |
699 |
+del núcleo o definiéndola a 1 en <c>/proc/sys/kernel/pax/softmode</c>. |
700 |
+</note> |
701 |
+ |
702 |
+</body> |
703 |
+</section> |
704 |
+ |
705 |
<section id="paxnoelf"> |
706 |
<title>Me sale este mensaje: "error while loading shared libraries: |
707 |
cannot make segment writable for relocation: Permission denied." ¿Qué |
708 |
@@ -486,13 +501,34 @@ |
709 |
<body> |
710 |
|
711 |
<p> |
712 |
-Este error ocurre cuando se activa CONFIG_PAX_NOELFRELOCS: |
713 |
+Las relocalizaciones de texto son una forma el la cual las referencias |
714 |
+a las direcciones en el código ejecutable que no son conocidas en |
715 |
+el momento de enlazar son resueltas. Básicamente se escriben las |
716 |
+direcciones apropiadas en tiempo de ejecución, marcando como |
717 |
+escribible el segmento de código para cambiar la dirección y a |
718 |
+continuación se desmarca. Esto puede dar problemas, ya que un |
719 |
+atacante podría intentar explotar código malicioso cuando se realiza |
720 |
+la relocalización de texto para poder escribir código arbitrario en |
721 |
+el segmento de texto que podría ser ejecutado. Como esto también |
722 |
+implica que el código será cargado en una dirección fija (no dependiente |
723 |
+de la posición), puede también ser explotado para saltarse las |
724 |
+características de aleatorización proporcionadas por PaX. |
725 |
</p> |
726 |
|
727 |
-<pre caption="Opciones de Menuconfig"> |
728 |
-Non-executable page -> |
729 |
+<p> |
730 |
+Esto puede realizarse, por ejemplo, añadiendo una librería con |
731 |
+relocalizaciones de texto a las ya cargadas por el ejecutable. Pax |
732 |
+ofrece la opción CONFIG_PAX_NOELFRELOCS para evitarlo. Esta opción se |
733 |
+puede activar de la siguiente forma: |
734 |
+</p> |
735 |
|
736 |
- [*] Disallow ELF text relocations |
737 |
+<pre caption="Opciones de Menuconfig"> |
738 |
+-> Security options |
739 |
+ -> PaX |
740 |
+ -> Enable various PaX features |
741 |
+ -> Non-executable pages |
742 |
+ [*] Restrict mprotect() |
743 |
+ [*] Allow ELF text relocations |
744 |
</pre> |
745 |
|
746 |
<p> |
747 |
@@ -519,8 +555,8 @@ |
748 |
Para buscar en su sistema relocalizaciones de texto, puede usar el |
749 |
programa <c>scanelf</c> de <c>app-misc/pax-utils</c>. Si quiere más |
750 |
información sobre cómo usar el paquete <c>pax-utils</c> visite, por |
751 |
-favor, la <uri link="/proj/en/hardened/pax-utils.xml"> Guia de Gentoo |
752 |
-de las utilidades PaX</uri>. |
753 |
+favor, la <uri link="/proj/en/hardened/pax-utils.xml">Guía de Gentoo |
754 |
+de las utilidades PaX</uri> (en inglés). |
755 |
</p> |
756 |
|
757 |
<note> |
758 |
@@ -533,91 +569,93 @@ |
759 |
</body> |
760 |
</section> |
761 |
|
762 |
-<section id="paxjava"> |
763 |
-<title>Desde que uso PaX no me funciona Java, ¿por qué?</title> |
764 |
+<section id="paxjavajit"> |
765 |
+<title>Desde que empecé a usar PaX no puedo trabajar con código Java/JIT, |
766 |
+¿Porqué?</title> |
767 |
<body> |
768 |
|
769 |
<p> |
770 |
Como parte de su diseño, la máquina virtual de Java crea una cantidad |
771 |
considerable de código durante la ejecución lo que no hace feliz a |
772 |
-PaX. Hay dos formas de corregir está situación: |
773 |
+PaX. Sin embargo, con las versiones actuales de portage y java, portage |
774 |
+marcará los binarios de forma automática, de todos modos necesitará |
775 |
+permitir a PaX marcarlos de forma que PaX pueda hacer una excepción con |
776 |
+ellos y tener paxctl instalado para que estas marcas puedan ser aplicadas |
777 |
+a los binarios (y hacer de nuevo emerge para que sean aplicadas). |
778 |
</p> |
779 |
|
780 |
-<pre caption="Instalar Chpax"> |
781 |
-# <i>emerge chpax</i> |
782 |
-# <i>/etc/init.d/chpax start</i> |
783 |
+<p> |
784 |
+Esto, por supuesto, no se puede aplicar a todos los paquetes que |
785 |
+enlacen a librerías con código JIT. En este caso hay dos alternativas |
786 |
+para corregir este problema: |
787 |
+</p> |
788 |
+ |
789 |
+<pre caption="Activando el marcado en su núcleo"> |
790 |
+-> Security options |
791 |
+ -> PaX |
792 |
+ -> Enable various PaX features |
793 |
+ -> PaX Control |
794 |
+ [*] Use ELF program header marking |
795 |
+</pre> |
796 |
+ |
797 |
+<pre caption="Install paxctl"> |
798 |
+# <i>emerge paxctl</i> |
799 |
</pre> |
800 |
|
801 |
<p> |
802 |
-O si ya tiene <c>chpax</c> instalado, haga lo siguiente: |
803 |
+Cuando haya realizado emerge de <c>paxctl</c> puede: |
804 |
</p> |
805 |
|
806 |
-<pre caption="Opciones de Java de Chpax"> |
807 |
-# <i>chpax -pemrxs /opt/*-jdk-*/{jre,}/bin/*</i> |
808 |
+<pre caption="Desactivar PaX para el binario"> |
809 |
+# <i>paxctl -pemrxs /camino/al/binario</i> |
810 |
</pre> |
811 |
|
812 |
<p> |
813 |
-Las dos opciones modificarán ligeramente las cabeceras ELF para |
814 |
-ajustar correctamente las banderas PaX en los binarios. |
815 |
+Esta opción modificará ligeramente la cabecera ELF header para |
816 |
+ajustar correctamente los ajustes PaX en los binarios. |
817 |
</p> |
818 |
|
819 |
<note> |
820 |
-Si usa PaX junto con otra implementación de seguridad como RSBAC, |
821 |
-grsecurity, o SELinux deberá manejar PaX usando las configuraciones |
822 |
+Si usa PaX junto con otra implementación de seguridad como el RBAC |
823 |
+de Grsecurity, o SELinux deberá manejar PaX usando las configuraciones |
824 |
del núcleo provistas para cada implementación. |
825 |
</note> |
826 |
|
827 |
<p> |
828 |
-En RSBAC, puede etiquetar todos los archivos Java con la siguiente |
829 |
-orden: |
830 |
+La otra forma es usar su implementación de seguridad para hacer esto |
831 |
+mediante el uso de ganchos (hooks) en el núcleo. |
832 |
</p> |
833 |
|
834 |
-<pre caption="Opciones PaX de Java con RSBAC"> |
835 |
-# <i>for i in $(ls /opt/*(jdk|sdk)*/{jre,}/bin/*);do attr_set_file_dir FILE $i |
836 |
-pax_flags pmerxs;done</i> |
837 |
-</pre> |
838 |
- |
839 |
</body> |
840 |
</section> |
841 |
-</chapter> |
842 |
|
843 |
-<chapter> |
844 |
-<title>Preguntas sobre grsecurity</title> |
845 |
-<section id="grsecinformation"> |
846 |
-<title>¿Cuál es el sitio Web de grsecurity?</title> |
847 |
+<section id="paxbootparams"> |
848 |
+<title>¿Puedo desactivar las características de PaX al arrancar?</title> |
849 |
<body> |
850 |
|
851 |
<p> |
852 |
-El sitio Web de grsecurity es: <uri>http://www.grsecurity.net</uri>. |
853 |
+Aunque no está recomendado excepto cuando se usa para rescatar el sistema |
854 |
+o para situaciones de depuración, el posible cambiar algunos |
855 |
+comportamientos de PaX en el arranque a través de la línea de comandos |
856 |
+del núcleo. |
857 |
</p> |
858 |
-</body> |
859 |
-</section> |
860 |
- |
861 |
-<section id="grsecgentoodoc"> |
862 |
-<title>¿Qué documentación hay en Gentoo sobre Grsecurity?</title> |
863 |
-<body> |
864 |
|
865 |
<p> |
866 |
-La documentación más actualizada sobre grsecurity es la Guía |
867 |
-Grsecurity v2 de Gentoo en |
868 |
-<uri>http://www.gentoo.org/proj/es/hardened/grsecurity.xml</uri>. |
869 |
+Pasar la opción <c>pax_nouderef</c> en la línea de comandos del núcleo |
870 |
+desactivará uderef que puede causar problemas en algunos entornos de |
871 |
+virtualización y puede causar algunos errores (en ciertos momentos) como |
872 |
+resultado de dejar al núcleo desprotegido contra dereferencias a espacio |
873 |
+de usuario no deseadas. |
874 |
</p> |
875 |
|
876 |
-</body> |
877 |
-</section> |
878 |
- |
879 |
-<section id="grsec2681"> |
880 |
-<title>¿Puedo usar Grsecurity con un núcleo 2.6.8, 2.6.8.1, o 2.6.9?</title> |
881 |
-<body> |
882 |
- |
883 |
<p> |
884 |
-Debido a los significativos cambios introducidos en el núcleo 2.6.8, |
885 |
-que rompieron el soporte para PaX, no hay parches ni de PaX ni de |
886 |
-grsecurity disponibles para los núcleos 2.6.8, 2.6.8.1 y 2.6.9. Aunque |
887 |
-existe un parche experimental para el núcleo 2.6.10, debería conocer |
888 |
-la postura oficial del Equipo de PaX hacia los núcleos 2.6 y tenerla |
889 |
-en consideración antes de usarlos: <uri> |
890 |
-http://forums.grsecurity.net./viewtopic.php?t=968</uri>. |
891 |
+Pasar la opción <c>pax_softmode=1</c> en la línea de comandos del |
892 |
+núcleo activará el modo soft, el cual puede ser útil cuando arranquemos |
893 |
+un sistema no preparado con un núcleo PaX kernel. En el modo soft |
894 |
+PaX desactivará la mayor parte de las características por defecto |
895 |
+a menos que se le indique lo contrario a través de las marcas. De forma |
896 |
+similar, <c>pax_softmode=0</c> desactivará el modo soft que estaba |
897 |
+activado en la configuración. |
898 |
</p> |
899 |
|
900 |
</body> |
901 |
@@ -625,52 +663,45 @@ |
902 |
</chapter> |
903 |
|
904 |
<chapter> |
905 |
-<title>Preguntas sobre RSBAC</title> |
906 |
-<section id="rsbacinformation"> |
907 |
-<title>¿Cuál es el sitio Web de RSBAC?</title> |
908 |
+<title>Preguntas sobre Grsecurity</title> |
909 |
+<section id="grsecinformation"> |
910 |
+<title>¿Cuál es la página oficial de Grsecurity?</title> |
911 |
<body> |
912 |
|
913 |
<p> |
914 |
-El sitio Web de RSBAC es: <uri>http://www.rsbac.org</uri>. |
915 |
+Esta es la <uri link="http://www.grsecurity.net">página oficial de |
916 |
+Grsecurity</uri>. |
917 |
</p> |
918 |
|
919 |
</body> |
920 |
</section> |
921 |
|
922 |
-<section id="rsbacgentoodoc"> |
923 |
-<title>¿Qué documentación hay en Gentoo sobre RSBAC?</title> |
924 |
+<section id="grsecgentoodoc"> |
925 |
+<title>¿Qué documentación está disponible sobre Grsecurity?</title> |
926 |
<body> |
927 |
|
928 |
<p> |
929 |
-Toda la documentación de Gentoo sobre RSBAC se encuentra en la página |
930 |
-del subproyecto RSBAC en: |
931 |
-<uri>http://www.gentoo.org/proj/en/hardened/rsbac/index.xml</uri>. |
932 |
-</p> |
933 |
- |
934 |
-<p> |
935 |
-Además, puede encontrar documentación sobre RSBAC que no pertenece a |
936 |
-Gentoo en el manual de RSBAC en: |
937 |
-<uri>http://www.rsbac.org/documentation/rsbac_handbook</uri>. |
938 |
+La documentación sobre Grsecurity más actual es esta <uri |
939 |
+link="http://www.gentoo.org/proj/es/hardened/grsecurity.xml">guía rápida |
940 |
+de Grsecurity2</uri>. |
941 |
</p> |
942 |
|
943 |
</body> |
944 |
</section> |
945 |
|
946 |
-<section id="rsbacinitrd"> |
947 |
-<title>¿Cómo uso un disco de inicio RAM con RSBAC?</title> |
948 |
+<section id="grsecnew"> |
949 |
+<title>¿Puedo usar Grsecurity con un núcleo reciente que no esté en el |
950 |
+árbol de portage?</title> |
951 |
<body> |
952 |
|
953 |
<p> |
954 |
-Para usar un disco de inicio RAM (initrd) con un núcleo RSBAC se debe |
955 |
-habilitar una opción del núcleo o si no, RSBAC tratará el initrd como |
956 |
-si fuera el dispositivo raíz. |
957 |
+Normalmente liberamos una nueva versión de los fuentes hardened no mucho |
958 |
+más tarde de la liberación de un nuevo parche de PaX/Grsecurity por lo |
959 |
+que la mejor opción es simplemente esperar un poco a que el equipo del |
960 |
+núcleo adapter los parches y los pruebe. Recuerde que no damos soporte |
961 |
+a los fuentes del núcleo que no procedan del árbol de portage. |
962 |
</p> |
963 |
|
964 |
-<pre caption="Opciones en menuconfig"> |
965 |
-General RSBAC options ---> |
966 |
- [*] Delayed init for initial ramdisk |
967 |
-</pre> |
968 |
- |
969 |
</body> |
970 |
</section> |
971 |
</chapter> |
972 |
@@ -683,8 +714,9 @@ |
973 |
<body> |
974 |
|
975 |
<p> |
976 |
-Puede encontrar un PUF especifico de SELinux en: |
977 |
-<uri>http://www.gentoo.org/proj/en/hardened/selinux/selinux-handbook.xml?part=3&chap=3</uri>. |
978 |
+Existe un <uri |
979 |
+link="http://www.gentoo.org/proj/en/hardened/selinux/selinux-handbook.xml?part=3&chap=3"> |
980 |
+PUF específico de SELinux specific</uri> (en inglés). |
981 |
</p> |
982 |
|
983 |
</body> |