Czy PPA można bezpiecznie dodawać do mojego systemu i na jakie „czerwone flagi” należy uważać?

301

Widzę wiele interesujących programów, które można uzyskać tylko poprzez dodanie „PPA” do systemu, ale jeśli dobrze rozumiem, powinniśmy pozostać w oficjalnych „repozytoriach” w celu dodania oprogramowania do naszego systemu.

Czy jest jakiś sposób, aby nowicjusz wiedział, czy „PPA” jest bezpieczny, czy też należy go unikać? Jakie wskazówki powinien wiedzieć użytkownik, mając do czynienia z PPA ?.

Obrabować
źródło
2
Zobacz także: askubuntu.com/questions/7662/…
Ślimak mechaniczny
Możesz sprawdzić, czy dostępna jest również snappypaczka. Zazwyczaj są one ograniczone zasadami bezpieczeństwa. Musisz jawnie udzielić pewnych uprawnień do niektórych snapów, chociaż ogólny problem jest taki sam (musisz zaufać wydawcy).
Ken Sharp

Odpowiedzi:

213

PPA ( Personal Package Archive ) służy do dołączania określonego oprogramowania do twojego Ubuntu, Kubuntu lub innej dystrybucji zgodnej z PPA. „ Bezpieczeństwo ” umowy PPA zależy głównie od 3 rzeczy:

  1. Kto stworzył PPA - Oficjalne PPA z WINE lub LibreOffice, takie jak ppa: libreoffice / ppa i PPA, które sam stworzyłem, to nie to samo. Nie znasz mnie jako opiekuna PPA, więc kwestia zaufania i bezpieczeństwo są dla mnie BARDZO niskie (ponieważ mogłem zrobić uszkodzony pakiet, niezgodny pakiet lub cokolwiek innego złego), ale dla LibreOffice i PPA, które oferują na swojej stronie internetowej , TO daje mu pewną siatkę bezpieczeństwa. Tak więc, w zależności od tego, kto utworzył PPA, jak długo on lub ona tworzyła i utrzymuje PPA, będzie miało niewielki wpływ na to, jak bezpieczny jest dla Ciebie PPA. Umowy PPA, jak wspomniano powyżej w komentarzach, nie są certyfikowane przez Canonical.

  2. Ilu użytkowników korzystało z PPA - na przykład mam PPA z http://winehq.org w moim osobistym PPA. Czy zaufasz MNIE z 10 użytkownikami, którzy potwierdzają użycie mojego PPA, mając 6 z nich, którzy twierdzą, że jest do bani, niż ta, którą Scott Ritchie oferuje jako ppa: ubuntu-wine / ppa na oficjalnej stronie winehq. Ma tysiące użytkowników (w tym mnie), którzy korzystają z jego PPA i ufają jego pracy. To praca, która ma za sobą kilka lat.

  3. Jak zaktualizowana jest PPA - Powiedzmy, że używasz Ubuntu 10.04 lub 10.10 i chcesz skorzystać z TEGO specjalnego PPA. Dowiesz się, że ostatnia aktualizacja tego PPA miała miejsce 20 lat temu. Oo Szanse, jakie masz przy użyciu TEGO PPA są zerowe. Dlaczego?. Ponieważ zależności pakietów, których potrzebuje PPA, są bardzo stare i być może zaktualizowane zmieniają tak dużo kodu, że nie będą współpracować z PPA i prawdopodobnie uszkodzą system, jeśli zainstalujesz którykolwiek z pakietów tego PPA w swoim systemie.

    Jak zaktualizowana umowa PPA wpływa na decyzję o jej użyciu, jeśli chce skorzystać z TEGO PPA. Jeśli nie, wolą poszukać kolejnego. Nie chcesz Banshee 0.1 lub Wine 0.0.0.1 lub OpenOffice 0.1 Beta Alpha Omega Thundercat Edition z najnowszą wersją Ubuntu. To, czego chcesz, to PPA, które jest zaktualizowane do twojego aktualnego Ubuntu. Pamiętaj, że PPA wspomina o tym, dla której wersji Ubuntu jest stworzona lub dla wielu wersji Ubuntu.

    Jako przykład tego oto obraz wersji obsługiwanych przez Wine PPA:

    wprowadź opis zdjęcia tutaj

    Tutaj możesz zobaczyć, że ta PPA jest obsługiwana od Dinozaurów.

    Jedna ZŁA rzecz w tym, jak zaktualizowana jest PPA, jeśli opiekun PPA ma tendencję do wrzucania do PPA najnowszej, największej i najnowocześniejszej wersji konkretnego pakietu. Wadą tego jest to, że jeśli zamierzasz przetestować coś najnowszego, znajdziesz pewne błędy. Staraj się trzymać z PPA, które są zaktualizowane do stabilnej wersji, a nie do wersji niestabilnej, testowej lub deweloperskiej, ponieważ może / będzie zawierać błędy. Ideą posiadania najnowszego jest również TESTOWANIE i stwierdzenie, jakie problemy zostały znalezione, i ich rozwiązanie. Przykładem tego są codzienne PPA Xorg i codzienne PPA Mozilla. Otrzymasz około 3 codziennych aktualizacji dla X.org lub Firefox, jeśli dostaniesz dzienniki. Wynika to z włożonej pracy, a jeśli korzystasz z ich codziennych umów PPA, oznacza to, że chcesz pomóc w wyszukiwaniu błędów lub programowaniu, a NIE w środowisku produkcyjnym.

Zasadniczo trzymaj się tej 3, a będziesz bezpieczny. Zawsze szukaj producenta / opiekuna PPA. Zawsze sprawdzaj, czy wielu użytkowników go używało, i zawsze sprawdzaj, jak zaktualizowana jest umowa PPA. Miejsca takie jak OMGUbuntu , Phoronix , Slashdot , H , WebUp8, a nawet tutaj w AskUbuntu, są dobrym źródłem do znalezienia wielu użytkowników i artykułów mówiących i polecających niektóre PPA, które przetestowali.

Przykłady stabilnych PPA - LibreOffice, OpenOffice, Banshee, Wine, Kubuntu, Ubuntu, Xubuntu, PlayDeb, GetDeb, VLC są dobrymi i bezpiecznymi PPA z MOJEGO doświadczenia.

Półstabilny PPA - X-Swat PPA to środkowy PPA między krawędzią krwawienia a stabilną.

Bleeding Edge PPA - Xorg-Edgers to najnowocześniejszy PPA, chociaż powinienem wspomnieć, że po 12.04 ten PPA stał się coraz bardziej stabilny. Nadal oznaczałbym go jako najnowocześniejszy, ale jest wystarczająco stabilny dla użytkowników końcowych.

Możliwość wyboru PPA - hamulec ręczny oferuje tutaj sposób na wybór, czy chcesz mieć stabilną wersję, czy też chcesz najnowszą wersję (zwaną również migawką). W takim przypadku możesz wybrać, czego chcesz użyć.

Zauważ, że w przypadku użycia na przykład X-Swat ppa z Xorg-Edgers PPA, dostaniesz mieszankę między nimi (z priorytetem w stosunku do Xorg-Edgers). Wynika to z faktu, że oba starają się zawrzeć prawie takie same pakiety, więc będą się wzajemnie nadpisywać i tylko najbardziej zaktualizowany pojawi się w twoich repozytoriach (z wyjątkiem sytuacji, gdy ręcznie poprosisz go o pobranie pakietu z X-Swat).

Niektóre umowy PPA mogą aktualizować niektóre pakiety po dodaniu ich do repozytorium, ponieważ zastąpią one własną wersją pewien pakiet, aby oprogramowanie PPA działało poprawnie w systemie. Mogą to być niektóre pakiety kodu, wersje Pythona itp. Inne, takie jak LibreOffice PPA, usunie wszelkie istnienie OpenOffice z twojego systemu, aby zainstalować tam pakiety LibreOffice. Zasadniczo przeczytaj, co inni użytkownicy skomentowali na temat konkretnego pakietu, a także przeczytaj, czy pakiet jest zgodny z twoją wersją Ubuntu.

Jak sugeruje poniższy komentarz Jeremy Bicha, niektóre zawrotne krawędzie (PPA, które są bardzo aktualne, w tym dodanie oprogramowania jakości alfa, Beta lub RC w PPA) mogą potencjalnie uszkodzić cały system (w najgorszym przypadku). Jeremy wymienia przykład wielu.

Luis Alvarado
źródło
Czy dotyczy to wielu umów PPA, które należy zainstalować, aby uzyskać motywy takie jak równonoc, elementarne itp.?
abel
2
Tak. Dotyczy to każdej umowy PPA. Pamiętaj, że PPA to po prostu łatwy sposób na aktualizację programu lub grupy programów przez kogoś, kto poświęci czas na ich aktualizację. Jest to więc miejsce, w którym ktoś poświęca swój czas na aktualizację lub kompatybilność z najnowszym / starszym systemem. Ale ponieważ robi to człowiek, po drodze mogą wystąpić błędy.
Luis Alvarado,
14
Jak odkryć, ilu użytkowników ma PPA?
damien
Czy dodanie PPA daje hakerom pewne dziury do przejścia?
matematyka
@mathmaniage Kod źródłowy musi zostać przesłany i zbudowany przez system, aby można go było sprawdzić w dowolnym momencie.
Ken Sharp
56

Aby opracować PPA na starterze, współtwórca musi podpisać kodeks postępowania ubuntu . Oznacza to, że deweloper musi przestrzegać minimalnego zestawu standardów.

Zwykle ludzie powinni następnie skonsultować się z ubuntuforums, aby dowiedzieć się, kto używał poszczególnych ppa i czy mogą powodować jakiekolwiek problemy.

W przypadku „nowicjusza” lub „nooba” - moja najlepsza rada to omijać umowy PPA, dopóki nie poczujesz się pewnie, że rozumiesz kilka rzeczy na temat wiersza poleceń, potencjalnych komunikatów o błędach i kilka sposobów diagnozowania problemów.

Aby usunąć problemy powodujące ppa, możesz w większości przypadków użyć polecenia „ ppa_purge

Jeśli czujesz się zdenerwowany, rozważ kopię zapasową obrazu komputera za pomocą narzędzia takiego jak clonezilla . W ten sposób, jeśli coś pójdzie nie tak i nie możesz tego rozwiązać, przynajmniej masz szybki sposób na przywrócenie komputera do stanu sprzed rozpoczęcia gry.

Powiedziawszy to wszystko, ppa są niezwykle przydatne, aby uzyskać najnowsze wersje oprogramowania - szczególnie dla tych, którzy nie próbują aktualizować co 6 miesięcy i trzymają się wersji ubuntu LTS.

fossfreedom
źródło
1
Bardzo chciałbym poznać Twoją odpowiedź u góry, tylko za poradę dla nowicjuszy. :(
Braiam
@fossFreedom: czy otrzymuję automatyczne aktualizacje, jeśli instaluję za pośrednictwem ppa lub apt-get installnarzędzia
Rajat Gupta
1
@ użytkownik01 - jeśli osoba, która utworzyła PPA, zaktualizuje pakiet nową wersją, tak - otrzymasz aktualizację automatycznie, jeśli najpierw dodasz PPAapt-get install package
fossfreedom
2
Oczywiście złośliwy użytkownik nie zostanie zatrzymany przez podpisanie kodeksu postępowania ...
evilsoup
Kopie zapasowe nie uchronią Cię przed kradzieżą cyfrową (np. Złośliwy plik PPA wysyłający pliki cookie przeglądarki lub klucze ssh do domu). Jeśli naprawdę się denerwujesz, powinno być bezpieczne zainstalowanie i uruchomienie PPA wewnątrz maszyny wirtualnej, kontenera lub schroota .
joeytwiddle
21

Jak już powiedziano, nie chodzi tylko o złośliwe oprogramowanie. Jest także tak, że niektóre programy mogą naprawdę być na etapie testowania i nie być gotowe do użytku produkcyjnego. Jeśli zainstalujesz go i będziesz polegać na nim, może się okazać, że jest on wadliwy, zawodny i może ulec awarii - pozostawiając cię bez pracy, którą wykonałeś.

Niektóre z nich mogą również nie radzić sobie dobrze z innymi aspektami Ubuntu, takimi jak Unity lub Gnome, powodując problemy, które są trudne do wyśledzenia, a może nawet powodują niestabilność systemu.

Nie dzieje się tak dlatego, że oprogramowanie jest złe, ale dlatego, że być może nie zostało jeszcze w pełni przetestowane lub dlatego, że zostało udostępnione, aby ludzie mogli je przetestować, ale nie zostało jeszcze przeznaczone do wydania jako oprogramowanie produkcyjne. Powinieneś więc zachować ostrożność, chociaż niektóre z nich są naprawdę całkiem dobre.

Kilka miesięcy temu zainstalowałem zalecany pakiet z konkretnego PPA, który zmiażdżył mój system na tyle, że musiałem ponownie zainstalować Ubuntu. Byłem nowym użytkownikiem i nie wiedziałem, co jeszcze robić; przy odrobinie większej wiedzy mógłbym rozwiązać problem i przywrócić go bez ponownej instalacji (chociaż to też było przydatne w nauce Ubuntu, ale gdybym pracował zapisany na moim komputerze, straciłbym go) .

Bądź więc ostrożny, zadawaj pytania, rób częste kopie zapasowe (!!!) i wiedz, że złośliwe oprogramowanie jest mało prawdopodobne (choć nie niemożliwe).

Kelley
źródło
19

Wszystkie obawy wymienione przez innych tutaj są niezwykle ważne do zrozumienia. To powiedziawszy, ponieważ jest to oprogramowanie typu open source, możemy dokładnie powiedzieć, co PPA zmieniło się z wersji pakietu w Ubuntu. Jako przykładu użyjemy PPA z tego duplikatu .

Najpierw dgetpobierzemy źródło z PPA, narzędzie, które pobierze wszystkie elementy pakietu źródłowego Debiana, podając link do dscpliku:

dget -u https://launchpad.net/~anton0/+archive/unity/+files/unity_5.12-0ubuntu2~ppa1.dsc

Znalazłem ten link, klikając „Wyświetl szczegóły pakietu”:

Zobacz szczegóły pakietu

I wtedy:

znajdź plik dsc

Następnie otrzymamy źródło pakietu w archiwum Ubuntu:

apt-get source unity

Na koniec użyjemy, debdiffaby zobaczyć różnice między źródłem dwóch pakietów:

debdiff unity_5.12-0ubuntu1.1.dsc unity_5.12-0ubuntu2~ppa1.dsc

Dane wyjściowe tego polecenia mają około trzystu wierszy, więc umieszczę je na wklejce zamiast bezpośrednio w oknie. Teraz nie mogę poręczyć za to, jak dobry jest kod, ponieważ tak naprawdę nie znam C ++, ale wydaje się, że robi to, co twierdzi, a nie coś złośliwego.

andrews coś
źródło
1
+1, ale Twój link do pastebin jest uszkodzony.
niezapomniany 2
Jest to doskonały przykład tego, jak sprawdzić, co zostało zrobione z pakietem PPA. Link do pastebin jest całkowicie nieistotny. +1
Ken Sharp
13

PPA to folder internetowy zawierający oprogramowanie, które można zainstalować. To naprawdę nie jest dużo bardziej skomplikowane. Podczas instalowania pakietu robisz to z uprawnieniami administratora, a pakiet ma uruchamiane skrypty, więc są uruchamiane jako root. Oznacza to, że instalacja jakiegokolwiek oprogramowania jest niebezpieczna i musisz zaufać deweloperowi lub dystrybutorowi.

Archiwum apt, PPA lub inne, jest regularnie sprawdzane pod kątem aktualizacji zainstalowanego oprogramowania. „Problem” polega na tym, że każdy może dostarczyć nowszy pakiet zainstalowanego oprogramowania. Na przykład możesz dodać PPA, aby uzyskać ładny motyw i automatyczne aktualizacje tego motywu. Ale po dodaniu tego repozytorium właściciel może dodać na przykład załatany pakiet openssh-server, który pojawi się jako aktualizacja w Ubuntu. Można to zrobić rok po dodaniu PPA, dlatego należy zwracać uwagę na aktualizacje.

System PPA zapobiega jednak manipulowaniu pakietami przez osoby trzecie, więc jeśli ufasz programistom / dystrybutorowi, PPA są bardzo bezpieczne. Na przykład, jeśli zainstalujesz Google Chrome, dodają one umowę PPA, dzięki czemu będziesz otrzymywać za nią automatyczne aktualizacje. Dodają „deb http://dl.google.com/linux/chrome/deb/ stable main”. Jeśli serwer DNS, którego używasz, został zhakowany, aby wskazać dl.google.com gdzie indziej, mogliby przesłać łatane oprogramowanie na wszystkich, którzy zainstalowali Chrome. Ale Ubuntu odmówiłby ich instalacji, ponieważ nie można było ich podpisać kluczem prywatnym Googles. Pod tym względem umowy PPA są bardzo bezpieczne.

Nie można powiedzieć, że umowa PPA jest bezpieczna czy nie. To zależy od ludzi, którzy używają go do dystrybucji oprogramowania. Dzięki darmowemu oprogramowaniu ludzie mogą spojrzeć na źródło i sprawdzić, czy jest ono bezpieczne, czy nie. Gdy wiele osób korzysta z archiwum, takiego jak zwykłe archiwa Ubuntu, masz recenzję. Małe archiwa z niewielką liczbą użytkowników tego nie mają, więc są mniej wiarygodne. Główną lekcją jest to, że bez względu na używany system powinieneś zachować ostrożność podczas instalowania oprogramowania.

Jo-Erlend Schinstad
źródło
11

Opierając się na odpowiedzi Luisa Alvarado , powinieneś zdawać sobie sprawę z następujących zagrożeń:

  • Złośliwe pakiety - pakiety mogą próbować wyrządzić ci szkodę. Jest to dla nich łatwe, ponieważ mogą uruchamiać dowolny kod z uprawnieniami administracyjnymi.
  • Niska jakość lub niezgodne oprogramowanie - aplikacja może nie działać dobrze. Może to przypadkowo spowodować szkody, na przykład zakłócając działanie innego oprogramowania, niszcząc dane lub wyciekając prywatne informacje.

i powinieneś zwracać uwagę na następujące czynniki:

  • Uczciwość opiekuna - czy opiekun może potajemnie spróbować cię skrzywdzić?
  • Bezpieczeństwo opiekuna - czy opiekun jest narażony na atak osoby trzeciej?
  • Wiarygodność opiekuna - czy opiekun zareaguje na potrzebę aktualizacji w rozsądnym terminie? Czy są zobowiązani do zachowania PPA w perspektywie długoterminowej?
  • Bezpieczeństwo repozytorium - czy pakiety są podpisywane przez opiekuna?
  • Wydajność oprogramowania - czy oprogramowanie jest wolne od błędów i jest kompatybilne z twoim systemem?
ændrük
źródło
8

Pakiety PPA nie są sprawdzane pod kątem złośliwego oprogramowania. Więc chociaż ktoś może pakować coś takiego jak XBMC, może również bardzo łatwo dodać trochę oprogramowania szpiegującego / złośliwego oprogramowania. Dlatego nie powinieneś dodawać żadnych losowych PPA.

tgm4883
źródło
czy możesz powiedzieć, co to właściwie jest XMBC, jestem całkiem nowym ubu
kernel_panic
XBMC to oprogramowanie centrum multimedialnego. To dobre i bezpieczne oprogramowanie. Użył go tylko jako przykładu, może to być dowolne oprogramowanie.
Anonimowy,
Co może zrobić złośliwe oprogramowanie w Ubuntu, powinno prosić o pozwolenie na wszystko i wszystko w porządku?
kernel_panic
Po zainstalowaniu (tzn. Przyznaniu mu uprawnień root do kopiowania plików do katalogów systemowych i uruchamiania niestandardowych skryptów) może zrobić z systemem wszystko, co tylko zechce. Dlatego ważne jest, aby instalować pakiety z zaufanych źródeł.
umówić na
Błędny. Kiedy instalujesz oprogramowanie, robisz to podczas rootowania. Dość łatwo jest uzyskać to pozwolenie i zacząć robić złe rzeczy.
tgm4883,
3

Po dodaniu ppa i zainstalowaniu programu za jego pośrednictwem.

Zasadniczo dajesz zgodę na umieszczenie tego programu w dozwolonym obszarze wykonywalnym (/ bin / / sbin / / usr / bin /).

Teraz, jeśli sam program jest / ma w jakiś sposób złośliwe oprogramowanie, system nie będzie na niego narzekał, ponieważ to ty dodałeś ppa, uważając go za godny zaufania.

Gdy program pochodzi z repozytoriów Ubuntu, są one najpierw sprawdzane (chciałbym powiedzieć dokładnie, ale nie wiem: P), więc te z repozytoriów Ubuntu na pewno są wolne od złośliwego oprogramowania / programów szpiegujących.

Dla każdego innego ppa to Ty / użytkownik decydujesz, czy możesz mu zaufać, czy nie.

wisemonkey
źródło
Co może zrobić złośliwe oprogramowanie w Ubuntu, powinno prosić o pozwolenie na wszystko i wszystko w porządku?
kernel_panic
6
Po zainstalowaniu oprogramowania pojawi się prośba o pozwolenie na rootowanie (ekran ciemnieje i wprowadzasz hasło). W tym momencie może zrobić wszystko : usuń wszystko z pudełka, zainstaluj keylogger, zmień tło pulpitu na hello kitty, cokolwiek .
SCdF,
1
@sanjayasanjuubuntu: podczas instalacji prosi o pozwolenie na przebywanie w obszarze wykonywalnym, gdy już tam jest, może łatwo uzyskać dostęp do wszelkich informacji, które nie są su. Istnieją programy, które wymagają uprawnień do uruchomienia, jednak jeśli sam program ma dodatkowy bagaż (czytaj złośliwe oprogramowanie) podczas pakowania, może on działać bez problemów po wpisaniu hasła.
wisemonkey
Umowy PPA dla deweloperów są najbezpieczniejszą trasą, dlatego też trzeba sprawdzić czas trwania autora w Launchpad. Czynniki te gwarantują bezpieczny, stabilny system korzystający z PPA dla najnowszych programów. Znalazłem tę drogę, aby moje LTS działało długo dzięki konkretnym nowym wersjom programów, których używam.
Arup Roy Chowdhury