DN42 е един прекрасен проект който ви дава възможност да развивате вашите BGP умения без да чупите продуктова среда, без да ви се налага да имате скъпи устройства с които да си правите лаборатория да си правите симулации с GNS3. Същевременно да не е чисто лабораторна среда при която няма проблеми от реалният свят. Участвам с 1 node в проекта от около година. Един от проблемите в проекта е 1:1 с реалният святкогато някой ти обяви префикси които не трябва да обявява. Понеже съм мързелив и не ми се пише на ръка филтри все път, реших проблема с елементарен bash скрипт които ми генерира prefix-list с име dn42 и в него наливам валидните префикси.

#!/bin/bash</pre>
vtysh -c 'conf t' -c "no ip prefix-list dn42"; #drop old prefix list

while read pl
do
vtysh -c 'conf t' -c "$pl"; #insert prefix list row by row
done < <(curl -s https://ca.dn42.us/reg/filter.txt | grep -e ^[0-9] | awk '{ print "ip prefix-list dn42 seq " $1 " " $2 " " $3 " ge " $4 " le " $5}' | sed "s_/\([0-9]\+\) ge \1_/\1_g;s_/\([0-9]\+\) le \1_/\1_g");
vtysh -c 'wr' #write new prefix list

Списъка с валидните предикси се взема https://ca.dn42.us/reg/filter.txt от където и основният конвейр + малко модификации от моя страна за да може да се генерира префикс листа. Командите се изпълняват през vtysh.

За 4-та поредна година ще се проведе конференцията за свободен софтуер и хардуер TuxCon. Персонално за мен това е най силната Пловдивска конференция която се провежда, тъй като не е насочена само за разработчици, а целевата група е много по голяма и аудиторията е много цветна. Ако не ме лъже паметта не мисля, че съм пропускал издание досега. Таз годишното издание е по специално за мен, тъй като имам презентация. Ще говоря за dnsdist и за това дали е полезен за вашата инфраструктура. Темата за която ще говоря си я избрах сам. Почувствах нужда да я покажа на света, тъй като е относително млада, а до момента почти не съм намерил нещо в нея която да не ми харесва. Не помня кога беше последният път когато ме впечатли толкова много нещо ново и същевременно да работи изключително добре.

Som ni vet CentOS 5 EOL är (Slutet av liv) från den 31 mars 2017. Vilket leder till följande mycket intressant problem:

# yum update
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
YumRepo Error: All mirror URLs are not using ftp, http[s] or file.
&nbsp;Eg. Invalid release/
YumRepo Error: All mirror URLs are not using ftp, http[s] or file.
&nbsp;Eg. Invalid release/
removing mirrorlist with no valid mirrors: /var/cache/yum/extras/mirrorlist.txt
Error: Cannot find a valid baseurl for repo: extras

 

Problemet är att korta listor över CentOS speglar 5 redan sparka in och försöker direkt få innehåll erhålls efter avslag:

# curl 'http://mirrorlist.centos.org/?release=5&arch=i386&repo=os'
Invalid release

 

I allmänhet övergripande mest försiktiga idé att installera om tenn med en normalfördelning som stöder arbetar fördelnings uppgradering. Tyvärr gruvan är inte fallet och det står inte som ett alternativ på bordet. Så var vi tvungna att spela lite gypsy schema – börja använda valv spegel. Just nu helt klar varelse och förnuft vet, Jag kommer inte att få några uppdateringar som inte är syftet med övningen, och bara vill ha att arbeta med yum för att installera paket som jag behöver. För detta ändamål kommenterade ut alla mirror variabler och lägga baseURL i /etc/yum.repos.d/CentOS-Base.repo. Slutligen får vi yum repa på vilken typ av

[base]
name=CentOS-$releasever - Base
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
baseurl=http://vault.centos.org/5.11/os/i386/
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

#released updates
[updates]
name=CentOS-$releasever - Updates
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
baseurl=http://vault.centos.org/5.11/updates/i386/
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
baseurl=http://vault.centos.org/5.11/extras/i386/
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

Slutligen spelar en yum ren alla && yum update. Ако всичко завърши без да получим грешка значи сме завършили успешно схемата и можем спокойно да си инсталираме остарелите пакети.

 

Mozilla Thunderbird

Tanken är densamma som i min position Firefox databaser vakuum och REINDEX. Sedan en tid tillbaka sparkar rebradinranite Debian versioner av Mozilla-produkter. Vid migrering av Icedowe till Thunderbird tänkte, Jag är inte defragmentera databasen, och hittills i min e-postklient har löpt allvarlig mängd bokstäver, e-postkonton och servrar, Användare och lösenord. Scenariot liknar den från mitt tidigare inlägg, med bara en liten ändring, där du kan söka efter filer 🙂

Linux-version

for db in $(find ~/.thunderbird/$(grep Path ~/.thunderbird/profiles.ini | cut -d'=' -f2) -maxdepth 1 -name "*.sqlite" -type f)
do
echo "VACUUM ${db}"
sqlite3 ${db} VACUUM
sqlite3 ${db} REINDEX
done

Mac os-version

for db in $(find ~/Library/Thunderbird/$(grep Path ~/Library/Thunderbird/profiles.ini | cut -d'=' -f2)  -maxdepth 1  -name "*.sqlite" -type f)
do
echo "VACUUM && REINDEX ${db}"
sqlite3 "${db}" VACUUM;
sqlite3 "${db}" REINDEX;
done

Till skillnad från Firefox profilmapp som i Thunderbird är helt på rätt spår (без utrymme) och inte behöva göra förändringar avgränsare.

Ända sedan google började gilla https-webbplatser, att ha mer massa installation av SSL- och där du kan. Sammantaget är förutom fler trakasserier för servrar som vi har och nedbrytning i hastighet. Bra är, som HTTP2 standarden för mer än ett och ett halvt år är integrerad i alla större webbläsare och servrar och http-stöd tillräckligt stabil. Tyvärr finns det ingen stabil Debianpaket att hålla i huvudsakliga http servrar HTTP2. De versioner som är nödvändiga för oss att använda HTTP2 är följande:

Mešanicata mig är stor och enligt ska användas beror på apache eller nginx. Jag fortfarande inte spelar att släppa loss på http2 apache debian 8 Eftersom jag haft aldrig men ha det så repoto backports, Det kommer inte vara ett stort problem. För nginx har redan spelat flera gånger. Övergripande, stegen är få och relativt enkla:

  1. Lägg till nginx officiella repo – i debian är 1,6 x vesiâta. 🙄
  2. Installera openssl själv från backports är för närvarande 1.0.2 (k) – Vad vi behöver för ALPN underhåll för alla fungerar och är snabb
  3. du installerar devscripts – Detta är det dags att dela som kommer att bildnem vårt paket eftersom officiellt kompileras med openssl 1.0.1 t som inte fungerar ALPN och inte webbläsarna svara väl och fungerar bara om http2-revving det
  4. inkrementirame versionen till håll inte paket som ciganiâta och det finns en ny version endast till sinkenm sorsovete

Låt oss börja steg för steg

Lägg till nginx repo

deb http://nginx.org/packages/debian/ codename nginx
deb-src http://nginx.org/packages/debian/ codename nginx

Lägg till ett k dev openssl-biblioteket 1.0.2 och annars bildnem det igen med 1.0.1 jag t är målet

echo 'deb http://ftp.debian.org/debian jessie-backports main' | tee /etc/apt/sources.list.d/backports.list

apt update && apt install libssl-dev -t jessie-backports

 

Nu fast att hans lägga till bibliotek som behövs för sammanställning av nginx

apt install devscripts

apt build-dep nginx

mkdir nginx-build

cd nginx-build

apt-get source nginx

Om du arbetar korrekt bör du ha en struktur som

~/nginx-build # ll
total 1004
drwxr-xr-x 10 root root   4096 Feb 21 18:37 nginx-1.10.3
-rw-r--r--  1 root root 103508 Jan 31 17:59 nginx_1.10.3-1~jessie.debian.tar.xz
-rw-r--r--  1 root root   1495 Jan 31 17:59 nginx_1.10.3-1~jessie.dsc
-rw-r--r--  1 root root 911509 Jan 31 17:59 nginx_1.10.3.orig.tar.gz

Går in papta där den uppackade källan nginx i mitt fall och Nginx-1.10.3 utföra kommandon som stega version, Personligen föredrar jag att lägga till 1 till detta bygga

debchange --newversion 1.10.3-1

När du lägger till en ändringslogg och kan gå vidare till riktiga sammanställning

debuild -us -uc -i -I -b -j6

Lite förtydligande om konfigurationen av kommandot:

-oss - uc de säger skriptet inte till “undertecknad” .DSC och förändringar filer.. -Jag och -Jag gör att skriptet ska ignorera filer för versionskontroll. -B att generera ett enda binärpaket. -Jansson som med göra hur många parallella processen att kompilera om 🙂

 

När du har slutfört ovanstående process ska vi installera våra nya paket. Om du redan har installerat nginx är bättre avinstallera det

apt remove nginx nginx-*

Inte heller en dålig idé att göra en säkerhetskopia av Nginx mapp i / etc. I allmänhet, en uppgradering från 1.6.5 till 1.10.3 Jag hade inga dramer men man vet aldrig. Nya paktei finns i mappen från den övre nivån och bör installeras med ett kommando som:

dpkg -i ../*.deb

Om allt gick smidigt du bara återstår att köra Nginx process och kan konfigureras http2 inte längre Syftet med denna artikel.