Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Witam, jeżeli już był taki temat to można wywalić, ale zastanawia mnie to, w jaki sposób kontrolowane są (albo jak samemu można to zrobić) repozytoria Debiana. Bo ten główny, polski serwer, to z tego co wiem hostuje Politechnika Gdańska. I teoretycznie przecież jest możliwość, że ktoś się na taki mirror włamie i doklei jakiś złośliwy kod (np. polskie służby). Szukałem w necie informacji na ten temat ale nie znalazłem nic ciekawego.
Zawsze wydawało mi się, że pobieranie z repozytoriów jest idealnym rozwiązaniem, ale jak się nad tym zastanawiam to w sumie nie wiem do końca, czy te mirrory są należycie zabezpieczone i w jaki sposób sprawdzane (np. jakieś sumy kontrolne czy coś?).
Offline
Nad bezpieczeństwem głównego repozytorium dba FTP team. Repozytoria są szyfrowane i sprawdzane są sumy kontrolne. Jeśli się czymś różnią to apt wyrzuca błąd. Na prawdę dużo trzeba żeby się włamać do mirrora i zrobić cokolwiek.
Offline
2133
Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:22:03)
Offline
No to fajnie ;) Dzięki za wytłumaczenie.
Offline
Repozytoria nie są szyfrowane, ale listy paczek mają podpisy cyfrowe z użyciem klucza GPG, tak samo, jak np źródła kernela na kernel.org.
https://www.kernel.org/signature.html
Apt-get (i Aptitude też) sprawdza podpisy paczek używając klucza publicznego i sum kontrolnych.
GPG:
https://pl.wikipedia.org/wiki/GNU_Privacy_Guard
https://pl.wikibooks.org/wiki/GnuPG
SHA - sumy kontrolne:
https://pl.wikipedia.org/wiki/SHA-2
Ostatnio edytowany przez Jacekalex (2015-08-11 23:37:31)
Offline
No i jacek wyczerpał temat ...
Ale i tak cos dorzuce uprzedzajac temat zawodnosci sum kontrolnych :-). Moze udac sie dostosowac zmodyfikowany pakiet do jednej funkcji haszujacej, natomiast do 3 juz raczej nie. (md5, sha1, sha256)
Below:
[edit] w celach informacyjnych, jako odpowiedz na pytanie, "a gdzie na to wszystko moge papaczać" [/edit]
1. targanie zrodel vim
2. rzut okiem na .dsc (widac sumy kontrolne + gpg)
3. rzut okiem do cache zeby popatrzec na binarke
4. pobranie binarki
5. policzenie sumy md5 pobranej binarki (i o dziwo sie zgadza :-).).
xxx@xxxx:~/temp$ apt-get source vim Czytanie list pakietów... Gotowe Budowanie drzewa zależności Odczyt informacji o stanie... Gotowe UWAGA: pakietowanie "vim" jest zarządzane w systemie kontroli wersji "Hg" pod adresem: http://anonscm.debian.org/hg/pkg-vim/vim Konieczne pobranie 12,2 MB archiwów źródeł. Pobieranie:1 http://ftp.debian.org/debian/ testing/main vim 2:7.4.712-3 (dsc) [2914 B] Pobieranie:2 http://ftp.debian.org/debian/ testing/main vim 2:7.4.712-3 (tar) [12,1 MB] Pobieranie:3 http://ftp.debian.org/debian/ testing/main vim 2:7.4.712-3 (diff) [150 kB] Pobrano 12,2 MB w 3s (3285 kB/s) gpgv: keyblock resource `/home/xxx/.gnupg/trustedkeys.gpg': file open error gpgv: Signature made sob, 13 cze 2015, 07:22:59 CEST using RSA key ID 331BA3DB gpgv: Can't check signature: public key not found dpkg-source: ostrzeżenie: błąd weryfikowania sygnatury w ./vim_7.4.712-3.dsc dpkg-source: info: rozpakowywanie vim w vim-7.4.712 dpkg-source: info: rozpakowywanie vim_7.4.712.orig.tar.gz dpkg-source: info: rozpakowywanie vim_7.4.712-3.debian.tar.xz dpkg-source: info: aplikowanie upstream/extra-rst-detection.patch dpkg-source: info: aplikowanie upstream/es.po-recover.patch dpkg-source: info: aplikowanie upstream/pythoncomplete-autoload-init.patch dpkg-source: info: aplikowanie upstream/debcontrol-syntax-vcs-git.patch dpkg-source: info: aplikowanie upstream/debian-runtime-versions.patch dpkg-source: info: aplikowanie upstream/lcs_space-overflow.patch dpkg-source: info: aplikowanie debian/vim-tiny.patch dpkg-source: info: aplikowanie debian/disabled-modelines.patch dpkg-source: info: aplikowanie debian/extra-tex-detection.patch xxx@xxxx:~/temp$ ls vim-7.4.712 vim_7.4.712-3.dsc vim_7.4.712-3.debian.tar.xz vim_7.4.712.orig.tar.gz xxx@xxxx:~/temp$ cat vim^C xxx@xxxx:~/temp$ cat vim_7.4.712-3.dsc -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Format: 3.0 (quilt) Source: vim Binary: vim-common, vim-gui-common, vim-runtime, vim-doc, vim-tiny, vim, vim-dbg, vim-gtk, vim-nox, vim-athena, vim-gnome Architecture: any all Version: 2:7.4.712-3 Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org> Uploaders: James McCoy <jamessan@debian.org> Homepage: http://www.vim.org/ Standards-Version: 3.9.6 Vcs-Browser: http://anonscm.debian.org/hg/pkg-vim/vim Vcs-Hg: http://anonscm.debian.org/hg/pkg-vim/vim Build-Depends: libacl1-dev, libgpmg1-dev [linux-any], autoconf, pdf2svg, ghostscript, debhelper (>= 7.2.3~), libtinfo-dev | libncurses5-dev, libselinux1-dev [linux-any], dpkg-dev (>= 1.15.1), libgtk2.0-dev, libxaw7-dev, libxt-dev, libxpm-dev, libgnomeui-dev, libperl-dev, tcl-dev, python-dev, ruby, ruby-dev, lua5.2, liblua5.2-dev Build-Depends-Indep: docbook-xml, docbook-utils Build-Conflicts: autoconf2.13, ruby1.8 (<< 1.8.7.358-8), ruby1.8-dev (<< 1.8.7.358-8) Package-List: vim deb editors optional arch=any vim-athena deb editors extra arch=any vim-common deb editors important arch=any vim-dbg deb debug extra arch=any vim-doc deb doc optional arch=all vim-gnome deb editors extra arch=any vim-gtk deb editors extra arch=any vim-gui-common deb editors optional arch=all vim-nox deb editors extra arch=any vim-runtime deb editors optional arch=all vim-tiny deb editors important arch=any Checksums-Sha1: 284940b08956e30ee73e4751543076dc6ade99c7 12070321 vim_7.4.712.orig.tar.gz 0da3e9d48b0036da6b883ebe60f1bca9e7ebd969 150360 vim_7.4.712-3.debian.tar.xz Checksums-Sha256: b334ba9f6682c605d29fcf45e7fe246b88061736b86c3e7cdfa309404a66b55c 12070321 vim_7.4.712.orig.tar.gz 7bd09be00f7f5fa68ab95d33af31884b9374355aec04963ed39a31e889ba2eea 150360 vim_7.4.712-3.debian.tar.xz Files: f45d334f4f6a89f29c0b8d21f6082399 12070321 vim_7.4.712.orig.tar.gz 1aa45e7801b7ecf163373c468dc8c3b9 150360 vim_7.4.712-3.debian.tar.xz -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQJ8BAEBCgBmBQJVe74zXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ5MUJGQkY0RDY5NTZCRDVERjdCNzJEMjNE RkU2OTFBRTMzMUJBM0RCAAoJEN/mka4zG6Pbtd8QAJJ14lVD3bY8pPpvD5xzGhMg M8/lWoZDTTROcwPVPOzEAUCo9+6/bthQji6YTBVvXWBCkVjOj1ImRsasqLaXvnpu XqN62e989s87gPSSUbtbpx82z/cVh0nWHvl01ebcdo+5OA+Q/WHziISe27pqf6xW KRCkTJMXoU+yeMgK1D5r7ixMHNlyEtLOFL4S74XGz8N/d8aypW++UidONoD0UAlN dlATLyoDE12VSXQPm2TSh2SH0BuJYaHlDIQVZjBtkAll+cMrX9M0aAhuyIZRL5J5 uVohOZRZpkAjLtKwZCq7EAbVKPP8AX1mlcfk98j9i/10dzvdUK+VY/+tdoOBQCje tRlfl98FFoJ6XjUZl9c90Isjh4vavZ2U4UZ7gCDUX4hHRLesAqkGeWKPzc87eRof 8yNY+plP/lKQO1gNVYpRAS06/eTP+W3KsnT3ZsAPT32thz+P+K4E8zWkDtoJHucL uomBfPCZsaYyM5lDZdrZXV6xd2swdjGWiIR1f+G0ynEd3C7V6vpjBZvAsxRNODTh b8qUrKz/mzTNAhivgnwt9CTGKVPhGYPz2Xx/uCHWzdkoMvfZ1K/6ZpH89Oe0OxhN wHlRuVsqrAQy9fCXrgxn2qrmW30L3kGXgoSZOkoipjUs2zoTQ3NjkVE1Bsbh5u7L dPcv5WBGb5sFJDf6/paQ =RN/4 -----END PGP SIGNATURE----- xxx@xxxx:~/temp$ apt-cache show vim Package: vim Version: 2:7.4.712-3 Installed-Size: 2382 Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org> Architecture: i386 Provides: editor Depends: vim-common (= 2:7.4.712-3), vim-runtime (= 2:7.4.712-3), libacl1 (>= 2.2.51-8), libc6 (>= 2.15), libgpm2 (>= 1.20.4), libselinux1 (>= 1.32), libtinfo5 Suggests: ctags, vim-doc, vim-scripts Description-en: Vi IMproved - enhanced vi editor Vim is an almost compatible version of the UNIX editor Vi. . Many new features have been added: multi level undo, syntax highlighting, command line history, on-line help, filename completion, block operations, folding, Unicode support, etc. . This package contains a version of vim compiled with a rather standard set of features. This package does not provide a GUI version of Vim. See the other vim-* packages if you need more (or less). Description-md5: 59e8b8f7757db8b53566d5d119872de8 Homepage: http://www.vim.org/ Tag: devel::editor, implemented-in::c, interface::commandline, interface::text-mode, role::program, scope::application, uitoolkit::ncurses, use::editing, works-with::text, works-with::unicode Section: editors Priority: optional Filename: pool/main/v/vim/vim_7.4.712-3_i386.deb Size: 982448 MD5sum: d990281fb232d0fbc6aed7ecc88e9078 SHA1: 1f6312e194d6ccc21baafdd5743de7e5c5efafdf SHA256: f759b993c35ef0118796ba91faf868766e9ae690cb1230a936252ba9131796b1 xxx@xxxx:~/temp$ cat /etc/apt/sources.list ## uaktualnienia bezpieczeństwa deb http://security.debian.org/ testing/updates main contrib non-free deb-src http://security.debian.org/ testing/updates main contrib non-free ## podstawowe repozytorium deb http://ftp.debian.org/debian/ testing main contrib non-free deb-src http://ftp.debian.org/debian/ testing main contrib non-free ## deb-multimedia - dodatkowe kodeki, odtwarzacze, etc. deb http://www.deb-multimedia.org/ testing main non-free deb-src http://www.deb-multimedia.org/ testing main non-free deb http://repository.spotify.com stable non-free ## podstawowe repozytorium #deb http://ftp.debian.org/debian/ experimental main contrib non-free #deb-src http://ftp.debian.org/debian/ experimental main contrib non-free xxx@xxxx:~/temp$ wget http://ftp.debian.org/debian/pool/main/v/vim/vim_7.4.712-3_i386.deb --2015-08-11 23:53:54-- http://ftp.debian.org/debian/pool/main/v/vim/vim_7.4.712-3_i386.deb Translacja ftp.debian.org (ftp.debian.org)... 130.89.148.12, 2001:610:1908:b000::148:12 Łączenie się z ftp.debian.org (ftp.debian.org)|130.89.148.12|:80... połączono. Żądanie HTTP wysłano, oczekiwanie na odpowiedź... 200 OK Długość: 982448 (959K) [application/x-debian-package] Zapis do: `vim_7.4.712-3_i386.deb' vim_7.4.712-3_i386.deb 100%[========================================================================================================>] 959,42K 1,69MB/s w 0,6s 2015-08-11 23:53:54 (1,69 MB/s) - zapisano `vim_7.4.712-3_i386.deb' [982448/982448] xxx@xxxx:~/temp$ md5sum vim_7.4.712-3_i386.deb d990281fb232d0fbc6aed7ecc88e9078 vim_7.4.712-3_i386.deb
Ostatnio edytowany przez gindek (2015-08-12 00:07:08)
Offline
No sama paczka jest opisana w podpisanym pliku *.dsc ale repozytoria mają swój własny plik inrelease, który wygląda mniej więcej tak: http://pastebin.com/m87SU3dU -- jak widać on też jest podpisany.
Offline
Time (s) | Query |
---|---|
0.00012 | SET CHARSET latin2 |
0.00005 | SET NAMES latin2 |
0.00097 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='3.16.82.208' WHERE u.id=1 |
0.00062 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '3.16.82.208', 1732276629) |
0.00043 | SELECT * FROM punbb_online WHERE logged<1732276329 |
0.00053 | SELECT topic_id FROM punbb_posts WHERE id=289685 |
0.00057 | SELECT id FROM punbb_posts WHERE topic_id=27634 ORDER BY posted |
0.00057 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=27634 AND t.moved_to IS NULL |
0.00006 | SELECT search_for, replace_with FROM punbb_censoring |
0.00120 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=27634 ORDER BY p.id LIMIT 0,25 |
0.00079 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=27634 |
Total query time: 0.00591 s |