Jordan Gloor / How-To Geek Il repository AUR di Arch Linux contiene software guidato dalla comunità che è sicuro da usare se si prendono alcune semplici precauzioni. Anche se non capisci lo scripting della shell, ci sono indicatori che puoi usare per giudicare se un pacchetto è sicuro o meno.
AUR è uno dei gioielli nella corona di Arch Linux, fornendo migliaia di pacchetti software aggiuntivi. Ma questo repository guidato dall’utente è sicuro da usare o dovresti evitarlo?
L’AUR (Archivio utenti Arch) è un repository di software guidato dalla comunità che fornisce oltre 85.000 pacchetti software agli utenti di Arch Linux. A differenza di altri repository Arch come i repository core, extra e multilib, AUR non ospita pacchetti pronti per l’installazione. In effetti, non ospita affatto file binari o software in pacchetti.
AUR ospita i file di build dei pacchetti, chiamati PKGBUILD. Questi sono script di shell che vengono eseguiti dall’Arch makepkg attrezzo. Quando makepkg viene eseguito, cerca un file chiamato “PKGBUILD”. Se ne trova uno, lo apre e segue le istruzioni al suo interno per creare un archivio di pacchetti software sul tuo computer. Se hai familiarità con compilazione sulla riga di comandoun file PKGBUILD e makepkg lavorare insieme in modo simile a un MAKEFILE e al file make utilità.
Le istruzioni PKGBUILD scaricano i file del codice sorgente e altri file necessari per creare l’archivio del pacchetto. IL pacman tool viene chiamato automaticamente per installare il software dall’archivio del pacchetto.
A rischio di introdurre un po’ di confusione, alcuni pacchetti AUR Fare fornire binari precompilati. Ma quei file binari non sono ospitati in AUR, sono archiviati altrove su Internet. La voce AUR per quei pacchetti contiene solo un file PKGBUILD che scarica il binario precompilato sul tuo computer.
L’AUR consente a chiunque di creare un PKGBUILD per un software che vorrebbe rendere disponibile per altri utenti Arch. Questi possono essere pacchetti open o closed source o anche software commerciale. I pacchetti AUR che ottengono voti sufficienti dagli utenti possono essere promossi a un normale repository Arch chiamato repository della comunità.
Il problema con l’AUR diventa evidente quando lo riduci alle basi. È una raccolta di script di utenti casuali su Internet. E vorrebbero che li eseguissi sul tuo computer.
Per mitigare i rischi, gli script caricati vengono esaminati da volontari qualificati e rispettati, noti come utenti fidati. Gli utenti fidati ispezionano e testano i PKGBUILDS e rimuovono eventuali errori pericolosi o intenzioni dannose.
IMPARENTATO: Come aggiornare Arch Linux
I pericoli dell’utilizzo dell’AUR È un evento molto raro, ma a volte le cose sfuggono alla rete, nonostante la diligenza degli utenti fidati. Nel 2015, a Software per valvole Vapore copione cancellato la tua home directory se in precedenza avevi spostato la directory di Steam in una nuova posizione.
Più sinistro è stato l’incidente del 2005, quando un pacchetto AUR orfano è stato rilevato da un nuovo manutentore che ha deliberatamente aggiunto codice dannoso nel file PKGBUILD. Questi esempi sono vecchi e rari, ma le stesse cose potrebbero ripetersi.
Naturalmente, se sei sufficientemente esperto, puoi rivedere tu stesso il contenuto del file PKGBUILD. Questa trasparenza è uno dei punti di forza di AUR, ma richiede conoscenze di scripting sufficienti per trarne vantaggio. E questo copre solo il file PKGBUILD stesso. Se inserisce una massa di codice sorgente dell’applicazione, in teoria dovrebbe essere controllato anche quello.
Altri pericoli nell’uso di AUR sono basati sulla distribuzione. Non tutte le distribuzioni basate su Arch sono sufficientemente simili ad Arch perché AUR funzioni perfettamente. L’AUR presuppone che si stia installando su Arch Linux autentico e su una versione completamente aggiornata e aggiornata. Mangiaro, ad esempio, non supporta ufficialmente l’AUR anche se è basato su Arch.
Ma, dato che la tua distribuzione supporta AUR, cosa puoi fare per assicurarti di usarlo nel modo più sicuro possibile, che tu capisca o meno il codice sorgente e gli script di shell?
Sicurezza AUR: controlla i dettagli del pacchetto e la reputazione Anche senza revisioni del codice, ci sono passaggi che puoi eseguire per aiutarti a decidere se puoi fidarti di un pacchetto AUR.
Trova il tuo pacchetto su AUR C’è una pagina nell’AUR per ogni pacchetto. La pagina web del pacchetto descrive il pacchetto, quali dipendenze ha, quali pacchetti dipendono da esso e altre informazioni utili. Inizia la tua indagine da andare all’AUR e alla ricerca del tuo pacco.
Qual è la sua reputazione? I pacchetti possono essere votati dagli utenti e c’è anche un punteggio di popolarità assegnato a ciascun pacchetto. Più voti e maggiore è la popolarità, meglio è. Significa che il pacchetto è ben noto e ampiamente utilizzato. In altre parole, è un pacchetto affidabile.
La reputazione del pacchetto è una buona indicazione della sua affidabilità. Più persone lo usano e lo votano, più ti senti a tuo agio nell’usarlo.
Controlla le date delle attività Nella sezione “Dettagli pacchetto” vedrai i suoi voti, il punteggio di popolarità e due date. Uno è quando i pacchetti sono stati introdotti per la prima volta in AUR e il secondo è quando il pacchetto è stato aggiornato l’ultima volta.
La data di “Ultimo aggiornamento” ti dirà se il pacchetto viene mantenuto attivamente. I pacchetti che sono rimasti inattivi per lungo tempo devono essere trattati con cautela.
L’URL a monte è una posizione valida? Controlla anche “URL upstream” e verifica che vada a a pagina web valida o repository di codice per il pacchetto o il progetto. In caso contrario, c’è qualcosa che non va.
Leggi i commenti degli utenti Ci sono commenti degli utenti in fondo a ogni pagina AUR. Questi possono estendersi su molte pagine. Guarda cosa dicono gli altri utenti sul pacchetto e che tipo di domande fanno. Vedi anche quali soluzioni vengono offerte ai problemi che vengono sollevati. Ci sono commenti recenti? Questo pacchetto ha ancora una base utenti attiva?
Registrati e Partecipa Se ti registri su AUR e crei un account gratuito potrai lasciare commenti e fare domande. Inoltre, utilizza altre risorse come forum e subreddit per chiedere informazioni sul pacchetto.
Anche se non capisci gli script di shell, ci sono ancora un paio di cose che puoi controllare.
Controlla il contenuto del PKGBUILD e degli altri file Un modo comune per accedere all’AUR è con una riga di comando “AUR helper” come yayma puoi anche utilizzare AUR in modo pratico e manuale.
I buoni aiutanti AUR ti danno la possibilità di ispezionare il file PKGBUILD, interrompendo l’installazione se non vuoi procedere. Nel processo manuale, cerchi il pacchetto su AUR e scarichi il file PKGBUILD e lo ispezioni prima di usarlo. Se sei felice di procedere dopo averlo esaminato, corri makepkg manualmente.
È una buona idea installare almeno un pacchetto manualmente, in modo da conoscere i meccanismi di ciò che l’helper AUR sta facendo in background. Useremo il yay AUR helper come esempio.
Il pacchetto è stato presentato per la prima volta nel 2016 ed è stato aggiornato l’ultima volta a maggio 2023. Al momento in cui scriviamo, si tratta di un aggiornamento molto recente. Notevole è anche il mittente originale, l’attuale manutentore e l’ultima persona che ha impacchettato il software, sono tutti la stessa persona. Questa continuità è un buon segno.
Fare clic sul collegamento URL “Git Clone URL” nella sezione “Dettagli pacchetto” per copiarlo negli appunti.
In una finestra di terminale, digita “git clone”, uno spazio, quindi premi Maiusc+Ctrl+V per incollare l’URL nella riga di comando. Premere “Invio” per avviare il download.
git clone https://aur.archlinux.org/yay.git
Al termine del download, passare alla nuova directory “yay”.
cd yay
Andiamo vedere quali file abbiamo.
ls
C’è un singolo file, il file PKGBUILD. Spesso ci sono uno o due file helper aggiuntivi. Guarda anche quelli. Useremo less per leggere il nostro unico file.
less PKGBUILD
Quali URL utilizza il file PKGBUILD? Un file PKGBUILD ben formato che segue le convenzioni creerà variabili per contenere il file URL che usa. Questo ci fornisce un elenco ordinato nella parte superiore del file degli URL a cui PKGBUILD farà riferimento. In questo caso, ce n’è solo uno.
Possiamo vedere che punta a una pagina GitHub per il yay progetto.
La pagina GitHub è di proprietà di un utente con lo stesso nome del manutentore elencato nella pagina AUR per questo pacchetto. Queste sono due buone indicazioni che si tratta di un pacchetto sicuro.
Ma andremo avanti e guarderemo un po’ più a fondo.
Cerca i comandi di download Utilizzo IL less funzione di ricerca per cercare nel file gli usi di wget O curl. Entrambi questi strumenti possono essere utilizzati per recuperare file remoti. Un PKGBUILD ben educato non dovrebbe avere bisogno di tale attività.
Se trovi delle occorrenze, trattale come una bandiera rossa e non installare il pacchetto fino a quando non sei certo che sia benigno. Qual è l’URL che il file wget O curl i comandi fanno riferimento? Sembrano legittimi e correlati al pacchetto?
Se puoi ottenere conferma da una fonte attendibile che il PKGBUILD è affidabile, ed è solo scritto in un modo che non segue le convenzioni, puoi comunque scegliere di installarlo.
Cerca rm, mv e altri comandi pericolosi Allo stesso modo, non è necessario che un file PKGBUILD contenga l’estensione rm O mv comandi, né dovrebbero avere bisogno di fare riferimento a qualcosa nella directory “/dev”. Se PKGBUILD chiama direttamente pacmano menzioni systemctl, systemdo qualsiasi altro componente di sistema vitale come grubtratta il file PKGBUILD come pericoloso e non eseguirlo.
Puoi eseguire i passaggi che abbiamo usato finora anche se non puoi leggere gli script della shell. Se conosci alcuni script di shell, puoi rivedere il codice effettivo nel PKGBUILD.
Fai attenzione al codice offuscato Le persone che scrivono codice dannoso spesso cercano di nasconderne le intenzioni offuscandolo. Usano una sintassi minimalista, concisa e impenetrabile, quindi è difficile decifrare ciò che stanno cercando di fare. Se vedi linee che utilizzano il reindirizzamento o la chiamata sed O awk trattali come sospetti.
Copiare quelle righe e rilasciarle in un parser online come spiegareshell.com li decomprimerà in modo da poter vedere cosa fanno effettivamente. Se ti trovi di fronte a un pasticcio fitto di parentesi, punti e virgola e e commerciale, vale la pena utilizzare un parser online per ricontrollare di aver interpretato correttamente ciò che la riga sta cercando di fare. Ma in generale, il codice difficile da leggere è un segnale di avvertimento.
La tua /casa dovrebbe essere il tuo castello PKGBUILD viene compilato e le build avvengono in UN chroot ambiente.
Si tratta di mini file system isolati che consentono agli sviluppatori di elaborare in modalità sandbox limitando il loro accesso al resto del file system del computer e riducendo il loro accesso ad altri comandi di sistema.
Se PKGBUILD sta manipolando direttamente la tua home directory, consideralo come un flag di avviso. Assicurati di comprendere appieno cosa sta facendo prima di decidere di eseguirlo.
Puoi aiutare altri utenti AUR Con pacchetti estremamente popolari, è molto probabile che tu sia al sicuro. A causa del numero elevato di utenti, i problemi vengono individuati più rapidamente e segnalati più rapidamente. Puoi fare la tua parte segnalando eventuali problemi riscontrati e votando a favore dei pacchetti validi per migliorare la loro reputazione.
Se scopri che c’è un problema con un pacchetto che ti fa desiderare di non installarlo, puoi trovarti in difficoltà perché avevi bisogno di quel pacchetto. Un modo per andare avanti è chiedere sui forum suggerimenti di altri pacchetti che possono soddisfare quella particolare esigenza.
Linux di solito ha molti modi per scuoiare un dato gatto.
IMPARENTATO: Come installare Arch Linux da una GUI