Tag Archives: Fun

GnuPG ar OpenGPG ar tiesiog GPG2 ar PGP + email

Sveiki, kaip besiseka?

Mano bendradarbis, Ignas Kazlauskas, man pasiūlė pasirašyti savo elektroninius laiškus. Kad niekas, nepastebėtai, negalėtų pakeisti laiško turinio. Tokia mintis man visai patiko. Taigi jis man atsiuntė laiškutį, kaip pasirašyti savo laišką, kuriame buvo pateiktos instrukcijos. Tomis instrukcijomis, aš nusprendžiau pasidalinti su Jumis!

Instrukcijos

Rakto kurimas ir naudojimas susideda iš kelių etapų.

  1. Mes turime susikurti PGP raktą.
  2. Jei norime jį galime patalpinti į viešą raktų serverį (Jie tarpusavyje susisinchronizuoja)
  3. Susikonfigūruoti klientą
  4. Pasirašyti draugų raktus

Tam mes naudosime:

  • gnupg2
  • gnupg-agent
  • kmail arba evolution

Susidiekime programikes:


$ aptitude install gnupg2 gnupg-agent kmail


Dar šiektiek, apie PGP ir GnuPG:
PGP (Pretty Good Privacy) yra duomenų šifravimo ir dešifravimo technologija, kuri suteikia kriptografinį privatumą ir autentiškumą duomenų perdavimo metu. PGP yra dažnai naudojama pasirašyti, užšifruoti ir iššifruoti tekstus, elektroninius laiškus, failus, katalogus ir visą diską. Phil Zimmermann šią technologiją sukūrė 1991 m.
GPG – GNU Privacy Guard (GnuPG arba GPG), yra nemokama licencija (GPL) licenzijuota alternatyva PGP kriptografinei programinei įrangai. GnuPG yra suderinamas su RFC 4880, kuriuo šiuo metu yra vystoma OpenPGP specifikacija IETF‘o. Dabartinės versijos PGP (ir Veridis’ Filecrypt) yra suderinamos su GnuPG ir kitų OpenPGP-suderinamų sistemų

Rekto generavimas


gpg2 --gen-key


generuojamas raktas, Jūsų pasiteiraus:

  • Rakto tipas: Siūlome, RSA and RSA (1)
  • Rakto dydis: 4096
  • Rakto galiojimas: Aš pasirinkau, 0, rakto galiojimas, nesibaigia, patvirtinkime, kad rakto galiojimas nesibaigia.
  • Naudotojo Vardas: El. pašto, naudotojo tikrieji vardas ir pavardė
  • Rakto el. pašto adresas: Įrašome el. pašto adresą
  • Rakto komentaras: Komentaras nebūtinas
  • Rakto patvirtinimas: patikriname ar viską gera isuvedėme ir jei kas blogai ištaisome, ištaisė mygiame O ir Enter
  • Slaptažodžio įvedimas: pasirenkame ir įrašome slaptažodį, slaptažodis reikalingas, jei norite, kad niekas be Jūsų žinios prisėdęs prie Jūsų pašto programos, negalėtų išsiųsti el. pašto. Jei paliksite tusčią laukelį, pinentry programos pagalba turėsite įvesti pin kodą
  • Rakto generavimas: šio žingsnio metu rekomenduotina kuo labiau išnaudoti procesorių ir kietąjį diską, galima paleisti, kokio DVDRip kodavimą ar bentjau su -c "strings /dev/sda bei judinti pelytę bei paleisti katiną palakstyti per klavietūrą!

Peržiūrėkime ar pasidarė mūsų raktas: gpg2 --list-keys. Tokia komanda grąžina:


$ gpg2 --list-keys
/home/$LOGNAME/.gnupg/pubring.gpg
---------------------------------
pub 4096R/81582DBB 2012-02-18
uid Tikras Vardas
sub 4096R/E8FEC9DA 2012-02-18


Tuomet, karts nuo karto, mums reikės pasidalinti Mūsų viešu raktu, tai galime padaryti komanda:


gpg2 --armor --export 81582DBB > MusuViesasRaktas.pub.key


Jei pastebėjote, aš pariebinau vieną rakto vietą, tai yra rakto ID (IDentification), kiek suprantu.

  • –armor
  • nurodo, kad tai bus tekstas, o ne duomenų bazė

  • –export
  • išveda raktą į ekraną

  • > MusuViesasRaktas.pub.key
  • nurodo, kad visą komandos išvedimą į ekraną nukreipia į bylą vardu: MusuViesasRaktas.pub.key

Na ir jei norėsime, kad mūsų Certifikatas nebegaliotų, turėsime susigeneruoti revoke-key:


gpg2 --output Atsaukti-Certifikata.asc --gen-revoke D8B179FA


Vėliau, jei kažkas sukompromituos (nulauš) Jūsų raktą, galėsite savo raktą panaikinti. patalpinę šį raktą į vieną iš internetinių raktų serverių.

Rakto viešinimas

Visų pirma mums reikia susikonfigūruoti savo gnupg programą, tam mes paleiskime programą:


$ gpgconf
# Ji mum išveda kažką panašaus į:
gpg:GPG for OpenPGP:/usr/bin/gpg2
gpg-agent:GPG Agent:/usr/bin/gpg-agent
scdaemon:Smartcard Daemon:/usr/bin/scdaemon
gpgsm:GPG for S/MIME:/usr/bin/gpgsm
dirmngr:Directory Manager:/usr/bin/dirmngr


ir tuomet atidarome gpg.conf failą:


$ vi ~/gnupg/gpg.conf
# Šio failo apačioje prirašome:
keyserver hkp://pgp.mit.edu


Dabar beliko išsiųsti raktą į serverį:


gpg2 --send-keys D8B179FA


Kliento konfigūracija

Kadangi, mano pašto dėžutėje yra laiškai nuo 2004 🙂 ir Visi jie guli 1 kataloge, Thunderbird, su tokiu kiekiu laiškų, prastai susitvarko 🙂 Prasianalizavus kodėl, paaiškėjo, Thunderbird, laiškų saugojimui naudoja mbox laiškų saugojimo formatą, o KMail – palaiko kelis formatus, tarp jų yra maildir… KMail programoje, pasirinkus maildir formatą galima vienu metu ir trinti laiškus iš katalogo ir gauti, tvarkyti laiškus… Ir labai paprastas ir lengvas migravimas visų mano laiškų į KMail… 🙂 vat,

KMail nustatymas su PGP. Nueikite į Settings -> Configure KMail, ten pasirenkame Identities ir pasirinkę savo tapatybę spauskime Modify atsidariusiame lange, pasirinkite kertelę Cryptogaphy tuomet paspaudę Sign ir Encrypt (ar kažką panašaus) Change pasirenkame raktą, kurį norime naudoti 😉 ir viskas, mes jau galėsime pasirašyti ir užšifruoti pranešimą… 🙂 kai rašysime naują laišką, įrankių juostos gale turi būti Sign ir Encrypt mygtukai 😉
Beje, aš nuėjęs į Settings -> Configure KMail dar pasirinkau Security -> Composing uždėjau visas varneles

  • Automatically sign messages
  • When encrypting emails, always also encrypt to the certificate of my own identity
  • Always show encryption keys for approval

O jei norite Susikonfiguruoti Thunderbird, Jum reik atsisiusti atskirą įskiepį enigmail, kuris nežinia, kaip ar suėtins Jūsų programos darbą ar ne ir ar tiks Jūsų versijai 🙁 :/

Tuo tarpu kitas pašto klientas Linux’e gali Palaikyti PGP taip pat paprastai kaip ir KMail, taigi toks klientas vadinas Evolution. Čia reikia nueiti į Edit -> Preferences čia pasirinkti Sąskaitą (account) ir paspausti Edit bei nueiti į Security kertelę ir ten įrašykime savo rakto ID ir galbūt uždėkite varnlę ant Always sign outgoing messages when using this account. Vat, atrodo tiek, nežinau, nenaudojau…

Patikimų draugų pridėjimas

Dabar išsiuntę, kažkam laišką, jį atidarę per programą, kuri palaiko PGP pagal nutylėjimą (didžiam džiaugsmui Thunderbird to nesugeba ir tenka naudoti papildinį) mes matysime, kad laiškas yra nepatvirtintas… Taigi mums reikia atsisiųsti draugo raktą ir jį patvirtinti, nes kai Jūs pasirašote laišką, parašas bus validus, tik žmogui kuris, Jus patvirtino.
Taigi, kaip Jums pasitvirtinti savo draugą, o jam Jus?
Jums tereikia surasti Jūsų draugo raktą


gpg2 --search-keys ruslanas@lpic.lt
gpg: searching for "ruslanas@lpic.lt" from hkp server pgp.mit.edu
(1) Ruslanas Gžibovskis (lpic.lt he he)
4096 bit RSA key D8B179FA, created: 2012-02-17
Keys 1-1 of 1 for "ruslanas@lpic.lt". Enter number(s), N)ext, or Q)uit > 1


. Pasirinkite Jūsų draugo raktą, mano atveju tai pirmas variantas taigi mygiam Vienetuką.
Raktas atsiųstas! Dabar jį reikia pasirašyti, tam mes turime patikrinti rakto žymes (Fingerprint), pasirašyti ir išsaugoti:


gpg2 --edit-key D8B179FA
Command> fpr
pub 4096R/D8B179FA 2012-02-17 Ruslanas Gžibovskis (lpic.lt he he)
Primary key fingerprint: 25D1 6402 C415 C145 2748 CDB1 761D E8AA D8B1 79FA
Command> sign
Command> save


Pabrauktoji dalis (25D1 6402 C415 C145 2748 CDB1 761D E8AA D8B1 79FA), tai ir būtų mano rakto unikalioji žymė (tie išraitymai, jei lygintume su tikrais raktais)… 🙂

Sėkmingo saugaus rašinėjimosi!
Dabar niekas lengvai neturėtų gebėti, pakeisti Jūsų siųsto laiško…

mdb Solaris Debuging mini HowTo

Sveiki,

norėdami įdiegti Solaris 10u9 mdb programėlę susidiekime SUNWmdb ir SUNWmdbr paketus. Visų pirma prijunkime CD.ISO, kas gali būti atlikta tik iš globalios zonos (Jei nenaudojate konteinerių, tai galėjote pabraukto teksto ir neskaityti :)):
lofiadm -a /tmp/software.iso /dev/lofi/1
mount -F hsfs -o ro /dev/lofi/1 /mnt

Pereikim į mum reikiamą aplanką
cd /mnt/Solaris_10/Product
Susimeskim visą tai:
pkgadd -d . SUNWmdb
pkgadd -d . SUNWmdbr

Toliau beliko arba prisijungti (ir sustabdyti) procesą: mdb -p ĖPID arba atidaryti core/dump failą: mdb core_dump
Na va o daba mdb komandos:

Control Commands
$< or $<< Replace input with a macro or source a macro.
$>filename or
::log filename
Log session to a file. If no filename, use default.
| Pipe. Allows simple commands to be joined.
! Shell escape. Acts as a pipe to a shell command. (Not available in kmdb.)
// Comment. Following words on the same line are ignored.
$M Show built-in macros (Kernel debugger only).
$Pstring Set prompt to string.
$Q
::quit
Quit. (From kmdb, use -u option to avoid exiting to ok> prompt.)
$W Re-open target in writable mode.
$p Change target context.
$w Control output page width.
:A Attach to a process or core file.
:R Release attachment.
:k Kill and release targets.
$v Print non-zero variables.
>
::typeset
Assign a variable.
::dcmds Print available commands.
::nm Print symbol table. (-P specifies a private symbol table. Manipulated with ::nmaddand ::nmdelete
::help dcmd Provide usage notes on a dcmd.
::typeset Manipulate variable.
::walk Walk data structure.
::walkers List available walkers.

 

 

Input & Output Commands
$< 
$<<
Replace input with a macro or source a macro.
$>filename Log session to a file. If no filename, use default.
address/format-spec
/format-spec
Read the value in a memory addressformatted as format-spec. If no address is provided, use dot.
address/W value Write the value in the four bytes starting with address. If no address is provided, usedotvw or Z may also be used instead of Wto write 1, 2 or 8 bytes, respectively.
address=format-spec
=format-spec
Format immediate value of address or dot.
? Read/write primary object file.
@format-spec Read/write physical address as format-spec.
\format-spec Read/write physical address as format-spec.

The difference between / and = is subtle. For example, to find the address holding the value of the maxphys symbol in decimal, we would run:
maxphys=D
To find the value inside the above address, we would use / like:
maxphys/D

 

 

Format Specification
Note that the ::formats dcmd prints out a full list of supported formats.
D Display in signed decimal.
i Display as a disassembled instruction.
U Display in unsigned decimal.
X Display in signed hexidecimal.
0txyz Specifies xyz as a decimal value.

 

 

System Examination
cpu$<cpus Display cpu0.
cpun$<cpu Display cpu #n.
$<msgbuf Display message buffer, including all console messages up to panic.
<sp$<stacktrace Use the stack pointer address (sp) to display a detailed stack trace.
$r
::regs
Display general registers, including program counter and stack pointer.
::callout Print callout table.
::cpuinfo -v Information about activities of CPUs, including runqueue inhabitants.
::cpuregs
::cpuregs -c cpuid
Print CPU registers. kmdb only. Can specify a cpu.
::cpustack
::cpustack -ccpuid
Print CPU stack. kmdb only. Can specify a cpu.
::dnlc Print DNLC contents.
::ipcs Print SVR4 IPC information.
::kmalog Display kernel memory log and stack traces.
::kmastat Print current kernel memory allocations
::memstat Print current memory usage.
::nm Print symbol table. (-P specifies a private symbol table. Manipulated with ::nmaddand ::nmdelete
::ps List processes with associated threads and lwps
::ptree Print process tree.

 

 

Target Examination
$? Print status and registers.
$C Show call trace and arguments, saved frame pointer and saved program counter for each stack frame.
$X$Y$x$y and::fpregs Display floating point registers.
$c Display stack backtrace.
$e Print list of global symbols.
$f Print list of source files.
$l Print representative thread’s lwp ID.
$m Print address space mappings.
$r
::regs
Display general registers, including program counter and stack pointer.
as::as2proc Convert as pointer to a proc_t pointer.
::devbindings devinfo nodes bound to device-name ormajor-num.
::devinfo Detailed devinfo of node.
::devinfo2driver Driver name for this node.
::devnames Print devnames array.
::devt Display dev_t‘s major & minor numbers.
::did2thread Kernel thread for this ID.
::dumpaddress Dump memory from address.
::findfalse Find potentially falsely shared structures.
::findleaks Search for potential kernel memory leaks.
::findlocks Find locks held by specified thread.
threadp::findstack Find kernel thread stack for associated thread.
::inode Display summary of inode_t.
::kmsqid Display message queue structure (kmsqid).
::ksemid Display a semaphore structure (ksemid).
::kshmid Display a shared memory structure (kshmid).
::pgrep pattern Find proc_t pointers matching the pattern.
0tPID::pid2proc Convert decimal PID to a proc_t pointer.
procp::ps Process information matching the associated proc_t.
::status Print summary of target status.
sobj::walk blocked Walk threads blocked on a particular synchronization object (sobj).
procp::walk thread Walk threads of associated process.
sobj::wchaninfo -v Blocked on condition variables for a particular synchronization object (sobj).
address::whatis Attempts to identify address contents.
vnode::whereopen Processes with vnode open.

 

 

Tracing, Watchpoints and Breakpoints
(Breakpoints for kernel debugger only.)
$b Show all breakpoints.
$i Print list of ignored signals.
:a Set a watchpoint.
:b Set a breakpoint.
:c or ::cont Continue target execution.
:d Delete a breakpoint.
:e Step over next instruction.
:i Step over next instruction.
:k Kill and release targets.
:p Set execute access watchpoints.
:r Run new target process.
:s Step target to next instruction.
:t Stop on delivery of specified signals.
:u Step out of current function.
:w Set write access watchpoint.
:z Delete all breakpoints.

 

 

General Debugging
$G Toggle C++ demangling.
$V Toggle disassembly mode.
$g Toggle C++ demangling.
address::dis Disassemble text starting at address.

 

 

Comparison Operators
== Logical equality.
!= Logical inequality.
& Bitwise AND.
| Bitwise OR.
^ Bitwise XOR.

counter.li.org atnaujino savo veiklą Linuxcounter.net vardu

Linux naudotojų skaičiuoklės projektas startavo 1993 metais. Šio projekto įkūrėjas Harald Tveit Alvestrand. Vėliau projektui besivystant jis peraugo į nepelno siekiančią organizaciją, kuri buvo registruota Norvegijoje 1999m. gegužės mėn. 1 d., kurios vadovu tapo Linux skaičiuoklės projekto įkūtėjas Harald Tveit Alvestrand. Projekto tikslas sužinoti apytikslų OS Linux paplitimą bei Linux ideologijos plėtra. 2007 metais buvo paskelbta paskutinė naujiena counter.li.org tinklalapyje.
Šis projektas buvo nebeatnaujintas jau daugiau nei ketveri metai. Dėl naujų sistemų atsiradimo bei senųjų sistemų atnaujinimo atsirado nesklandumų interpretuojant siunčiamus pranešimus sistemai. Taip pat verta nepamiršti, kad atsirado ir patobulėjo naujos technologijos ir atsirado poreikis perrašyti patį puslapio atvaizdavimo mechanizmą. Visą šį darbą apsiėmė daryti ir jam vadovauti Alexander Mieland.
Norėdami, kad Jūs būtumėt įskaičiuotas į Linux bendruomenę registruokitės adresu: linuxcounter.net/register.html. Kiekvienas užsiregistravęs gauna viešą internetinį puslapį, kuriame galima skelbti (ar neskelbti) informaciją apie save. O štai ir mano nuorodėlė BiG_NoBoDy. Vėliau aprašysiu visą naujo kompiuterio registravimo procesą.

Taip pat pridedu laišką gautą iš Alexander Mieland, bet jei jis prieštaraus aš jį pašalinsiu.

From - Thu Sep 22 23:01:08 2011
X-Account-Key: account15
X-UIDL: GmailId132733ae303c102d
X-Mozilla-Status: 1003
X-Mozilla-Status2: 00000000
X-Mozilla-Keys:
Delivered-To:
Received: by with SMTP id j6cs169924pbp;
Fri, 16 Sep 2011 10:13:52 -0700 (PDT)
Received: by 10.204.146.9 with SMTP id f9mr1861657bkv.385.1316193231764;
Fri, 16 Sep 2011 10:13:51 -0700 (PDT)
Return-Path: < >
Received: from ( . [x.x.x.x])
by mx.google.com with ESMTP id i3si5018600bke.79.2011.09.16.10.13.51;
Fri, 16 Sep 2011 10:13:51 -0700 (PDT)
Received-SPF: neutral (google.com: x.x.x.x is neither permitted nor denied by best guess record for domain of ) client-ip=x.x.x.x;
Authentication-Results: mx.google.com; spf=neutral (google.com: x.x.x.x is neither permitted nor denied by best guess record for domain of ) smtp.mail=
Received: from localhost (localhost [127.0.0.1])
by (Postfix) with ESMTP id B4081359C1BA
for < >; Fri, 16 Sep 2011 19:13:50 +0200 (CEST)
X-Quarantine-ID:
X-Virus-Scanned: Debian
X-Amavis-Alert: BAD HEADER, Improper use of control character (char 0D hex):
From: ...x Counter Project < >\r\n
Received: from ([127.0.0.1])
by localhost ( [127.0.0.1]) (blablabla)
with ESMTP id iXhHX1BjmIeC for < >;
Fri, 16 Sep 2011 19:13:48 +0200 (CEST)
Received: by blablabla
id 4DA3F359C116; Fri, 16 Sep 2011 19:11:21 +0200 (CEST)
To:
Subject: [LiCo] The New Linux Counter - Announcement - Data Update Reminder
From: The New Linux Counter Project < >
Reply-To: info@linuxcounter.net
X-Mailer: LinuxCounter.net - PHP
Message-Id: < >
Date: Fri, 16 Sep 2011 19:11:21 +0200 (CEST)

Hello BiG_NoBoDy

my name is Alexander Mieland and I'm the new manager of the Linux
Counter Project. Since I love statistics and because counter.li.org was
not developed at all since over four years, I've started to develop a
completly new and reworked project with the same but modernized design
and the same target.

Last week, Harald Alvestrand and I have decided that this new project
will be the New Linux Counter Project and replace the good old counter
of counter.li.org. The url of the new project is:
- http://linuxcounter.net

I've worked hard to develop the first version of this new project and
some days ago I've imported all active users from the old, original
database of counter.li.org.

I now want to ask you to come to the new project, to login with your
old, known access data and then to update your personal data and your
Linux machines.

- Your counter.li.org number is: 403332
- The url to the new project: http://linuxcounter.net

With this number and your password, you are able to also login to the
new project. If you don't know your password anymore, you will be able
to request a new password from the lost password page. To access this
page, you have to click on "Login". There you'll find the link to
the lost password page.

If you have problems accessing the new project or with the login, then
don't hesitate to contact me at alex@linuxcounter.net.

If you find a bug or have other problems with the project, then please
visit http://trac.linuxcounter.net, our new wiki and bugtracker.
So if you have found a bug or have feature requests or wishes, don't
hesitate to register on the wiki and file a ticket in the bugtracker.

Another possibility to discuss the new project, to ask questions and
report bugs or feature requests is our mailinglist. Please register
for our mailinglist by sending an email with "subscribe" in the body
to interest-request@counter.li.org. After registration you can
send your emails to interest@counter.li.org.

This new project now also has a twitter account! So please follow us:
- http://twitter.com/#!/NewLinuxCounter

And one more thing: We also have an rss 2.0 feed that shows you the
most recent changes and news and announcements from the project:
- http://linuxcounter.net/rss.php

So, please come to http://linuxcounter.net, login and update your data.

Thanks in advance!

Sincerely yours,

Alexander Mieland
http://linuxcounter.net

Husky Pram striukė – pigu.lt

Sveiki, kaip jumi sekas?

Šiandien nusipirkau Husky Pram stiukytę iš pigu.lt.
Tiesiog noriu į darbą važinėti dviračiu… Šiandien pasitaisiau balniuką… Pakeičiau iš paprasto TORNADO (dviračio modelis) pimpalo (nežinau, jis taip atrodo)… į normalų VAIRAS… JĖĖĖ!!!
balnas vairas TORNADO dviratukas Vat tokiu dviratuku važiuosiu, o maniškį MADISON Memphis Melynas memphis madison atidaviau Natkai… heh… vat taip vat… na ką, palinkėkite man sėkmės… 🙂 Tai va, dviratuku važiuojant reiktų apsisaugoti nuo lietučio… Lietpaltis? suprakaituot gamalia… Taigi pasiėmiau striukytę Husky Pram iš pigu.lt, o ten buvo dydžiai S, M, L, XL… Kokie jie? Taigi radau Husky Pram dydžius šiame PDF

UNIX ABC

A is for awk, which runs like a snail, and
B is for biff, which reads all your mail.
C is for cc, as hackers recall, while
D is for dd, the command that does all.
E is for emacs, which rebinds your keys, and
F is for fsck, which rebuilds your trees.
G is for grep, a clever detective, while
H is for halt, which may seem defective.
I is for indent, which rarely amuses, and
J is for join, which nobody uses.
K is for kill, which makes you the boss, while
L is for lex, which is missing from DOS.
M is for more, from which less was begot, and
N is for nice, which it really is not.
O is for od, which prints out things nice, while
P is for passwd, which reads in strings twice.
Q is for quota, a Berkeley­type fable, and
R is for ranlib, for sorting ar table.
S is for spell, which attempts to belittle, while
T is for true, which does very little.
U is for uniq, which is used after sort, and
V is for vi, which is hard to abort.
W is for whoami, which tells you your name, while
X is, well, X, of dubious fame.
Y is for yes, which makes an impression, and
Z is for zcat, which handles compression.
– THE ABC'S OF UNIX
/usr/share/games/fortune/songs­poems