Пиринговая сеть

Napster

Вот здесь хорошо описана история файлообмена. Я же детально остановлюсь на P2P протоколах, заслуживающих внимания. P2P сети были известны с начала 90-x(IRC, Hotline), но первым P2P протоколом, получившим широкую известность среди пользователей глобальной сети, был Napster. Тот самый,  который упоминается в “Ограблении по-итальянски” 2003 года, и сооснователем которого был Шон Паркер, сыгранный Джастином Тимберлейком в фильме Дэвида Финчера “Социальная сеть”. Можно представить, какой эффект произвело появление утилиты в 1999 году.  В основе Napster стояли центральные сервера (Index Server), у которых был список всех файлов и адреса клиентов (пиров), у которых их можно скачать. Пир подключался к серверу, посылал поисковый запрос, и получал в ответ адреса других пиров с запрашиваемым файлом. Затем через тот же сервер устанавливалось соединение между пирами и производился обмен файлами, поскольку напрямую соединение было установить проблематично из-за файрволов и NAT. Таким образом, у центральных серверов была информация обо всех пирах с IP, обо всех файлах и обо всех передачах между пирами. С точки зрения приватности, это очень удручающая ситуация. Однако на тот момент это был прорыв в области распространения аудио, хотя именно эта особенность и послужила причиной упадка Napster: поскольку существовал центральный сервер компании, правообладателям было легко подать на него в суд по причине пиратства и выиграть его. Тем не менее, Napster показал миру возможности P2P протоколов, и мы плавно подходим к более современным вариантам.

Основные преимущества программы

  • быстрый обмен файлами
  • работает через http-протокол
  • абсолютно бесплатная
  • открытый код

Дополнительные возможности программы

  • создает специальную виртуальная файловую систему папок
  • работает через любой браузер
  • возможность управления пропускным каналом
  • разнообразные настройки
  • различные режимы управления
  • ведение лога всех подключений
  • контроль всех соединений
  • возможность использования множества аккаунтов

Конечно, очень продуктивной работы в многопоточном режиме в этой программе вы не увидите, но с раздачей файлов для небольшой группы обучаемых она вполне справляется.

Виды P2P сетей

Несмотря на простоту работы Р2Р сети для организации обмена данными и файлами, все равно требуется наличие стабильной платформы, которая будет задействоваться всеми сторонами, а также системы номенклатуры для отметки файлов.

Известно три типа сетей, описывающих файловых обмен в рамках пиринговой сети. Пользователь может выбрать структурированную, неструктурированную или комбинированную сеть, в зависимости от личных потребностей.

Выбор типа также обусловливается видами файлов, которые находятся в общем доступе, а также наличием выделенной платформы и основным источником контента.

Рассмотрим каждый тип сети детальнее:

  • структурированная Р2Р сеть – формируется по принципу иерархии с использованием распределенной хеш-таблицы или DHT. Данный вариант подходит для научных или крупных организаций, где все компьютерные устройства постоянно подключены к сети Интернет. Это позволяет легко найти любые данные и загрузить их максимально быстро, при этом сама система никак не страдает от большого количества устройств, которые подключаются к ней;
  • неструктурированная Р2Р сеть – формируется без иерархии, а каждый ПК будет подключаться к ближайшему одноранговому узлу, если в нем есть необходимые пользователю данные. Сеть будет заполняться запросами, и подключение будет происходить к тем узлам, которые отвечают;
  • гибридная Р2Р сеть – комбинация неструктурированной и структурированной сети, использование одних и тех же данных, а также терминологии. Такая сеть может идти на компромисс между двумя типами, чтобы максимально использовать преимущества каждого из них;
  • торренты – уникальная технология BitTorrent P2P для эффективного поиска и скачивания необходимых файлов. В одном торрент-файле есть полный индекс данных, поэтому происходит быстрое подключение к р2р клиенту и объединение онлайн-пользователей. То есть загрузка происходит совместными усилиями.

Предпосылки

Увеличение роста и объема информационных потоков привело к тому, что передача информации стала неотъемлемой частью бизнес-процессов большинства структур. Появилась необходимость обмена файлами и электронными документами между различными категориями пользователей: как между сотрудниками в рамках компании, так и между сотрудниками и внешними партнерами/клиентами.
Использование традиционных решений, как, например, электронная почта и FTP, больше не могут покрыть весь спектр требований, которые необходимы для реализации подсистемы безопасности компании с целью предотвращения утечки конфиденциальных данных. Более того, подобные ресурсы не способны обеспечить комплексной защитой передаваемые файлы, гарантировать конфиденциальность информации и контролировать процесс обмена. Сложившаяся ситуация привела к увеличению спроса на продукты типа MFT.

Применение P2P в других сферах

P2P придумали IT-специалисты, но подобный подход используют и экономисты. В области финансов под этим термином понимают обмен цифровых активов без посредников. P2P-платформы связывают покупателей с продавцами и кредиторов с заемщиками. 

P2P-обменник Bitzlato представляет собой доску объявлений для покупки и продажи криптовалют. Пользователи находят друг друга и определяют условия сделки лично. Например, можно найти человека, который хочет продать биткоин по текущему курсу и получить деньги на карту Сбербанка. Bitzlato лишь поможет защитить сделку, заблокировав криптовалюту на время сделки. Обычные обменники менее выгодны, так как назначают завышенный курс и взимают комиссии с каждой сделки.

Зачем отправлять файлы по безопасному каналу?

Представьте, что ваш клиент срочно хочет увидеть результаты, которые вы придумали, но он или она находится в нескольких километрах от вашего места. Переход на цифровые технологии — лучший способ для вас в данный момент. Теперь, если размер файла слишком велик или важен по своей природе, вы все равно рискнете отправить его по почте?

Как вы можете быть уверены в его конфиденциальности?

Одним из способов достижения этого является использование служб обмена файлами. Его преимущества:

Размер не имеет значения

Предприятия имеют бесконечные данные и файлы, начиная от графики, видео, аудио, презентационных документов, электронных таблиц и так далее. Эти файлы могут быть большими, и отправка их по электронной почте кажется разочаровывающей.

Благодаря современным службам обмена файлами, где размер файла вряд ли является проблемой. Вы можете легко отправлять файлы объемом несколько гигабайт без каких-либо хлопот. Вы можете воспользоваться их бесплатной или платной версией в соответствии с вашими требованиями, но они могут иметь ограничения по размеру, а их платные версии — нет.

Защитное одеяло

Безопасность данных стала критически важным аспектом, как никогда, в связи с ростом числа киберпреступлений. Таким образом, для защиты вашей интеллектуальной собственности в вашем распоряжении есть сервисы обмена файлами, маркетинговые планы, конфиденциальная информация, финансовая информация и т.д.

Это потому, что они помогают снизить шансы, связанные с нарушением данных, путем надлежащего шифрования ваших файлов при передаче и надежной защиты паролем между обеими сторонами. Они также могут предложить дополнительные уровни безопасности для ваших мобильных устройств посредством аутентификации и авторизации.

Послужной список

Еще одно преимущество использования служб обмена файлами заключается в том, что вы можете вести учет всех общих данных, включая дату и время, кому они были отправлены, каков размер общего файла, был ли он успешным или нет, и так далее.

Службы обмена файлами обеспечивают полезный аудит данных для людей, работающих в разных часовых поясах и местах. Каждый, кто синхронизирован с остальной командой, имеющей доступ к файлообменной службе, может видеть записи, введенные в нее, чтобы обеспечить единый опыт обмена.

Быстрая передача

Обмен файлами с использованием безопасной службы обмена файлами — это надежный и быстрый процесс. Вы можете обмениваться файлами разных типов, такими как графика, видео, аудио и т.д., Независимо от того, большие они или маленькие. Вы можете легко поделиться этими файлами со своими коллегами или клиентами относительно быстрее.

В результате общая скорость работы также увеличивается с меньшей вероятностью ошибок. Таким образом, вы можете сэкономить время для выполнения других важных обязанностей.

Давайте рассмотрим частные решения для обмена файлами.

Не модель клиент-сервер

Во-первых, мы должны объяснить, что такое одноранговая связь. Остальная часть Интернета обычно работает по так называемой модели клиент-сервер .

Веб-сайт, размещенный на мощном сервере где-то в мире ( лучшие услуги веб-хостинга ), предоставляет информацию, когда ваш компьютер или телефон запрашивает ее. Это может быть шрифт, используемый для правильного отображения веб-сайта, или это может быть ISO-образ Linux объемом 2 ГБ, который вы хотите загрузить. Сервер отправляет файл вам. Когда следующий пользователь приходит, процесс повторяется.

Так работает клиент-серверный интернет.

Это хорошо работает для веб-сайтов, но не подходит для распространения больших файлов. В основном это проблема скорости, пропускной способности, стоимости и легальности.

Скорость на традиционном веб-хостинге довольно ограничена. Это хорошо для передачи небольших объемов текста для визуализации веб-сайта, а некоторые веб-серверы оптимизированы только для обслуживания изображений. Но для больших файлов это потребовало бы максимальной скорости, которая не будет устойчивой в течение длительного времени и блокирует сервер для других пользователей. Пропускная способность также является дорогостоящей; Просто показ изображений здесь, в , стоит много тысяч долларов в год.

С юридической точки зрения относительно легко найти один сервер, выключить его, а затем привлечь к ответственности владельца. Поэтому P2P был рожден по необходимости. Тем, кто хотел распространять защищенные авторским правом файлы, нужен был лучший способ.

Программы для обмена файлами

Основными программами для обеспечения быстрого и качественного обмена файлами являются следующие:

  • uTorrent – самая легкая и быстрая программа, 150 миллионов пользователей каждую минут используют сервис для передачи данных;
  • BitTorrent – это специальное расширение и прародитель создания пиринговой системы. Известна давно, но все равно хорошо конкурирует с остальными клиентскими сервисами;
  • BitComet – китайская программа с протоколами безопасности, по большей части ориентирована на азиатский рынок за счет адаптации к алфавиту Китая, Японии и Кореи;
  • eMule – структурированная клиентская система, которая работает по лицензииGNU GPLv2, отличается своей безопасностью и хорошей развитостью;
  • Vuze – считается единственным торрент-клиентом, который имеет систему I2P, обеспечивающую полную анонимность для пользователей.

Что такое Peer-to-Peer?

Одноранговая связь — это совершенно другая модель, в которой каждый становится сервером . Нет центрального сервера; каждый, кто использует сеть, действует как собственный сервер. Вместо того, чтобы просто брать файлы, одноранговая сеть превратила его в улицу с двусторонним движением.

Теперь вы можете вернуть другим пользователям. На самом деле, отдача (известная сегодня как «заполнение») имеет решающее значение для успеха одноранговых сетей. Если бы все просто скачивали, ничего не возвращая (так называемый «пиявка»), сеть не давала бы никаких преимуществ по сравнению с моделью клиент-сервер.

Вот как выглядит P2P: все в сети раздают файлы всем остальным.

В модели клиент-сервер производительность снижается при увеличении количества пользователей, так как одинаковая пропускная способность распределяется между большим количеством людей. В одноранговых сетях больше пользователей делают сеть более эффективной. Чем больше пользователей предоставляют доступ к определенному файлу со своих жестких дисков, тем проще для новых пользователей получить этот файл.

В современных сетях P2P на самом деле быстрее, когда больше пользователей скачивают файл. Вместо того, чтобы брать весь файл от одного пользователя, вы берете меньшие куски от сотен или тысяч других. Даже если у них есть только небольшая пропускная способность, объединенные соединения означают, что вы получаете максимально возможную скорость. Затем вы, в свою очередь, вносите свой вклад в распространение файла снова.

В более ранних формах P2P-сетей центральный сервер все еще был необходим для организации сети, выступая в качестве базы данных, которая содержала информацию о подключенных пользователях и файлах, доступных в системе. Несмотря на то, что тяжелая передача файлов осуществлялась напрямую между пользователями, сети все еще были уязвимы. Выключение этого центрального сервера означало полное отключение связи.

Это больше не так благодаря недавним событиям. В настоящее время программное обеспечение может напрямую спрашивать пиров, видели ли они определенный файл. Нет возможности уничтожить эти сети — они практически неразрушимы.

Send Anywhere

Этот сервис работает практически на всех известных платформах, позволяя бесплатно передавать файлы до 4 Гб. Зайдя на сайт по адресу send-anywhere.com, можно сразу начать обмениваться информацией с другими пользователями. Для этого выберите пункт Direct — вам будет выдан 6-значный PIN-код, который необходимо будет сообщить получателю. После того как он введет его в поле Input key — начнется скачивание. При этом регистрироваться вовсе необязательно, но вы должны будете находиться в это время на сайте сервиса.

У сервиса есть собственное расширение для браузера Google Chrome и приложения для iOS и Android. SendAnywhere доступен также для MacOS и Windows, есть версии для Linux и Amazon Kindle, а также плагины для WordPress и Outlook. Если применять расширение для браузера, то можно обмениваться файлами до 4 Гб. При использовании платной версии за 6 долларов в месяц предоставляется хранилище на 1 ТБ.

ZippyShare

ZippyShare – небезызвестный файлообменник, заполнивший рунет ссылками на архивы размером до 500 мегабайт.

С тех пор правила не поменялись: разработчики по-прежнему ограничивают объем загружаемых файлов, но не мешают обмениваться информацией на максимальной скорости.

Регистрация на сайте ZippyShare необязательна: достаточно воспользоваться кнопками Browse для выбора файлов для загрузки и Start Upload для переноса информации в хранилище.

После разработчики разрешают сформировать ссылку и передать друзьям, коллегам и знакомым через социальные сети, мессенджеры или электронную почту.

Как устроены пиринговые сети: электронные платежи

Теперь представим, что другу необходимо отправить деньги. Современная платежная система устроена централизовано — обработкой и регистрацией всех транзакций занимаются банки. Люди платят банкам за то, что они выступают посредниками и обеспечивают надежность и сохранность их денег.

Для создания платежной системы, которая могла бы регулироваться без постороннего воздействия, используется блокчейн. Каждый узел хранит копию всех данных и сравнивает ее с копиями остальных узлов, чтобы убедиться в точности. Таким образом, пиринговые сети на блокчейне быстро реагирует на любые вредоносные действия или неточности.

Банковский перевод и перевод с помощью блокчейна

Впервые пример подобной пиринговой сети был описан в 2008 году, когда создавался Биткоин. Разработчики называют свою криптовалюту «P2P системой электронной наличности» («a P2P Electronic Cash System»). Отправка биткоинов на другой кошелек означает создание записи о том, что у криптовалюты изменился владелец. Чтобы запись призналась верной, ее должны подтвердить другие участники сети. Таким образом, удается обойтись без вмешательства посредника с более высокими полномочиями.

P2P

Для начала необходимо пояснить, что является P2P файлообменным протоколом. Википедия подсказывает, что это протоколы для распространения и обмена информацией с помощью специальной программы для поиска других пользователей в сети, в которой все пользователи (пиры) являются равноправными участниками, в отличие от клиент-серверной модели обмена информацией. Для некоторых протоколов (гибридные P2P, например, Napster или BitTorrent) необходимо подключение к серверу, чтобы узнать информацию о файлах или о пользователях, у которых можно взять определённый файл. Сам же обмен данными производится между пользователями сети, в чём и заключается главная особенность P2P. Сегодня происходит расцвет криптовалют, наблюдается непрерывный рост как в стоимости криптовалют, так и в их количестве. Большая часть существующих криптовалют основывается на P2P протоколах подтверждения транзакций, который также были вдохновлены пиринговыми файлообменными сетями.

Протокол BitTorrent

Разработанный в 2001 году, BitTorrent — это протокол с открытым исходным кодом, в котором пользователи создают метафайл (называемый .torrent- файл), содержащий информацию о загрузке, без предоставления самих данных загрузки. Трекер был необходим для хранения этих метафайлов вместе с тем, кто в настоящее время хранит этот файл. Однако в качестве открытого протокола любой может запрограммировать программное обеспечение клиента или трекера.

Таким образом, даже если для поддержки баз данных этих доступных файлов необходим центральный трекер, могут существовать несколько трекеров. Любой файл торрент-дескриптора может быть зарегистрирован на нескольких трекерах. Это сделало сеть BitTorrent невероятно надежной и практически невозможно полностью разрушить. Закрытие торрент-сайтов стало игрой в прятки. В течение своей жизни Пиратская бухта была убита и воскрешена несколько раз

Начиная с оригинального дизайна, были сделаны дальнейшие улучшения, которые позволили скачивать без трекера. DHT ( распределенная хеш-таблица ) означала, что работа по индексированию доступных файлов может распространяться среди всех пользователей. Магнитные ссылки — это еще одно, но они достаточно сложны, чтобы объяснить, как магнитные ссылки отличаются от торрент-файлов. .

SafeNote

SafeNote — отличный вариант для анонимного обмена временными файлами. Он предлагает бесплатную платформу, где конфиденциальность, простота и анонимность направлены на предоставление вам надежного обмена данными.

Вы можете загружать свои файлы, делиться своей ссылкой с людьми, которым вы хотите поделиться, и когда они скачивают файлы, вы можете удалить их. Кроме того, вы также можете установить конкретное время истечения для файлов, чтобы он мог быть удален автоматически.

Когда вы загружаете файл, он генерирует безопасную ссылку, которую вы можете скопировать и поделиться ею с получателем, чтобы он / она мог загрузить файлы, а затем файл самоуничтожится.

Как работает VPN?

Соединение VPN – это, так называемый, “туннель” между компьютером пользователя и компьютером-сервером. Каждый узел шифрует данные до их попадания в “туннель”. 

Вы подключаетесь к VPN, система идентифицирует вашу сеть и начинает аутентификацию (сравнивает введенный пароль с паролем в своей базе данных). 

Далее сервер Вас авторизует, то есть предоставляет право на выполнение определенных действий: чтение почты, интернет-серфинг и т.д. После установления соединения весь трафик передается между вашим ПК и сервером в зашифрованном виде. Ваш ПК имеет IP-адрес, предоставленный интернет-провайдером. Этот IP блокирует доступ к некоторым сайтам. VPN сервер меняет ваш IP на свой. Уже с VPN-сервера все данные передаются к внешним ресурсам, которые вы запрашиваете. Теперь можно просматривать любые ресурсы и не быть отслеженным.

Однако, следует помнить, что не вся информация шифруется. У разных VPN-провайдеров могут отличаться такие характеристики как степень шифрования, сокрытие факта подключения к серверу, хранение логов (журнал, в который сохраняется информация о посещаемых сайтах, реальный IP адреси т.п.) и сотрудничество при выдаче информации третьим лицам. 

Если VPN-провайдер вообще не записывает логи, то передавать третьим лицам просто нечего. А сокрытие факта подключения к серверу – уже более редкая услуга. При некорректном подключении или резком разрыве соединения может произойти утечка части данных. Решить проблему поможет технология Multihop VPN, которая предполагает соединение с сайтом сразу через несколько серверов.

Рассмотрим популярные VPN:

PPTP – Point-to-Point Tunneling Protocol 

+ поддерживается всеми ОС 

+ не требует много вычислительных мощностей 

— плохая защищенность. Методы шифрования устарели, плохая архитектура, есть ошибки в реализации протокола от Microsoft. Нет шифрования по умолчанию, на взлом требуется менее суток.

Используется, когда защита данных не очень важна или когда нет других вариантов.

L2TP – Layer 2 Tunneling Protocol 

+ более эффективен для построения виртуальных сетей

— более требователен к вычислительным ресурсам

— не предполагает шифрования по умолчанию

Работает совместно с другими протоколами, чаще всего IPSec. 

Используется интернет-провайдерами и корпоративными пользователями.

IPSec – Internet Protocol Security – группа протоколов и стандартов для безопасных соединений. 

+ хорошая архитектура

+ надежность алгоритмов

— сложен в настройке (следовательно, снижение защиты, если настроить неправильно)

— требует много вычислительных ресурсов

+ этот недостаток компенсируется путем аппаратного ускорения алгоритма шифрования АЕС

Часто используется совместно с другими технологиями.

SSL – Secure Sockets Layer & TLS – Transport Layer Security – группа методов, включающая в себя протоколы SSL и TLS и другие методы защиты. 

+ беспрепятственно пропускаются большинством публичных сетей

— довольно низкая производительность

— сложность в настройке, необходимость установки дополнительного ПО

используется на веб-сайтах, URL которых начинается с https (там еще виден зеленый замочек)  

некоторые реализации: OpenVPN, Microsoft SSTP. 

+ OpenVPN имеет открытый код, реализован практически для всех платформ, считается очень надежным.

FTPS

FTPS (FTP + SSL) – расширение стандартного протокола передачи файлов, добавляющее в его базовый функционал создание шифрованных сессий с помощью протокола SSL (Secure Sockets Layer — уровень защищенных сокетов). На сегодняшний день защита обеспечивается его более продвинутым аналогом TLS (Transport Layer Security — защита транспортного уровня).

SSL

Протокол SSL предложен корпорацией Netscape Communications в 1996 году с целью обеспечения безопасности и секретности интернет-соединений. Протокол поддерживает аутентификацию (установление подлинности) клиента и сервера, не зависит от приложений и прозрачен для протоколов HTTP, FTP и Telnet.

Протокол SSL Handshake состоит из двух этапов: установление подлинности сервера и необязательное установление подлинности клиента. На первом этапе сервер в ответ на запрос клиента посылает свой сертификат и параметры шифрования. Затем клиент генерирует мастер-ключ, зашифровывает его открытым ключом сервера и отсылает серверу. Сервер расшифровывает мастер-ключ своим частным ключом и подтверждает свою подлинность клиенту, возвращая ему сообщение, заверенное мастером-ключом клиента.

Последующие данные шифруются и заверяются ключами, полученными на основе этого мастера-ключа. На втором этапе, который не является обязательным, сервер посылает запрос клиенту, а клиент подтверждает серверу свою подлинность, возвращая запрос с собственной цифровой подписью и сертификат открытого ключа.

SSL поддерживает разнообразные криптографические алгоритмы. В ходе установления связи используется криптосистема открытого ключа RSA. После обмена ключами используется много разных шифров: RC2, RC4, IDEA, DES и TripleDES. Также используется MD5 — алгоритм создания дайджеста сообщений. Синтаксис сертификатов открытого ключа описан в X.509.

Одним из немаловажных преимуществ SSL, является его полная программно-платформенная независимость. Протокол разработан на принципах переносимости, и идеология его построения, не зависит, от тех приложений, в составе которых он используется

Помимо этого, важно и то, что поверх протокола SSL, могут прозрачно накладываться и другие протоколы; либо для еще большего увеличения степени защиты целевых информационных потоков, либо, для адаптации криптографических способностей SSL под какую-нибудь другую, вполне определенную задачу

SSL-подключение

Предоставляемый SSL безопасный канал обладает тремя основными свойствами:

  • Канал является частным. Шифрование используется для всех сообщений после простого диалога, который служит для определения секретного ключа.
  • Канал аутентифицирован. Серверная сторона диалога всегда аутентифицируется, в то время как клиентская — аутентифицируется опционально.
  • Канал надежен. Транспортировка сообщений включает в себя проверку целостности (с привлечением MAC).

Особенности FTPS

Существуют две реализации FTPS, использующие различные методы предоставления безопасности:

  • Неявный метод предполагает использование стандартного протокола SSL с установлением сессии перед отправкой данных, что, в свою очередь, нарушает совместимость с обычным FTP клиентами и серверами. Для обратной совместимости с клиентами, которые не поддерживают FTPS, для контрольного соединения используется TCP-порт 990, а для передачи данных — 989. Это позволяет сохранить стандартный порт 21 для протокола FTP. Данный метод признан устаревшим.
  • Явный – намного более удобен, так как использует команды стандартного FTP, но при ответе шифрует данные, что позволяет использовать одно и тоже управляющее соединение как для FTP, так и для FTPS. Клиент должен явно запросить защищенную передачу данных у сервера, а после утвердить способ шифрования. Если клиент не запросит защищенную передачу, FTPS сервер вправе как сохранить, так и закрыть незащищенное соединение. Механизм согласования идентификации и защиты данных был добавлен под RFC 2228 который включает в себя новую FTP команду AUTH. Хотя этот стандарт не определяет явно механизмы защиты, он определяет, что защищенное соединение должен инициировать клиент с помощью описанного выше алгоритма. Если защищенные соединения не поддерживаются сервером, должен быть возвращен код ошибки 504. FTPS клиенты могут получить информацию о поддерживаемых сервером протоколах защиты при помощи команды FEAT, тем не менее сервер не обязан разглашать то, какие уровни безопасности он поддерживает. Наиболее распространены FTPS команды AUTH TLS и AUTH SSL, обеспечивающие защиту TLS и SSL соответственно.
Рейтинг
( Пока оценок нет )
Editor
Editor/ автор статьи

Давно интересуюсь темой. Мне нравится писать о том, в чём разбираюсь.

Понравилась статья? Поделиться с друзьями:
Работатека
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: