Apa itu AUR di Arch Linux, dan Haruskah Anda Menggunakannya?

Diterbitkan: 2023-06-23
Logo Arch Linux di situs web ArchWiki.
Jordan Gloor / How-To Geek
Repositori Arch Linux AUR berisi perangkat lunak berbasis komunitas yang aman digunakan jika Anda melakukan beberapa tindakan pencegahan sederhana. Bahkan jika Anda tidak memahami skrip shell, ada indikator yang dapat Anda gunakan untuk menilai apakah suatu paket aman atau tidak.

AUR adalah salah satu permata di mahkota Arch Linux, menyediakan ribuan paket perangkat lunak tambahan. Tetapi apakah repositori yang digerakkan oleh pengguna ini aman untuk digunakan, atau haruskah Anda menghindarinya?

Daftar isi

Apa itu AUR?
Bahaya Menggunakan AUR
Keamanan AUR: Periksa Detail Paket dan Reputasi
Periksa Isi PKGBUILD dan File Lainnya
Anda Dapat Membantu Pengguna AUR Lainnya

Apa itu AUR?

AUR (Arch User Repository) adalah repositori perangkat lunak berbasis komunitas yang menyediakan lebih dari 85.000 paket perangkat lunak untuk pengguna Arch Linux. Tidak seperti repositori Arch lainnya seperti repositori inti, ekstra, dan multilib, AUR tidak menghosting paket yang siap diinstal. Faktanya, itu sama sekali tidak menghosting file biner atau paket perangkat lunak.

File build paket host AUR, yang disebut PKGBUILDs. Ini adalah skrip shell yang dijalankan oleh alat Arch makepkg . Saat makepkg dijalankan, ia mencari file bernama “PKGBUILD.” Jika menemukannya, buka dan ikuti petunjuk di dalamnya untuk membuat arsip paket perangkat lunak di komputer Anda. Jika Anda terbiasa mengompilasi baris perintah, file PKGBUILD dan makepkg bekerja sama dengan cara yang mirip dengan MAKEFILE dan utilitas make .

Instruksi PKGBUILD mengunduh file kode sumber dan file lain yang diperlukan untuk membuat arsip paket. Alat pacman dipanggil secara otomatis untuk menginstal perangkat lunak dari arsip paket.

Dengan risiko menimbulkan kebingungan, beberapa paket AUR memang mengirimkan binari yang telah dikompilasi sebelumnya. Tapi binari tersebut tidak dihosting di AUR, mereka disimpan di tempat lain di internet. Entri AUR untuk paket tersebut hanya berisi file PKGBUILD yang mengunduh biner yang telah dikompilasi sebelumnya ke komputer Anda.

Arch Linux vs Ubuntu: Yang Harus Anda Gunakan?
TERKAIT Arch Linux vs Ubuntu: Yang Harus Anda Gunakan?

AUR memungkinkan siapa saja membuat PKGBUILD untuk perangkat lunak yang ingin mereka sediakan untuk pengguna Arch lainnya. Ini bisa berupa paket sumber terbuka atau tertutup, atau bahkan perangkat lunak komersial. Paket AUR yang mendapatkan suara pengguna yang cukup dapat dipromosikan ke repositori Arch reguler yang disebut repositori komunitas.

Masalah dengan AUR menjadi jelas saat Anda merebusnya sampai ke dasar. Ini adalah kumpulan skrip dari pengguna acak di internet. Dan mereka ingin Anda menjalankannya di komputer Anda.

Untuk mengurangi risiko, skrip yang diunggah ditinjau oleh sukarelawan yang berkualifikasi dan dihormati, yang dikenal sebagai pengguna tepercaya. Pengguna tepercaya memeriksa dan menguji PGBBUILDS, dan menghapus semua yang mengandung kesalahan berbahaya atau niat jahat.

TERKAIT: Cara Memperbarui Arch Linux

Bahaya Menggunakan AUR

Ini adalah kejadian yang sangat langka, tetapi terkadang hal-hal lolos dari jaring, terlepas dari ketekunan pengguna tepercaya. Kembali pada tahun 2015, skrip Valve Software Steam menghapus direktori home Anda jika sebelumnya Anda memindahkan direktori Steam ke lokasi baru.

Yang lebih menyeramkan adalah insiden tahun 2005, ketika paket AUR yatim piatu diambil alih oleh pengelola baru yang dengan sengaja menambahkan kode berbahaya ke file PKGBUILD. Contoh-contoh ini sudah tua dan tidak biasa, tetapi hal yang sama dapat terjadi lagi.

Tentu saja, jika Anda cukup mahir, Anda dapat meninjau sendiri konten file PKGBUILD. Transparansi ini adalah salah satu kekuatan AUR, tetapi membutuhkan pengetahuan skrip yang memadai untuk memanfaatkannya. Dan itu hanya mencakup file PKGBUILD itu sendiri. Jika menarik banyak kode sumber aplikasi, secara teoritis itu juga harus diperiksa.

Bahaya lain dalam penggunaan AUR adalah berbasis distribusi. Tidak semua distribusi berbasis Arch cukup mirip Arch untuk AUR bekerja dengan sempurna. AUR mengasumsikan sedang menginstal ke Arch Linux asli, dan versi yang telah ditambal dan diperbarui sepenuhnya, pada saat itu. Manjaro, misalnya, tidak secara resmi mendukung AUR meskipun berbasis Arch.

Namun, mengingat distribusi Anda mendukung AUR, apa yang dapat Anda lakukan untuk memastikan Anda menggunakannya seaman mungkin, apakah Anda memahami kode sumber dan skrip shell atau tidak?

Keamanan AUR: Periksa Detail Paket dan Reputasi

Bahkan tanpa tinjauan kode, ada beberapa langkah yang dapat Anda ambil untuk membantu memutuskan apakah Anda dapat mempercayai paket AUR.

Temukan Paket Anda di AUR

Ada halaman di AUR untuk setiap paket. Halaman web paket menjelaskan paket, dependensi apa yang dimilikinya, paket mana yang bergantung padanya, dan informasi berguna lainnya. Mulailah penyelidikan Anda dengan membuka AUR dan mencari paket Anda.

Bilah pencarian di situs web AUR

Apa Reputasinya?

Paket dapat dipilih oleh pengguna, dan ada juga skor popularitas yang diberikan untuk setiap paket. Semakin banyak suara dan semakin tinggi popularitas, semakin baik. Ini berarti paket tersebut terkenal dan banyak digunakan. Dengan kata lain, ini adalah paket yang memiliki reputasi baik.

Detail paket AUR untuk paket yay, dengan jumlah suara dan popularitas disorot

Reputasi paket merupakan indikasi yang baik dari kepercayaannya. Semakin banyak orang yang menggunakannya, dan memilihnya, semakin nyaman perasaan Anda saat menggunakannya.

Periksa Tanggal Kegiatan

Di bagian "Detail Paket", Anda akan melihat suara, skor popularitas, dan dua tanggalnya. Salah satunya adalah saat paket pertama kali diperkenalkan ke AUR dan yang kedua adalah saat paket terakhir diperbarui.

Detail paket AUR untuk paket yay, dengan tanggal pertama yang dikirim dan pembaruan terakhir disorot

Tanggal "Terakhir Diperbarui" akan memberi tahu Anda apakah paket sedang dipelihara secara aktif. Paket yang sudah lama tidak aktif harus diperlakukan dengan hati-hati.

Apakah URL Hulu merupakan Lokasi yang Valid?

Periksa juga “Upstream URL” dan verifikasikan bahwa itu masuk ke halaman web yang valid atau repositori kode untuk paket atau proyek. Jika tidak, ada yang salah.

Detail paket AUR untuk paket yay, dengan URL upstream disorot

Baca Komentar Pengguna

Ada komentar pengguna di bagian bawah setiap halaman AUR. Ini dapat meluas ke banyak halaman. Lihat apa yang dikatakan pengguna lain tentang paket tersebut, dan pertanyaan seperti apa yang mereka ajukan. Lihat juga solusi apa yang ditawarkan untuk permasalahan yang diangkat. Apakah ada komentar terbaru? Apakah paket ini masih memiliki basis pengguna aktif?

Daftar dan Berpartisipasi

Jika Anda mendaftar di AUR dan membuat akun gratis, Anda dapat meninggalkan komentar dan mengajukan pertanyaan. Juga, gunakan sumber daya lain seperti forum dan subreddit untuk menanyakan tentang paket tersebut.

Meskipun Anda tidak memahami skrip shell, masih ada beberapa hal yang dapat Anda periksa.

Periksa Isi PKGBUILD dan File Lainnya

Cara umum untuk mengakses AUR adalah dengan baris perintah “AUR helper” seperti yay , tetapi Anda juga dapat menggunakan AUR dengan cara manual dan praktis.

Pembantu AUR yang baik memberi Anda opsi untuk memeriksa file PKGBUILD, menghentikan penginstalan jika Anda tidak ingin melanjutkan. Dalam proses manual, Anda mencari paket di AUR dan mengunduh file PKGBUILD dan memeriksanya sebelum Anda menggunakannya. Jika Anda senang melanjutkan setelah meninjaunya, jalankan makepkg secara manual.

Merupakan ide bagus untuk menginstal setidaknya satu paket secara manual, sehingga Anda tahu mekanisme apa yang dilakukan pembantu AUR di latar belakang. Kami akan menggunakan pembantu AUR yay sebagai contoh.

Paket tersebut pertama kali dikirimkan pada tahun 2016 dan terakhir diperbarui pada Mei 2023. Pada saat penulisan, itu adalah pembaruan yang sangat baru. Yang juga perlu diperhatikan adalah pengirim asli, pengelola saat ini, dan orang terakhir yang mengemas perangkat lunak, semuanya adalah orang yang sama. Kontinuitas itu adalah pertanda baik.

Klik tautan URL "Git Clone URL" di bagian "Detail Paket" untuk menyalinnya ke clipboard.

Di jendela terminal, ketik "git clone", spasi, lalu tekan Shift+Ctrl+V untuk menempelkan URL ke baris perintah. Tekan "Enter" untuk memulai pengunduhan.

 git clone https://aur.archlinux.org/yay.git 

Mengkloning file PKGBUILD yay dari repositori gitnya

Saat unduhan selesai, ubah ke direktori "yay" yang baru.

 cd yay 

Mengubah direktoris ke folder yay.

Mari kita lihat file apa yang kita miliki.

 ls 

Daftar file yang diambil dengan ls

Ada satu file, file PKGBUILD. Seringkali ada satu atau dua file pembantu tambahan. Lihat melalui itu juga. Kami akan menggunakan less untuk membaca file tunggal kami.

 lebih sedikit PKGBUILD 

Memulai penampil file yang lebih sedikit untuk membuka file PKGBUILD yay

URL Apa yang Digunakan File PKGBUILD?

File PKGBUILD yang dibentuk dengan baik yang mengikuti konvensi akan membuat variabel untuk menampung URL yang digunakannya. Ini memberi kita daftar yang rapi di bagian atas file URL yang akan direferensikan oleh PKGBUILD. Dalam hal ini, hanya ada satu.

Memeriksa file PKGBUILD yay dengan penampil file yang lebih sedikit

Kita dapat melihat bahwa itu mengarah ke halaman GitHub untuk proyek yay .

Halaman GitHub dimiliki oleh pengguna dengan nama yang sama dengan pengelola yang terdaftar di halaman AUR untuk paket ini. Ini adalah dua indikasi bagus bahwa ini adalah paket yang aman.

Tapi kita akan melanjutkan dan melihat sedikit lebih dalam.

Cari Perintah Unduhan

Gunakan fitur pencarian less untuk mencari file untuk penggunaan wget atau curl . Kedua alat ini dapat digunakan untuk mengambil file jarak jauh. PKGBUILD yang berperilaku baik seharusnya tidak membutuhkan aktivitas semacam itu.

Jika Anda menemukan kejadian apa pun, perlakukan itu sebagai tanda bahaya dan jangan menginstal paket sampai Anda yakin itu jinak. Apa URL yang direferensikan oleh perintah wget atau curl ? Apakah mereka terlihat sah dan terkait dengan paketnya?

Jika Anda dapat memperoleh konfirmasi dari sumber tepercaya bahwa PKGBUILD dapat dipercaya, dan hanya ditulis dengan cara yang tidak mengikuti konvensi, Anda masih dapat memilih untuk menginstalnya.

Carilah rm, mv, dan Perintah Berbahaya Lainnya

Demikian pula, file PKGBUILD tidak perlu berisi perintah rm atau mv , juga tidak perlu mereferensikan apa pun di direktori "/ dev". Jika PKGBUILD langsung memanggil pacman , atau menyebutkan systemctl , systemd , atau komponen sistem vital lainnya seperti grub , perlakukan file PKGBUILD sebagai berbahaya dan jangan jalankan.

Anda dapat melakukan langkah-langkah yang telah kami gunakan sejauh ini meskipun Anda tidak dapat membaca skrip shell. Jika Anda mengetahui beberapa skrip shell, Anda dapat meninjau kode sebenarnya di PKGBUILD.

Berhati-hatilah dengan Kode yang Dikaburkan

Orang yang menulis kode berbahaya sering mencoba menyembunyikan niatnya dengan mengaburkannya. Mereka menggunakan sintaks yang minimalis, singkat, dan tidak dapat ditembus sehingga sulit untuk menguraikan apa yang mereka coba lakukan. Jika Anda melihat baris apa pun yang menggunakan pengalihan atau panggilan sed atau awk , perlakukan itu sebagai mencurigakan.

Menyalin baris-baris itu dan menjatuhkannya ke parser online seperti explainshell.com akan membukanya sehingga Anda dapat melihat apa yang sebenarnya mereka lakukan. Jika Anda dihadapkan dengan tanda kurung, titik koma, dan ampersand yang sangat padat, ada baiknya menggunakan parser online untuk memeriksa ulang apakah Anda telah menafsirkan dengan benar apa yang coba dilakukan oleh baris tersebut. Namun secara umum, kode yang sulit dibaca adalah tanda peringatan.

/ Rumah Anda Harus Menjadi Istana Anda

Mengkompilasi dan membangun PKGBUILD berlangsung di lingkungan chroot .

Ini adalah sistem file mini terisolasi yang memungkinkan pengembang memproses kotak pasir dengan membatasi akses mereka ke seluruh sistem file komputer Anda, dan mengurangi akses mereka ke perintah sistem lainnya.

Jika PKGBUILD secara langsung memanipulasi direktori home Anda, perlakukan itu sebagai bendera peringatan. Pastikan Anda sepenuhnya memahami apa yang dilakukannya sebelum Anda memutuskan untuk menjalankannya.

Anda Dapat Membantu Pengguna AUR Lainnya

Dengan paket yang sangat populer, kemungkinan besar Anda akan aman. Karena tingginya jumlah pengguna, masalah lebih cepat terlihat dan dilaporkan lebih cepat. Anda dapat melakukan bagian Anda dengan melaporkan masalah apa pun yang Anda temukan, dan meningkatkan paket yang bagus untuk meningkatkan reputasinya.

Jika Anda menemukan ada masalah dengan paket yang membuat Anda tidak ingin menginstalnya, Anda dapat menemukan diri Anda terikat karena Anda membutuhkan paket itu. Salah satu cara untuk maju adalah dengan meminta forum untuk saran paket lain yang dapat memenuhi kebutuhan khusus itu.

Linux biasanya memiliki banyak cara untuk menguliti kucing tertentu.

TERKAIT: Cara Menginstal Arch Linux Dari GUI