Mind Dump, Tech And Life Blog
written by Ivan Alenko
published under license Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)copy! share!
posted in category Digital Despotism / Linux
posted at 29. Mar '18

Náhodné poznámky pri aktualizácii konfigov a reinštalácii Debianu 6

Zverejnené 03.12.2014, napísané niekedy v 06.2012

29.03.2018 Znovu zverejnené a pridané “ldaptunings” súbory. Už asi štyri roky nepoužívam LDAP a ešte doteraz ho nenávidím. Jedine s vlastnými nástrojmi, ldapmodify nie nie príjemný. Rovnako ako plávanie v tekutom betóne.

Nová inštalácia Debianu, Debian 6 -> Debian 7. Trochu staré, ale môže sa zísť.

BIOS+RAID

BIOS RAID je kokotina. Je to len polovičné riešenie a procesor stále odpracuje väčšinu práce. Ak sa ale doska oddrbe, tak treba nájsť rovnakú, alebo aspoň s rovnakým chipsetom, aby sa dali dáta obnoviť.

Preto je oveľa výhodnejší softvérový RAID.

Na BIOS RAID existuje utilita dm raid a tá si ukladá metadáta (DDF) na konci disku. Zbaviť sa ich je ohromne ťažké a aj pri preinštalácii sa stále budú ukazovať nejaké podivné raid 127 zariadenia. Treba vymazať posledných 3000 sektorov na konci disku. Pri 500GB disku si dm-raid nechal asi 1,13GB “voľného miesta” na konci disku.

Mazanie sa dá spraviť cez dmraid utilitu, alebo prinajhoršom cez dd. Ja som musel spraviť to druhé. TODO prikazy

Takže zmena v BIOSE, disky majú mód AHCI a nie RAID.

/dev/md/ddf0 2 drives
/dev/md126 w 2 dev.

Ten BIOS RAID tiež ukazoval zariadenia nejak takto: md127p1, md127p2, md127p3, md127p4. (A md126p1, …)

Ako vypnúť hocijaký RAID a device mapper? Pridať pri boote ku jadru “raid=noautodetect nomdadm nodmraid). Mne to moc nepomohlo, robil som to cez SystemRescueCD. Stále písalo device is busy or mounted.

"Device mounted or device /dev/sda4 busy"

alebo

"partman: mkfs.xfs: cannot open /dev/sda1: Device or resource busy"

Pomohlo ale mdadm --assemble --scan potom, ako som zastavil a spustil mdadm, teda neexistovali žiadne RAID jednotky.

Nejak som potom dostal tie dáta z toho BIOS RAIDu, takže som rád, ze to nejak išlo, potom po pár hodinách hľadania zmazal metadáta a nahodil softvérový RAID.

Disk som si rozdelil dopredu v Gparted zo SystemRescueCD. Potom sa v Debian inštalátore nastaví všetko na RAID a v “nastaviť softvérový RAID” sa spárujú jednotlivé partície.

Pozor, ak sa ukazujú na partíciách súborové systémy ako XFS, swap alebo EXT, tak robí sa to zle a je to kvôli zle vymazaným DDF metadátam. Pozor, nestačí len odstrániť partície a tak. Treba tých posledných 3000 sektorov prepísať nulami.

Mazanie: dmraid -rE

/etc/init.d/rc.local

Odstránené vypnutie NCQ. Kvôli bugu v starom 2.6.32, keď vypisovalo v syslogu niečo ako “spurious attempt”.

/etc/ssl/openssl.cnf

Prepísané. Momentálne netreba.

Certifikáty som dal do /etc/ssl/private.

posta.pem má key aj certifikát v jednom súbore.

PHP

Apache+mod_php je najpohodlnejšia cesta ako spojazdniť Roundcube a phpmyadmin. Koho trápi zlá škálovateľnosť.

Po inštalácii treba phpmyadmin vyhodiť z conf.d apachu a nechať iba to includnuté v SSL sekcii v sites-available. Nesmie to byť prístupné pod HTTP.

VÚC

DHCP na 192.168.59.x/24, GW 192.168.59.1

OpenWRT router:

  • lan->wan ide pingnúť
  • wan->lan sa nedá

Je to kvôli takému firewallu. Aby sa zvonku nedali pingnúť vnútorné počítače.

Ak počítač skenuje sieť z iného subnetu, tak bolo vidno všetky routre vo VÚC sieti, nejaké Linksysy. Nechápem.

Nastavenie siete, routovania

/etc/sysctl.conf

net.ipv4.ip_forward=1 - Aby mohli pakety z jedného sieťového rozhrania ísť na druhé (cez procesor).

MultiInterfaces

ifup eth1

RNETLINK answers: File exists
Failed to bring up eth1

Hlášku píše rôzne, podľa poradia, ako sa zapnú jednotlivé rozhrania.

Je pravda, čo sa píše. Nemôžu byť dve globálne brány. Treba nastaviť iba jednu, alebo dve a druhej pridať vyššiu metriku (nižšia priorita).

Ak je počítač brána a na eth0 má 10.0.0.1, tak netreba dávať ako bránu 10.0.0.1 (seba). Akurát treba upraviť firewall, aby inak routoval verejnú ip adresu, keď sa pristupuje zvnútra.

LDAP

Problémy:

limit

getent passwd

<passwd(all)> ldap result() failed: size limit exceeded

vid subory v rootovi ldaptuning

Hlavne nepridávať oldSizeLimit 500 do ldap.conf, ale treba to pridať do databázy.

nisMailAlias

nisMailAlias sa nachádza v misc.schema a nie v core/posixAccount!

správne URI

Divné chyby v logoch: zle napísaná URI v nslcd.conf

URI: /var/run/ldapi ale zadáva sa ako ldapi://%2Fvar%2Frun%2Fldapi

NSS

Slúži ako naming service - premieňa čísla práv na názvy užívateľov a skupín, určuje shelly a podobne.

libnss-ldap, je tu na to démon nslcd. Ukážková konfigurácia je v /usr/share/doc/libnss-ldap/examples/nsswitch.ldap

Indexy

slapd[3805]: <=bdb_equality_candidates: (uid) not indexed
alebo memberUid, neskôr ešte member, cn.

Treba pridať indexy, viď ldaptunings.

Po pridaní indexov a reštarte slapd netreba spúšťať slapindex.

Databáza

Je v /var/lib/ldap. Je tu konfigurák DB_CONFIG, ale v súčasnosti sa už tie veci nastavujú priamo v databáze. Viď ldaptunings súbory.

Migrácie

Balík migrationtools. Trochu zastaralé, ale čo už. Treba upraviť common.ph. Potom ešte v skripte migrujúcom užívateľov zakomentovať dva riadky s Kerberosom (krb čosi).

Heslá sú v (glib2) CRYPT formáte. man 3 crypt.

TODO autodir.

ldaptunings

Moje vlastné ldiff súbory s ladením konfigurácie LDAPu.

Zvýšenie obmedzenia položiek na stránku:

~/ldaptunings# cat raise_sizelimit
dn: olcDatabase={-1}frontend,cn=config
changetype: modify
replace: olcSizeLimit
olcSizeLimit: 2000

Zvýšenie cache:

~/ldaptunings# cat zvysitcachedb 
# nepodarilo sa mi zistit ako to zmazat selektivne
# ldapmodify -Q -Y EXTERNAL -H ldapi:/// -f zvysitcachedb  -v
#ldap_initialize( ldapi:///??base )
#delete olcDbConfig:
#	{0}set_cachesize 0 2097152 0
#add olcDbConfig:
#	set_cachesize 0 157286400 0
#modifying entry "olcDatabase={1}hdb,cn=config"
#ldap_modify: Inappropriate matching (18)
#	additional info: modify/delete: olcDbConfig: no equality matching rule
dn: olcDatabase={1}hdb,cn=config
changetype: modify
delete: olcDbConfig
-
add: olcDbConfig
olcDbConfig: set_cachesize 0 157286400 0
olcDbConfig: set_lk_max_objects 1500
olcDbConfig: set_lk_max_locks 1500
olcDbConfig: set_lk_max_lockers 1500

Dovecot

Pridaný passfilter iba pre skupiny vedenie a správcu, viď konfigurák.

Povolené metódy prihlásenia: PLAIN LOGIN. Vyžadované SSL.

service auth-worker

Nezadávať mode, potom to blbne, nedávať unix socket. Inak mode sa zadáva do unix socketu.

Dovecot + Roundcube

Treba mať povolené auth-system, aj keď worker nebeží pod rootom. Inak sa nedá prihlásiť. Nikto.

Postfix

Už odmieta hocijakú poštu, keď neexistuje príjemca. Nechodí to už mne, teda doménovému-košu.

Chyba postfix/smtpd[3833]:warning dic_nis_init: NIS domain not set - NIS lookups disabled.
Len pekne vymaž nis z aliasov a nahoď aliasy priamo cez LDAP. Cez NSS (viď ten rozdiel) to nejde.

Chyba smtpd: fatal: No SASL authentication mechanisms
(Dovecot ma povolené len PLAIN a LOGIN) Treba zmeniť smtpd_sasl_security_options z noplaintext, noanomymous na iba noanomymous. PLAIN a LOGIN sú plaintextové, ale idú povinne cez SSL, tak sú šifrované. Na tej úrovni to ale nevidno.

LDAP + Postfix

LDAPI NEJDE! Namiesto ldapi://%2Fvar%2Frun%2Fldapi treba zadať ldap://localhost.

Inak píše can't connect. Je to chyba smtpd, proces local to zvládne.

SQUID

http_port 3128 transparent

zvýšené limity, pridané acl TODO

RADIUS

Pridané logovanie aj dobrých, aj zlých prihlásení. Tiež bindnutie na 10.0.0.1.

Roundcube

Do cronu.daily pridaný cleandb.sh. Cez ln -s.

Add Comment