<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>по стопам webkill&#039;а &#187; gpg</title>
	<atom:link href="http://blog.lukmus.ru/tag/gpg/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.lukmus.ru</link>
	<description>это наш химический дом для печальных жителей Земли</description>
	<lastBuildDate>Sat, 21 Oct 2023 19:10:13 +0000</lastBuildDate>
	<language>ru-RU</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4.2</generator>
		<item>
		<title>backup с PGP шифрованием</title>
		<link>http://blog.lukmus.ru/2021/03/23/gpg-backup/</link>
		<comments>http://blog.lukmus.ru/2021/03/23/gpg-backup/#comments</comments>
		<pubDate>Tue, 23 Mar 2021 18:12:03 +0000</pubDate>
		<dc:creator>lukmus</dc:creator>
				<category><![CDATA[ruby & ruby on rails]]></category>
		<category><![CDATA[настройка и установка]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[gpg]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://blog.lukmus.ru/?p=2685</guid>
		<description><![CDATA[В продолжение постов про GPG и о геме Backup собираю все в одну статью и дополняю настройкой для автоматического шифрования резервных копий. утилита GPG Установка, естественно, от пользователя с root-правами. На RedHat&#8217;ах: yum install pgp На Debian&#8217;ах: apt-get install pgp Для создания ключей все та же команда, выполнять которую можно от рядового пользователя. gpg --gen-key [...]]]></description>
			<content:encoded><![CDATA[<p>В продолжение постов <a href="https://blog.lukmus.ru/2010/10/29/gnupg-v-linux/">про GPG</a> и <a href="https://blog.lukmus.ru/2014/01/10/backup-na-yandeks-disk/">о геме Backup</a> собираю все в одну статью и дополняю настройкой для автоматического шифрования резервных копий.<br />
<img src="http://blog.lukmus.ru/wp-content/uploads/2021/03/huge-encryption-517.png" alt="" /><span id="more-2685"></span></p>
<h2>утилита GPG</h2>
<p>Установка, естественно, от пользователя с root-правами.<br />
На RedHat&#8217;ах:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">yum install</span> pgp</pre></td></tr></table></div>

<p>На Debian&#8217;ах:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">apt-get install</span> pgp</pre></td></tr></table></div>

<p>Для создания ключей все та же команда, выполнять которую можно от рядового пользователя.</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">gpg <span style="color: #660033;">--gen-key</span></pre></td></tr></table></div>

<p>Далее понадобится экспорт ключей в текстовый файл. В командах ниже <code>username@email</code>, разумеется, надо заменить на почту указанную при генерации.</p>
<p>Экспорт публичного ключа:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">gpg <span style="color: #660033;">--output</span> public.pgp <span style="color: #660033;">--armor</span> <span style="color: #660033;">--export</span> username<span style="color: #000000; font-weight: bold;">@</span>email</pre></td></tr></table></div>

<p>Экспорт закрытого (приватного) ключа:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">gpg <span style="color: #660033;">--output</span> private.pgp <span style="color: #660033;">--armor</span> <span style="color: #660033;">--export-secret-key</span> username<span style="color: #000000; font-weight: bold;">@</span>email</pre></td></tr></table></div>

<p>Если требуется, после экспорта ключей их можно удалить. Сначала удаляется закрытый ключ:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">gpg <span style="color: #660033;">--delete-secret-keys</span> username<span style="color: #000000; font-weight: bold;">@</span>email</pre></td></tr></table></div>

<p>Затем открытый:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">gpg <span style="color: #660033;">--delete-keys</span> username<span style="color: #000000; font-weight: bold;">@</span>email</pre></td></tr></table></div>

<p>Вывести список всех импортированных ключей:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">gpg <span style="color: #660033;">--list-keys</span></pre></td></tr></table></div>

<h2>gem backup и PGP-ключ</h2>
<p>Установка гема:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">gem <span style="color: #c20cb9; font-weight: bold;">install</span> backup</pre></td></tr></table></div>

<p>Cоздание модели (в данном примере модель называется <code>ekzample</code>) для бекапа:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">backup generate:model <span style="color: #660033;">--trigger</span> ekzample
Generated model file: <span style="color: #ff0000;">'~/Backup/models/ekzample.rb'</span>.</pre></td></tr></table></div>

<p>Далее, для настройки нужного бекапа, следует отредактировать <code>~/Backup/models/ekzample.rb</code>.</p>
<p>В примере ниже показан конфиг для резервного копирования базы MySQL с последующим сжатием в tar и шифрованием архива PGP-ключом, после чего зашифрованный файл отправляется по SFTP на бекап-сервер.</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="ruby" style="font-family:monospace;"><span style="color:#008000; font-style:italic;"># encoding: utf-8</span>
&nbsp;
<span style="color:#008000; font-style:italic;">##</span>
<span style="color:#008000; font-style:italic;"># Backup Generated: ekzample</span>
<span style="color:#008000; font-style:italic;"># Once configured, you can run the backup with the following command:</span>
<span style="color:#008000; font-style:italic;">#</span>
<span style="color:#008000; font-style:italic;"># $ backup perform -t ekzample [-c &lt;path_to_configuration_file&gt;]</span>
<span style="color:#008000; font-style:italic;">#</span>
<span style="color:#008000; font-style:italic;"># For more information about Backup's components, see the documentation at:</span>
<span style="color:#008000; font-style:italic;"># http://backup.github.io/backup</span>
<span style="color:#008000; font-style:italic;">#</span>
Model.<span style="color:#9900CC;">new</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#ff3333; font-weight:bold;">:ekzample</span>, <span style="color:#996600;">'Description for ekzample'</span><span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#9966CC; font-weight:bold;">do</span>
&nbsp;
  split_into_chunks_of <span style="color:#006666;">500</span>
&nbsp;
  <span style="color:#6666ff; font-weight:bold;">Encryptor::GPG</span>.<span style="color:#9900CC;">defaults</span> <span style="color:#9966CC; font-weight:bold;">do</span> <span style="color:#006600; font-weight:bold;">|</span>encryption<span style="color:#006600; font-weight:bold;">|</span>
    encryption.<span style="color:#9900CC;">keys</span> = <span style="color:#006600; font-weight:bold;">&#123;</span><span style="color:#006600; font-weight:bold;">&#125;</span>
    encryption.<span style="color:#9900CC;">keys</span><span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#996600;">'username@email'</span><span style="color:#006600; font-weight:bold;">&#93;</span> = <span style="color:#006600; font-weight:bold;">&lt;&lt;-</span>KEY
      <span style="color:#006600; font-weight:bold;">-----</span><span style="color:#9966CC; font-weight:bold;">BEGIN</span> PGP PUBLIC KEY BLOCK<span style="color:#006600; font-weight:bold;">-----</span>
      ...<span style="color:#9900CC;">it</span> is place <span style="color:#9966CC; font-weight:bold;">for</span> PUBLIC KEY...
      <span style="color:#006600; font-weight:bold;">-----</span><span style="color:#9966CC; font-weight:bold;">END</span> PGP PUBLIC KEY BLOCK<span style="color:#006600; font-weight:bold;">----</span>
    KEY
    encryption.<span style="color:#9900CC;">recipients</span> = <span style="color:#996600;">'username@email'</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
&nbsp;
  database MySQL <span style="color:#9966CC; font-weight:bold;">do</span> <span style="color:#006600; font-weight:bold;">|</span>db<span style="color:#006600; font-weight:bold;">|</span>
    db.<span style="color:#9900CC;">name</span>  = <span style="color:#996600;">'exampledb'</span>
    db.<span style="color:#9900CC;">username</span> = <span style="color:#996600;">'exampleuser'</span>
    db.<span style="color:#9900CC;">password</span> = <span style="color:#996600;">'examplepass'</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
&nbsp;
  compress_with Gzip
  encrypt_with GPG
&nbsp;
  store_with SFTP <span style="color:#9966CC; font-weight:bold;">do</span> <span style="color:#006600; font-weight:bold;">|</span>server<span style="color:#006600; font-weight:bold;">|</span>
    server.<span style="color:#9900CC;">username</span> = <span style="color:#996600;">'backupuser'</span>
    server.<span style="color:#9900CC;">password</span> = <span style="color:#996600;">'backuppass'</span>
    server.<span style="color:#9900CC;">ip</span>       = <span style="color:#996600;">'111.111.111.111'</span>
    server.<span style="color:#9900CC;">port</span>     = <span style="color:#006666;">22</span>
    server.<span style="color:#9900CC;">path</span>     = <span style="color:#996600;">'~/'</span>
    <span style="color:#008000; font-style:italic;"># Use a number or a Time object to specify how many backups to keep.</span>
    server.<span style="color:#9900CC;">keep</span>     = <span style="color:#006666;">150</span>
&nbsp;
    <span style="color:#008000; font-style:italic;"># Additional options for the SSH connection.</span>
    <span style="color:#008000; font-style:italic;"># server.ssh_options = {}</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
&nbsp;
<span style="color:#9966CC; font-weight:bold;">end</span></pre></td></tr></table></div>

<p>Не стоит забывать вставить между <code><<-KEY</code> и <code>KEY</code> созданный ранее ПУБЛИЧНЫЙ (открытый) ключ.</p>
<p>Для более тонкой настройки PGP-ключей, например, разные ключи для разных баз, следует воспользоваться <a href="https://backup.github.io/backup/v4/encryptor-gpg/" target="_blank" rel='nofollow'>официальной документацией</a>.</p>
<p>Запускается создание бекапа командой:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">backup perform <span style="color: #660033;">-t</span> ekzample</pre></td></tr></table></div>

<h2>извлечение бекапа</h2>
<p>Если в системе нет ключей, используемых данным бекапом, следует их импортировать:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">gpg <span style="color: #660033;">--import</span> private.pgp
gpg <span style="color: #660033;">--import</span> public.gpg</pre></td></tr></table></div>

<p>Далее чтобы расшифровать резервную копию понадобится команда:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">gpg <span style="color: #660033;">-o</span> ekzample.tar <span style="color: #660033;">-d</span> ekzample.tar.gpg</pre></td></tr></table></div>

<p>Для распаковки тарбола подойдет команда:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">tar</span> <span style="color: #660033;">-xvf</span> ekzample.tar</pre></td></tr></table></div>

<p><meta property="og:image" content="http://blog.lukmus.ru/wp-content/uploads/2021/03/huge-encryption-517.png" /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.lukmus.ru/2021/03/23/gpg-backup/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GnuPG в linux</title>
		<link>http://blog.lukmus.ru/2010/10/29/gnupg-v-linux/</link>
		<comments>http://blog.lukmus.ru/2010/10/29/gnupg-v-linux/#comments</comments>
		<pubDate>Fri, 29 Oct 2010 01:44:07 +0000</pubDate>
		<dc:creator>lukmus</dc:creator>
				<category><![CDATA[настройка и установка]]></category>
		<category><![CDATA[gnupg]]></category>
		<category><![CDATA[gpg]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[pgp]]></category>
		<category><![CDATA[дешифрование]]></category>
		<category><![CDATA[шифрование]]></category>

		<guid isPermaLink="false">http://blog.lukmus.ru/?p=564</guid>
		<description><![CDATA[Входе переписки с некоторыми персоналиями выяснилось, что они до сих пор не умеют пользоватся GPG, а точнее шифровать файлы. Большинство разумного человечества и представителей других рас здесь ничего нового не узнает, те же кто не умеет читать инструкции по эксплуатации, подчерпнут здесь основы работы с GPG в консоли. Прежде всего нужно установить GPG если оно [...]]]></description>
			<content:encoded><![CDATA[<p>Входе переписки с некоторыми персоналиями выяснилось, что они до сих пор не умеют пользоватся GPG, а точнее шифровать файлы.</p>
<p><a href="http://blog.lukmus.ru/wp-content/uploads/2010/10/logo-gnupg-white-bg.png"><img class="alignleft size-full wp-image-565" style="margin: 3px 5px;" title="logo-gnupg-white-bg" src="http://blog.lukmus.ru/wp-content/uploads/2010/10/logo-gnupg-white-bg.png" alt="gnupg" width="180" height="63" /></a>Большинство разумного человечества и представителей других рас здесь ничего нового не узнает, те же кто не умеет читать инструкции по эксплуатации, подчерпнут здесь основы работы с GPG в консоли.<span id="more-564"></span></p>
<p>Прежде всего нужно установить GPG если оно не установлено по умолчанию. Тарболы можно скачать с оффсайта &#8211; <a rel="nofollow" href="http://www.gnupg.org/" target="_blank">gnupg.org</a>. Однако, вместо компиляции исходников, некоторые предпочитают пакетные менеджеры.</p>
<p>Linux&#8217;ы на основе Red Hat:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">yum install</span> pgp</pre></td></tr></table></div>

<p>В Debian&#8217;ах:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">apt-get install</span> pgp</pre></td></tr></table></div>

<h2>генерация ключей</h2>
<p>Прежде всего хочется отметить, что GPG имеет возможность делать как ключи для симметричного шифрования, так и для несимметричного. Разница в том, что в первом случае один ключ подходит как для шифрации, так и для дешифрации, а во-втором открытым ключом можно только шифровать, а закрытым можно расшифровать.</p>
<p>Для нас большую ценность представляет несимметричное шифрование т.к. оно круче.</p>
<p>Итак, генерируем ключи. Под root&#8217;ом это делать или нет разницы, ну кроме того что у файлов ключей будут права рутовские или нет.</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">$ gpg <span style="color: #660033;">--gen-key</span>
gpg <span style="color: #7a0874; font-weight: bold;">&#40;</span>GnuPG<span style="color: #7a0874; font-weight: bold;">&#41;</span> 1.4.10; Copyright <span style="color: #7a0874; font-weight: bold;">&#40;</span>C<span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #000000;">2008</span> Free Software Foundation, Inc.
This is <span style="color: #c20cb9; font-weight: bold;">free</span> software: you are <span style="color: #c20cb9; font-weight: bold;">free</span> to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Выберите тип ключа:
<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000;">1</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> RSA and RSA <span style="color: #7a0874; font-weight: bold;">&#40;</span>default<span style="color: #7a0874; font-weight: bold;">&#41;</span>
<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000;">2</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> DSA and Elgamal
<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000;">3</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> DSA <span style="color: #7a0874; font-weight: bold;">&#40;</span>только для подписи<span style="color: #7a0874; font-weight: bold;">&#41;</span>
<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000;">4</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> RSA <span style="color: #7a0874; font-weight: bold;">&#40;</span>только для подписи<span style="color: #7a0874; font-weight: bold;">&#41;</span>
Ваш выбор <span style="color: #7a0874; font-weight: bold;">&#40;</span>?-подробнее<span style="color: #7a0874; font-weight: bold;">&#41;</span>?</pre></td></tr></table></div>

<p>Здесь я обычно либо ввожу 1, либо оставляю по умолчанию.</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">ключи RSA могут иметь длину от <span style="color: #000000;">1024</span> до <span style="color: #000000;">4096</span> бит.
Какой размер ключа Вам необходим? <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000;">2048</span><span style="color: #7a0874; font-weight: bold;">&#41;</span></pre></td></tr></table></div>

<p>Здесь чем больше тем лучше, но 2048 тоже круто и достаточно.</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">Запрашиваемый размер ключа <span style="color: #000000;">4096</span> бит
Выберите срок действия ключа.
<span style="color: #000000;">0</span> = без ограничения срока действительности
= срок действительности n дней
<span style="color: #c20cb9; font-weight: bold;">w</span> = срок действительности n недель
m = срок действительности n месяцев
y = срок действительности n лет
Ключ действителен до? <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000;">0</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>
Ключ не имеет ограничения срока действительности
Все верно? <span style="color: #7a0874; font-weight: bold;">&#40;</span>y<span style="color: #000000; font-weight: bold;">/</span>N<span style="color: #7a0874; font-weight: bold;">&#41;</span> y</pre></td></tr></table></div>

<p>Вводим срок действия и подтверждаем введенные данные.</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">Для идентификации Вашего ключа необходим User ID
Программа создаст его из Вашего имени, комментария и адреса e-mail в виде:
<span style="color: #ff0000;">&quot;Baba Yaga (pensioner) &quot;</span>
Ваше настоящее имя: antonio
Email-адрес: antonio<span style="color: #000000; font-weight: bold;">@</span>mail.com
Комментарий: fjkgjdg
Вы выбрали следующий User ID:
<span style="color: #ff0000;">&quot;antonio (fjkgjdg) &quot;</span>
Сменить <span style="color: #7a0874; font-weight: bold;">&#40;</span>N<span style="color: #7a0874; font-weight: bold;">&#41;</span>Имя, <span style="color: #7a0874; font-weight: bold;">&#40;</span>C<span style="color: #7a0874; font-weight: bold;">&#41;</span>Комментарий, <span style="color: #7a0874; font-weight: bold;">&#40;</span>E<span style="color: #7a0874; font-weight: bold;">&#41;</span>email-адрес или <span style="color: #7a0874; font-weight: bold;">&#40;</span>O<span style="color: #7a0874; font-weight: bold;">&#41;</span>Принять<span style="color: #000000; font-weight: bold;">/</span><span style="color: #7a0874; font-weight: bold;">&#40;</span>Q<span style="color: #7a0874; font-weight: bold;">&#41;</span>Выход? O</pre></td></tr></table></div>

<p>Отвечаем на вопросы GPG, честно отвечая на вопросы.</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">Для защиты секретного ключа необходим пароль.
Необходимо сгенерировать много случайных чисел. Желательно, что бы Вы
выполняли некоторые другие действия <span style="color: #7a0874; font-weight: bold;">&#40;</span>печать на клавиатуре, движения мыши,
обращения к дискам<span style="color: #7a0874; font-weight: bold;">&#41;</span> в процессе генерации; это даст генератору
случайных чисел возможность получить лучшую энтропию.
.............................+++++
....+++++
Необходимо сгенерировать много случайных чисел. Желательно, что бы Вы
выполняли некоторые другие действия <span style="color: #7a0874; font-weight: bold;">&#40;</span>печать на клавиатуре, движения мыши,
обращения к дискам<span style="color: #7a0874; font-weight: bold;">&#41;</span> в процессе генерации; это даст генератору
случайных чисел возможность получить лучшую энтропию.
......+++++
....+++++
gpg: ключ 6A189DDA помечен как абсолютно доверяемый.
открытый и закрытый ключи созданы и подписаны.
gpg: проверка таблицы доверий
gpg: <span style="color: #000000;">3</span> ограниченных необходимо, <span style="color: #000000;">1</span> выполненных необходимо, PGP модель доверия
gpg: глубина: <span style="color: #000000;">0</span>  корректных:   <span style="color: #000000;">1</span>  подписанных:   <span style="color: #000000;">0</span>  доверия: <span style="color: #000000;">0</span>-, 0q, 0n, 0m, 0f, 1u
pub   4096R<span style="color: #000000; font-weight: bold;">/</span>6A189DDA <span style="color: #000000;">2010</span>-<span style="color: #000000;">10</span>-<span style="color: #000000;">28</span>
Отпечаток ключа = 404B 5DD8 79F1 7AD9 7FA7  2B7A 2E1C FEB7 6A18 9DDA
uid                  antonio <span style="color: #7a0874; font-weight: bold;">&#40;</span>fjkgjdg<span style="color: #7a0874; font-weight: bold;">&#41;</span>
sub   4096R<span style="color: #000000; font-weight: bold;">/</span>664BC16D <span style="color: #000000;">2010</span>-<span style="color: #000000;">10</span>-<span style="color: #000000;">28</span></pre></td></tr></table></div>

<p>Вводим пароль и запоминаем его. Когда GPG просит сделать какие-нибудь действия берем мышку в руки и внимательно вырисовываем ей амперсант, затем тильду и букву &#8216;Ё&#8217;.</p>
<p>Теперь проверяем, вывод должен быть примерно такой:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">$ gpg <span style="color: #660033;">--list-keys</span>
<span style="color: #000000; font-weight: bold;">/</span>home<span style="color: #000000; font-weight: bold;">/</span>your_username<span style="color: #000000; font-weight: bold;">/</span>.gnupg<span style="color: #000000; font-weight: bold;">/</span>pubring.gpg
<span style="color: #660033;">---------------------------</span>
pub   4096R<span style="color: #000000; font-weight: bold;">/</span>6A189DDA <span style="color: #000000;">2010</span>-<span style="color: #000000;">10</span>-<span style="color: #000000;">28</span>
uid                  antonio <span style="color: #7a0874; font-weight: bold;">&#40;</span>fjkgjdg<span style="color: #7a0874; font-weight: bold;">&#41;</span>
sub   4096R<span style="color: #000000; font-weight: bold;">/</span>664BC16D <span style="color: #000000;">2010</span>-<span style="color: #000000;">10</span>-<span style="color: #000000;">28</span></pre></td></tr></table></div>

<h2>экспорт ключей</h2>
<p>После того как ключи сгенерированы, в случае если они вам на долго, то их можно сохранить.</p>
<h3>открытый ключ</h3>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">gpg <span style="color: #660033;">--export</span> <span style="color: #660033;">-armor</span> <span style="color: #660033;">-o</span> pub.asc</pre></td></tr></table></div>

<p>Если убрать -armor то ключ экспортируется в бинарном виде.</p>
<h3>закрытый ключ</h3>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">gpg <span style="color: #660033;">--export-secret-key</span> <span style="color: #660033;">-armor</span> <span style="color: #660033;">-o</span> sec.asc</pre></td></tr></table></div>

<p>Теперь у вас в текующей директории должно быть 2 файла: sec.asc и pub.asc.</p>
<h2>шифрование и дешифрование файлов</h2>
<h3>шифрование</h3>
<p>Для примера я зашифрую файл test.rb:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">$ gpg <span style="color: #660033;">-e</span> test.rb <span style="color: #000000; font-weight: bold;">&amp;</span>gt; test.rb.gpg
Не задан User ID. <span style="color: #7a0874; font-weight: bold;">&#40;</span>можете использовать <span style="color: #ff0000;">&quot;-r&quot;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>
Текущие получатели:
Введите User ID.  Пустая строка для завершения: antonio
Текущие получатели:
4096R<span style="color: #000000; font-weight: bold;">/</span>664BC16D <span style="color: #000000;">2010</span>-<span style="color: #000000;">10</span>-<span style="color: #000000;">28</span> <span style="color: #ff0000;">&quot;antonio (fjkgjdg) &quot;</span></pre></td></tr></table></div>

<p>Если не перенаправлять вывод, то содержимое зашифрованного файла выведется на стандартный вывод т.е. экран консоли.</p>
<h3>дешифрование</h3>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">$ gpg <span style="color: #660033;">-d</span> test.rb.gpg <span style="color: #000000; font-weight: bold;">&amp;</span>gt; test222.rb
Необходим пароль для доступа к секретному ключу пользователя: <span style="color: #ff0000;">&quot;antonio (fjkgjdg) &quot;</span>
<span style="color: #000000;">4096</span>-бит RSA ключ, ID 664BC16D, создан <span style="color: #000000;">2010</span>-<span style="color: #000000;">10</span>-<span style="color: #000000;">28</span> <span style="color: #7a0874; font-weight: bold;">&#40;</span>главный ключ ID 6A189DDA<span style="color: #7a0874; font-weight: bold;">&#41;</span>
gpg: зашифровано <span style="color: #000000;">4096</span>-битным ключом RSA, с ID 664BC16D, созданным <span style="color: #000000;">2010</span>-<span style="color: #000000;">10</span>-<span style="color: #000000;">28</span>
<span style="color: #ff0000;">&quot;antonio (fjkgjdg) &quot;</span></pre></td></tr></table></div>

<p>При расшифровке потребуется пароль, ситуация с перенаправлением вывода такая же как и с шифрованием.</p>
<p>Теперь для того чтобы передать сверхважную информацию (а я уверен что у вас только такая инфа и есть) другу через открытый канал, например icq, необходимо вашему дружку скинуть открытый ключ, который мы предусмотрительно экспортировали в файл pub.asc. Друг у себя на компе зашифрует файл и отправит вам, который вы расшифруете закрытым ключом.</p>
<h2>удаление ключей</h2>
<p>После того как вы получили необходимый файл от другана и прочитали его, заметаем следы и удаляем ключи.</p>
<p>Сначала нужно удалить секретный ключ, просто потому что иначе GPG не даст это сделать.</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">$ gpg <span style="color: #660033;">--delete-secret-keys</span> antonio
gpg <span style="color: #7a0874; font-weight: bold;">&#40;</span>GnuPG<span style="color: #7a0874; font-weight: bold;">&#41;</span> 1.4.10; Copyright <span style="color: #7a0874; font-weight: bold;">&#40;</span>C<span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #000000;">2008</span> Free Software Foundation, Inc.
This is <span style="color: #c20cb9; font-weight: bold;">free</span> software: you are <span style="color: #c20cb9; font-weight: bold;">free</span> to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
sec  4096R<span style="color: #000000; font-weight: bold;">/</span>6A189DDA <span style="color: #000000;">2010</span>-<span style="color: #000000;">10</span>-<span style="color: #000000;">28</span> antonio <span style="color: #7a0874; font-weight: bold;">&#40;</span>fjkgjdg<span style="color: #7a0874; font-weight: bold;">&#41;</span>
Удалить данный ключ из таблицы ключей? <span style="color: #7a0874; font-weight: bold;">&#40;</span>y<span style="color: #000000; font-weight: bold;">/</span>N<span style="color: #7a0874; font-weight: bold;">&#41;</span>y
Это секретный ключ<span style="color: #000000; font-weight: bold;">!</span> - действительно удалить? <span style="color: #7a0874; font-weight: bold;">&#40;</span>y<span style="color: #000000; font-weight: bold;">/</span>N<span style="color: #7a0874; font-weight: bold;">&#41;</span>y</pre></td></tr></table></div>

<p>Теперь удаляем открытый ключ:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">$ gpg <span style="color: #660033;">--delete-keys</span> antonio
gpg <span style="color: #7a0874; font-weight: bold;">&#40;</span>GnuPG<span style="color: #7a0874; font-weight: bold;">&#41;</span> 1.4.10; Copyright <span style="color: #7a0874; font-weight: bold;">&#40;</span>C<span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #000000;">2008</span> Free Software Foundation, Inc.
This is <span style="color: #c20cb9; font-weight: bold;">free</span> software: you are <span style="color: #c20cb9; font-weight: bold;">free</span> to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
pub  4096R<span style="color: #000000; font-weight: bold;">/</span>6A189DDA <span style="color: #000000;">2010</span>-<span style="color: #000000;">10</span>-<span style="color: #000000;">28</span> antonio <span style="color: #7a0874; font-weight: bold;">&#40;</span>fjkgjdg<span style="color: #7a0874; font-weight: bold;">&#41;</span>
Удалить данный ключ из таблицы ключей? <span style="color: #7a0874; font-weight: bold;">&#40;</span>y<span style="color: #000000; font-weight: bold;">/</span>N<span style="color: #7a0874; font-weight: bold;">&#41;</span>y</pre></td></tr></table></div>

<p>И проверяем, что все удалено:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">$ gpg <span style="color: #660033;">--list-keys</span>
gpg: проверка таблицы доверий
gpg: не найдено абсолютно доверяемых ключей</pre></td></tr></table></div>

<p>Видите как все просто, и ни в коем случае не надо передавать закрытый ключ!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.lukmus.ru/2010/10/29/gnupg-v-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
