Свой Gmail с преферансом и барышнями


Коллеги, подскажите, есть ли готовое решение для быстрого разворачивания своего mail-сервера, где каждый аккаунт будет сразу и mail и xmpp адресом?
Изначально выбор упал на Roundcube[link1] c плагином rc_openpgpjs[link2]
В идеале сразу зеркалить в скрытый сервис Tor и отдельный i2p-сайт.
Чтобы с бубном не танцевать, т.к. разворачивать придется часто – ищется готовое решение или отдельный скрипт-костыль.
В какой доменной зоне лучше всего зарегистрировать домен?
Что на счет паники 2016 года, касательно серверов за границей? Оплатить на 5 лет вперед или ничего страшного не произойдет?

Комментарии
Гость (08/07/2014 00:16)   
Подобного нет ничего. Только вручную. Хорошо бы в таком случае туда прикрутить ownCloud.
Уважаемые, а давайте здесь поднимем вопрос облачных платформ, полезных на своем сервере?
Roundcube уже прозвучал, я же к предложенному мной ownCloud добавлю еще его аналог на Python – Seafile[link3], веб-клиент XMPP, с поддержкой OTR Сonverse.js[link4], и более простой Jappix[link5].
Гость (08/07/2014 06:58)   
Коллеги, подскажите

В смысле, коллеги?? О_о
— Следящий (08/07/2014 10:15)   
В смысле, коллеги?? О_о

люди, интересующиеся безопасностью
Гость (08/07/2014 11:30)   
А ты подумал, что это ФСБшник интересуется?)
Тема серверного ПО на самом деле интересная, я бы сюда еще добавил:
Cozy[link6] – Персональный PaaS, довольно гибкий в настройке.
Pydio[link7] – удобная и гибкая система файлообмена.
WebODF[link8] – без комментариев, мастхэв.
tor2web[link9] – на всякий случай пригодится.
img.bi[link10] – уже помянутый здесь пользователем ressa сервис хостинга изображений с AES-256 шифрованием
По поводу Roundcube – смотрите в сторону iRedMail[link11]
Гость (08/07/2014 17:06)   
Horde[link12] — imho, лучше, чем gmail. Встроенная поддержка PGP (для самых маленьких), календарь и т.д. Без XMPP, но можно встроить модуль (1[link13], 2[link14]).
Я вот как раз хотел спросить, но не знал, где. Про новую CMS Ghost[link15]. Кто-нибудь с этим сталкивался? Каков там output, это flat files или база?

Эта штука не использует MySQL и PHP, а использует Node.js[link16]. Это можно использовать, в принципе?

Что с этим теоретически может быть при порядочной нагрузке на сервер?
Гость (08/07/2014 19:02)   
Horde — imho, лучше, чем gmail.

gmail – это сравнение. Подразумевается просто свой почтовый сервер для личных нужд.
Но с Вами не соглашусь – присмотритесь еще раз к Roundcube c плагином rc_openpgpjs – там с GPG все в полном порядке.
По поводу Node.js – ничего не могу сказать, при упоре на анонимность – нужно свести к минимум статическое использование JS. Одно дело OpenPGP.js[link17] на своем почтовом сервере, а другое блог, подразумевающий отдачу контента. Мне интересные реализации блогов с уклоном на анонимность и приватность – подпись постов GPG, фидбэк c GPG и тд. Но не знаю, на чем реализовывать, все эти Node, AngularJS и KnockoutJS доверия особо не вызывают с учетом того, что задача зеркалить выдачу в i2p и Tor, желательна чистая статика, никаких JS. SATtva тоже не зря на Python пишет новый движок, хотя и готовых полно, да и не смотря на оперативность разработки Python-приложений – все-таки используя вышеуказанные фреймворки – будет в разы быстрее.
Коллеги, присоединяйтесь – оживимся немного, тема то нужная и интересная, причем независимо от уровня знаний.
Гость (08/07/2014 22:02)   
Есть еще один (анти)вордпрессс с небольшим набором тем и плагинов — getsimple[link18]. Но на выходе тоже не flat files, а какая-то своя база (не MySQL). Были у них какие-то смешные уязвимости, связанные с именами юзеров и т.д. Исправили, но не факт, что не найдется чего-то в этом духе. Много подобного (1[link19] и 2[link20]), но ничего, по большому счету, приличного.

Как-то не очень это сочетается :).

В принципе, не сам вордпресс страшен, сколько то, что он всё, что умеет, делает на сервере. Слишком много всего, и при большом трафике или атаке... это примерно как держать word processor в сети, чтобы выкладывать текстовые файлы (и если заденешь процессор, то не будет видно и файла).

Я бы отдал комментарии каким-нибудь disqus, а саму CMS держал бы у участников, а на сервер бы клал только flat files. Осталось найти готовую разработку :). Но, вроде, нету.
Гость (08/07/2014 23:53, исправлен 09/07/2014 09:08)   
Как-то не очень это сочетается :).

Почему же? Речь ведь не только о GPG, а о зеркалировании сайта в i2p и Tor, и, даже возможно – в Freenet.
Вот и хотелось бы видеть готовое решение для быстрого развертывания.
По поводу Wordpress – это монстр, комбайн, не нужен он для этих целей. Параметры минимальны:
-своя база
-WYSIWYG, да тот же пресловутый TinyMCE[link21]
-Подпись постов GPG
-Возможность комментариев
-Отзеркаливание контента в режиме реального времени в i2p и Tor.
-И, в качестве сервисов – упомянутые выше проекты (предлагайте еще)

Я бы отдал комментарии каким-нибудь disqus, а саму CMS держал бы у участников, а на сервер бы клал только flat files. Осталось найти готовую разработку :)

Это для проекта с устоявшейся целевой аудитории. А я подразумеваю независимый авторский блог на совершенно разностороннюю тематику, который автор, к примеру, ведет в качестве дневника, но не прочь увидеть и мнения, выраженные в комментах, заинтересовавшимися пользователями. Ну или независимое СМИ.

Гость (09/07/2014 00:27)   
Для построения своей почтовой системы нужно установить SMTP- и POP3-сервер. Технически этого достаточно для отправки и получения почты. Чтобы SMTP-сервер не распознавался как источник спама, то дополнительно к A и MX нужны записи PTR (обратный DNS) и TXT (SPF). Для себя установить спам-фильтр, хотя это можно сделать и на стороне клиента. Если основные настройки автоматизированы скриптами, то разворачивание такой системы занимает не более одного-двух часов.
Гость (09/07/2014 00:40)   
Я Вам больше скажу – поднятие просто почтового сервера и настройка морды – это 30 минут максимум. Для человека с базовыми знаниями.
Речь идет о комплексном подходе и установке веб-сервисов в целом. А если уж о почте – то вопрос стоял только в автоматизации добавления аккаунтов mail_adress=xmpp_adress. Например, как это реализовано в unseen.is. Не больше и ни меньше. И как дополнение – обсуждался вопрос готовых решений. Как по коммуникациям, так и по движгам персонального блога. Вопрос конфига постфиксов и прочих не поднимался. Но Ваш ответ будет многим полезен, по крайней мере нужно знать, как это делать вручную, в случае чего.
Теперь по поводу 16го года – я не предчувствую никакой паники. Сервера можно всегда купить за биткойны, или на другого человека и тд. Но безопасность и надежность от этого не улучшаются. Поэтому вопрос комбинированного и децентрализованного хранения – остается более, чем актуальным. Так же отмечу, что действительно интересен вопрос комбинированного контентохранения для сайтов и блогов – несколько доменов и несколько анонимных сетей с зеркалированием добавленного в любой из сети контента.
— SATtva (09/07/2014 09:15)   
По поводу Node.js – ничего не могу сказать, при упоре на анонимность – нужно свести к минимум статическое использование JS.

Node.js — это веб-сервер, написанный на javascript, т.е. это аналог Apache или nginx. К клиентскому исполнению js в браузере оно никак не относится, код исполняется целиком на серверной машине, просто по определённым соображениям в качестве языка для реализации был выбран js (как могли бы выбрать C или тот же Python). В качестве интерпретатора используется гугловский движок V8.
Гость (09/07/2014 10:01)   
для реализации был выбран js

Скажите, а какова вероятность некорректного отображения элементов, при использовании NoScript? Ведь js входит в модель угрозы при просмотре сайтов в анонимных сетях, тех же Tor и i2p.
Кстати, как действительно отображать контент одного и того же ресурса во всех анонимных сетях? Писать парсер кажется абсурдным, это будет больше, чем костыль..
— SATtva (09/07/2014 10:15)   
Скажите, а какова вероятность некорректного отображения элементов, при использовании NoScript?

Ваш вопрос по поводу Node.js? Тогда Вы не поняли, что он из себя представляет. NoScript фильтрует клиентский js, исполняемый в браузере пользователя. Node.js — серверное приложение, клиенты его вообще никак не видят. Если проводить аналогию с Вашим вопросом, то это всё равно, как спросить, не будет ли антивирус на машине пользователя мешать работе веб-сервера Apache, на котором хостится интернет-сайт.
Гость (09/07/2014 10:42)   
Спасибо, SATtva. А не могли бы Вы ответить на мой вопрос об отображении контента в различных анонимных сетях. К примеру, как бы Вы лично это сделали с PGPRU, если кто-то пишет в pgpru.com, кто-то в ххххх.onion а кто-то в pgpru.i2p?
— SATtva (09/07/2014 10:49)   
Всё же в итоге транслируется на один веб-сервер. Что Tor, что I2P выступают просто шлюзами.
Гость (09/07/2014 10:58)   
Для повышения отказоустойчивости работа Tor и i2p предполагается на двух разных серверах.
Гость (09/07/2014 10:59)   
Node.js — это веб-сервер, написанный на javascript

Скорей всего этот веб-сервер написан на С, а в качестве языка сценариев использует javascript. Всё преимущество такого сервера основано на предположении что клиент тоже использует скрипты. Если javascript в браузере отключён, то этот сервер безполезен. Node.js – паразитное ПО, если учесть что в 99.9% случаев скрипты на сайтах не нужны, а являются просто способом слежки за посетителями. И способом самовыражения авторов в ущерб безопасности и удобству посетителей.

Появилась целая прослойка спциалистов в сфере ИТ, которая отнимает кучу ресурсов, не производя ничего полезного. Весь что они умеют – мешать удобному и безопасному просмотру сайтов, запихивая в них весь этот мусор в виде javascript, ajax, java, flash, html5. гуглоприложения типа node.js по-видимому создаются для того, чтобы подстрекать и дальше тунеядствовать за счёт размножения ненужных и вредных сущностей.
Гость (09/07/2014 11:21)   
Если javascript в браузере отключён, то этот сервер безполезен.Node.js – паразитное ПО, если учесть что в 99.9% случаев скрипты на сайтах не нужны, а являются просто способом слежки за посетителями

Вот это я и имел в виду. На все 100%.
В сторону чего бы Вы отдали свой выбор, реализуя описанный мной выше функционал персонального блога?
Касательно html5 – он ведь вполне себе тоже может нести в себе как слежку за пользователями, так и loader'ы зловредов. Пусть и не затронет это пользователей Linux, но в качестве деанонимизации – вполне годится. Как бороться с этим в будущем?
Гость (09/07/2014 13:42)   
Никогда не пользовался готовыми движками или панелями администрирования, настраивал вручную. Поэтому в поднятой вами теме не разбираюсь. Известные блоговые движки вроде позволяют пользователям читать и оставлять комментарии с выключенным javascript. Примитивный блог можно написать самому, при наличии склонности к программированию и толковой книги по php+mysql. Я бы именно таки и сделал – отдельно установить и настроить веб-сервер, почтовую систему, Tor, написать простой движок сайта на голом html с возможностью оставлять анонимные комментарии. Если блог небольшой, то можно даже без базы данных, хранить комментарии в файлах.
— SATtva (09/07/2014 14:43)   
facepalm.jpg


А всё преимущество Twisted, стало быть, основано на том, что клиент умеет интерпретировать python? Очевидно, что сервер написан на сях (о V8 я упоминал выше), но js он исполняет server-side. Если так будет проще, представьте себе интерпретатор PHP совмещённый с веб-сервером, но приложения для него пишутся не на PHP, а на JS.


Откройте официальный сайт или хотя бы википедию.
— SATtva (09/07/2014 14:45)   

Тогда поднимайте синхронизацию между этими серверами какими-то сторонними/подручными средствами.
Гость (09/07/2014 15:26)   
SATtva, а Вы Python выбрали из за скорости и простоты разработки? Ваше мнение какое по опыту написания движка?
Django используете или полностью с нуля?

Касательно доменов – в какой юрисдикции надежнее взять сейчас?
Гость (09/07/2014 15:30)   

Ув. SATtva, спасибо за разъяснения по Node. Википедию я читать, правда, умею, и азбучные истины, которые вы тут безуспешно вталкиваете, как-то понял сразу. Мне этот вариант кажется очень интересным, потому что без MySQL и довольно толковые люди[link22] за этим решением стоят.

Но сказанное не отменяет того, что решение, так скажем, довольно экзотично. И потому я повторил бы два простых вопроса: (1) Это можно использовать, в принципе? Или лучше попробовать лет через пять? (2) Что с этим теоретически может быть при порядочной нагрузке на сервер?

На вскидку, потому что понятно, что компетентную выкладку сейчас могут сделать только самые проницательные экстрасенсы.
— SATtva (09/07/2014 15:44)   

Рад, если так, хотя Ваш предыдущий[link23] ответ говорит об обратном.


Это ещё мягко сказано. Единственное, что я хотел — это внести ясность относительно непонимания некоторыми[link24] комментаторами сути Node.js, а не продвигать тут его применение в продакшене (на этот счёт у меня нет ни личного опыта, ни отзывов, на которые можно положиться).
Гость (09/07/2014 17:31)   

И css тоже. Люди, я вас прошу, забейте вы $уй на это css! Стили не нужны. Максимум веб интерактивности это формы ввода.
— ressa (09/07/2014 18:54)   
И то и другое имеет место быть, и css – тоже. Только не в security-ориентированных проектах. Там да – минимализм по всяким украшательствам. А если это проект корпоративного сектора, или тем более, ориентированный на бОльшую часть ЦА интернета, такие как соц.сети или увеселительные – так это же те самые "хлеба и зрелищ" нашего века, ну или предтехнократичной эры – как удобнее.
А топик этот действительно интересен. Сам все никак не уделю время заняться этим вопросом.
Кстати, может кто подскажет – сколько ориентировочно стоит разработка подобного блога?
Гость (09/07/2014 21:08)   

Я не знаю, по IP вы, наверное, судите, но это не я :).
Именно это и требовалось услышать.
Гость (09/07/2014 21:39)   
сервер написан на сях (о V8 я упоминал выше), но js он исполняет server-side.

Раньше вы писали иное:

> Если javascript в браузере отключён, то этот сервер безполезен.
Откройте официальный сайт или хотя бы википедию.

И что не понравилось? Ладно, напишу более точно – без скриптов в браузере этот сервер не имеет преимуществ по сравнению с обычными (Apache и т.п.)

Так и не понял, что в моём комменте вы пытались опровергнуть.

И css тоже

Стили можно оставить, от них есть польза, а возможный вред минимален по сравнению со скриптами
Гость (10/07/2014 00:45)   

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

С CMS парадоксальная ситуация. Есть целый ряд продвинутых open-source решений, но сам идиотский вебдванольный принцип — держать все комбайны в сети, — перевешивает возможные преимущества того или иного. Комбайн невозможно защитить от самых примитивных атак (вордпресс в частности).

Чтобы комбайн работал быстро, есть замечательное решение: wp super cache[link25] и W3 Total Cache[link26]. Идея такая: 99% визиторов динамический контент не нужен. Итого: плагины делают из работы комбайнов статические html-файлы. Эврика. Вуаля.

Единственная причина для того, чтобы комбайны по-прежнему были в сети, в том, что 1% визиторов комментирует. Но теперь появились решения для аутсорсинга комментариев — disqus, intensedebat и livefyre.

В связи с этим вопрос. Так ли сложно форкнуть wordpress, чтобы в результате он был на стороне клиента, а эти безобидные html-файлики лежали на сервере?
— unknown (10/07/2014 10:02, исправлен 10/07/2014 10:07)   

В то время как всё прогрессивное человество (с Github) использует Jekyll[link27], и для страниц сайтов, и для блогов.

— ressa (10/07/2014 10:49)   
unknown, это удобно да, но как это коррелирует с безопасностью хостинга на своем сервере(серверах)?
Если это как у m0fx64 – просто блог с техническим содержанием – да, а если это материал, попадающий под гребенку цензоров? Политика, финансы и тд?
— unknown (10/07/2014 12:07)   
Какая разница, какой контент? Блогоподобный сайт создаётся джекилом локально в виде набора статических страниц и заказчивается на любой сервак, способный отображать статические страницы. Хоть через rsync over SSH.
— ressa (10/07/2014 12:28)   
А, все, я понял тебя. Исходники в репозитории Github, а кэширующие сервера уже отдают посетителям. Вопрос юзабельности открыт, понятное дело, что можно приловчиться постоянно писать посты, вручную использовать Markdown, добавлять картинки в HTML – но это не очень удобно, а аутсорсить во всякие prose.io[link28] – не выход. А так идея хорошая, возможно в будущем будет более удобной.
Гость (10/07/2014 12:34)   

Спасибо, буду изучать. А возможно и использовать :).

Есть в развитых и популярных CMS то, увы, что они CMS. Это как word processing — необходимый функционал, по минимуму, и ваш gedit уже стал openoffice'ом. За этим стоит история и коммьюнити. А тот факт, что всё это криво и нехорошо реализовано, никого не волнует, потому что альтернативы, по большому счету, нет. У небольшой организации, допустим, небольшой сайт с 1000 страниц. CMS.
Гость (10/07/2014 22:20)   
Чтобы комбайн работал быстро, есть замечательное решение: wp super cache и W3 Total Cache. Идея такая: 99% визиторов динамический контент не нужен. Итого: плагины делают из работы комбайнов статические html-файлы.

Эти плагины вычищают скрипты из веб-страниц или просто создают кешированную копию сайта? Если второе, то есть и более универсальные средства типа phpCache. Или ещё проще – создать зеркало wget и периодически его обновлять.

Не пользовался wordpress, поэтому на ваш вопрос у меня нет ответа.

> И css тоже
Стили можно оставить, от них есть польза, а возможный вред минимален по сравнению со скриптами

Поправка – имел в виду базовую версию CSS. Новые версии CSS3 вредны, т.к. содержат много излишеств и не способствуют анонимности (font-face и прочие навороты).

В то время как всё прогрессивное человество (с Github) использует Jekyll, и для страниц сайтов, и для блогов.

Судя по описанию, нет возможности комментирования записей. Для блога это важно.
— unknown (10/07/2014 23:48)   
Локальные картинки, таблицы, локальное и ютубовское видео вставлять легко и просто, есть плагины для галерей. Можно сделать минималистично-хакерский сайт. А можно увешать скриптами и финтифлюшками и айфоновиджетами так, что инстаграммовские хипстеры истекут слюнками от зависти.

Кидаются в каталоге какие-то файлы с примитивной разметкой, ненамного сложнее, чем wiki-документы на этом сайте. Jekyll сам их рассортировыывает по датам, подшивает в блог, проставляет ссылки по тэгам. Всё делается оффлайново, со своего компа закачивается на сервак, держать на самом серваке запущенный работающий Jekyll не надо. Поэтому страницы принципиально статические. Комментов из-за этого не будет — придёться вешать disqus. Но это сторонний сервис (онионы сразу в пролёте), требующий PHP и регулярно имеющий дырки.

Есть ещё octopress, есть аналогичные движки для статических сайтов без блогов (webgen), тысячи их.
Гость (11/07/2014 00:44)   

Спасибо, буду смотреть.

Disqus отстой, я его, благодаря request policy, не вижу... но он единственный, который позволяет reply by email. То есть тем, у кого есть мейл, его и не придется смотреть, что и требовалось.
Гость (11/07/2014 01:00)   
Все минималистично-хакерские блоги нужно писать самим на Python или PHP, без JS, работа эта будет стоить не более 5000р у любого фрилансера. Будет Вам и админка своя, и зеркала+кросспостинг в i2p\Tor\Freenet, подпись постов GPG, бекап на разные серверы и прочие плюшки. Готовые решения – костыли. Хостинг на Github могут прикрыть в два счета. А движки готовые для этого дела появятся, сейчас будут набирать популярность подобного рода проекты.
Гость (12/07/2014 02:00)   

Прекрасная вещь, и идеологически то, что нужно. Еще бы к ней клиент графический, цены бы не было. Без него ею пользоваться — фактически отдельная задача, требующая дополнительной головы. Когда только одна, и чем-то занята... (А еще представьте ее в энтерпрайз-среде: и садистскую просьбу к секретарше запостить новость о мероприятии. :)

Трогательный рассказ[link29] Тома Престона-Вернера про причину создания: I was tired of complicated blogging engines like WordPress and Mephisto. Решил, короче, сделать что-то простое. Для людей.
— unknown (12/07/2014 21:24, исправлен 12/07/2014 21:44)   
explore a variety of posts all from the comfort of my preferred editor and the command line.

Что может быть комфортнее и человечнее командной строки любимого дистрибутива юникс-подобной операционки? :)



Так же как и GitHub.


Теоретическую физику он не осилил забросил[link30] из-за нелюбви к математическим абстракциям и подался в программерство:


As an aspiring theoretical particle physicist, I worked my way through entire shelves of scientific literature from the public library, desperately wanting to understand the bewildering mathematics

In order to properly understand particle physics, you must have a deep and profound love of math. You have to be so comfortable with abstract concepts that even Picasso would be jealous. Ironically, in order to grasp the fundamental reality of our universe, you must forget about the "reality" of everyday life and start living in a world comprised of eigenvectors, Hilbert spaces, and Planck's constant. This was a leap I could not make. I like math, but I'm too easily distracted by macroscopic reality to make it my profession.
Гость (13/07/2014 05:22)   

Почти не сомневаюсь, что когда вам приходится отправлять .doc, вы сначала пишете xml, затем сжимаете в .odt, и только потом, в опен-либрофисе, брезгливо конвертируете в искомое :). Но люди в массе предпочитают экономить усилия, не столько из рац. невежества, сколько из cost-effectiveness analysis.

У Брайана Грина в The Elegant Universe есть описание совместной работы теорфизиков и математиков. Драматические фразы вроде "это какая-то для нас черная магия". Эйнштейн как-то обмолвился, что был не очень в курсе работ по теме, что, возможно, помогло ему сделать первое исследование. Потому что когда накапливается большое количество материала, его нужно сначала представить в общей картине, а потом уже (математически) эту картину обосновать. Так что эту фразу про distracted by macroscopic reality можно перевернуть. Количество измерений в теории струн, суперструн, М-теории и т.д. растет, а общей картины нет, и не покидает ощущение, что она уже сейчас возможна (не хватает, как всегда, пустяка: Эйнштейна, который не очень в теме :).
Гость (13/07/2014 09:09)   
Все верно сказанно. Есть масса линуксоидов, которым не нужно красноглазить. Они простые пользователи Линукс, чувствуют в нем себя комфортно и безопасно. И по винндовой старой привычке – при малейших косяках переустанавливают систему, а в консоли знают только ls и то не понимают для чего она
Гость (13/07/2014 21:28)   

Что же нужно с линуксом сделать, чтоб пришлось перезагружать переустанавливать :).

L'apprentissage du « code informatique » sera proposé à l'école primaire dès septembre[link31]
Деток будут в начальной школе программированию учить. Друзья рассказывали, что навыки программирования — необходимое условия для поствузовских программ ФРГ, связанных с инф. технологиями (уметь должны в том числе журналисты). Почему? Чтобы написать необходимый модуль к CMS, например.
Гость (14/07/2014 00:03)   

Спуржить весь гуй. Есть системы на базе линукс где снос пакета не требует консоли и точного названия, снести легко, а вот вернуть потом из консоли, которую видел 1 раз до того, не легко.
Гость (14/07/2014 13:57)   
И css тоже
Стили можно оставить, от них есть польза, а возможный вред минимален по сравнению со скриптами

Поправка – имел в виду базовую версию CSS. Новые версии CSS3 вредны, т.к. содержат много излишеств и не способствуют анонимности (font-face и прочие навороты).

Да зачем они нужны? Профилировать пользователей? (хотя бы по включенному css)

Стили должны располагаться в самом html документе, с помощью тега "style" или без него, и всегда подгружаться вместе с документом. И чтобы не было помойки, желательно иметь стили, приведенные транслятором к каноническому виду. Эквивалентные по стилям html должны одинаково отображаться в каждом "стандартном" просмотрщике при любых размерах окна, разрешение экрана и пр., а все нестандартные просмотрщики идут в печь в лес. Вообще, весь html код должен приводиться к эквивалентному каноническому виду, включая форматирование, причем за время линейно растущее от размера документа.
— SATtva (14/07/2014 14:14)   
Стили должны располагаться в самом html документе, с помощью тега "style" или без него, и всегда подгружаться вместе с документом.

OMG. Картинки тоже в html встраивать?
Гость (14/07/2014 16:58)   
OMG. Картинки тоже в html встраивать?

Не, картинки много весят и это не кодовый объект, их проще отдельно.
А css файлы наоборот, только усложняют код.

Но картинки обычно итак загружаются, в крайнем случае, можно тянуть картинки на прокси-сервер, а дальше не качать. css имеет кучу подстроек под пользователя (стандартного пользователя нет), не грузить – тоже биты в профиль. Посему css суть диавол и его надобно изгонять всюду.
— SATtva (14/07/2014 17:54)   

Вы, очевидно, не верстали ничего сложнее, чем <html><body>Hello world!</body></html>. Инлайн-стили в html — примерно такой же идиотизм, как в программировании монолитный код и смешение логики и данных.


Например?


Грузите, но не применяйте, кто ж мешает. Про картинки я спросил по аналогии, между ними и css нет никаких различий. При этом картинки могут нести такие последствия[link32], какие не снились даже css3.
Гость (15/07/2014 01:44)   
Да зачем они нужны? Профилировать пользователей? (хотя бы по включенному css)

Стили позволяют создавать более чистый html-код. Например замена таблиц <table> блоками <div> делает вёрстку намного легче. Это конечно, если верстать вручную в текстовом редакторе, а не с помощью Dreamweaver или других генераторов html-кода. Кроме этого, правильная идея отделения дизайна тегов от структуры документа. Один бит в профиль – мелочь по сравнению с другими источниками[link33]. Баланс пользы и вреда на стороне CSS (речь опять только о базовой версии, не CSS3).

Стили должны располагаться в самом html документе, с помощью тега "style" или без него, и всегда подгружаться вместе с документом.

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

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

Бессмысленное требование с точки зрения безопасности и анонимности. Устанавливает новые ограничения без необходимости.
Гость (17/07/2014 08:09)   

Если физически сервер один, то да, он может отдавать контент одновременно в разные сети. Это как если у сайта есть два домена на одном IP. Другое дело — реально распределённая сеть для хранения данных, устойчивая к изъятию серверов (к слову, SATtva отказался такое реализовывать для pgpru.com; видимо, это сопряжено с большими сложностями).


Скрипты часто ставят на сайты с большим наплывом посетителей и DDoS-атаками для защиты от последних. JS позволяет легко фильтровать ряд DDoS'ов на веб-сервер (конечно, от DDoS'а на сам канал связи это не спасёт).


Семь бед — один ответ: виртуалки.


Не знаю, как в других браузерах, но в TBB GitHub выглядит отвратительно. В инете пошла новая мода: иконки, скруглённые картинки, кнопочки, много кнопочек, какие-то странные слишком крупные шрифты и много непродуманных элементов интерфейса. Наверно, сейчас все считают, что это выглядит модно и стильно. Сайт гитхаба, на мой взгляд, отвратителен.


Да, это всё так и есть. В пределе получается Перельман. Даже среди учащихся старших курсов это становится хорошо заметно: люди перестают следить за собой, вовремя мыться, одеваются, как бомжи, теряют интерес к чему-либо в реальной жизни. Они целиком и полностью погружаются в мир виртуальной реальности, где любое достижение в последнем, даже самое посредственное — уже что-то, а любой успех в «реальной жизни» — ничто. Такое же поведение прослеживается у гамеров/геймеров, у страдающих зависимостью от соцсетей, от наркотиков, алкоголя и пр.


Рабское сознание требует царя. Царь в науке — это эдакий сверхгений, который управляет миром. Тысячи людей не смогли догадаться, а он взял и догадался. История говорит о другом: одни и те же идеи появляются примерно в одинаковое время у разных людей. Если сообщество дозрело, оно сделает соответствующий шаг вперёд безотносительно того, будет там присутствовать один лишний «гений» или нет.
— unknown (17/07/2014 10:45, исправлен 17/07/2014 10:52)   

Найдите простую Jekyll-тему[link40]. Там можно на уровне HTML "Hello World" и свою тему с нуля создать (есть примеры[link41]), если не найти подходящей готовой или никак не доработать напильником те, что есть[link42].

— SATtva (17/07/2014 10:59)   

Где-то на странице движка[link43] это обсуждалось. Главная сложность — доверие к узлам (их операторам), что они не станут искажать содержимое сайта, и у меня нет понимания, как в парадигме обычного веб-сайта (без надстроек в виде специального расширения на уровне браузера), пусть и распределённого, обойти это ограничение. С ним в модели угрозы возникает огромная дыра, не защищаться ведь только от изъятия сервера / отключения хостинга: взятие сервера/оператора под контроль (искажать данные может даже хостер) — атака примерно того же порядка.

От идеи зеркалирования я не отказываюсь (с возможностью раскрытия всей БД без существенной утечки данных), но точкой ввода данных может оставаться только один сайт.
Гость (17/07/2014 11:24)   

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


Раз большинство пишет через Tor, а читающее большинство пользуется сайтом не через Tor, можно сделать запись только через соответствующий onion-домен, а чтение — в том числе, через обычный домен в сети. ☺
Гость (17/07/2014 12:50)   
JS позволяет легко фильтровать ряд DDoS'ов на веб-сервер (конечно, от DDoS'а на сам канал связи это не спасёт).

Не могли бы привести пример, когда javascript защищает от ддоса? Ещё лучше если это будет единственно возможным способом.
— SATtva (17/07/2014 13:03)   

Использование JS и cookies — обычные механизмы для отсечения паразитных клиентов, если атака ведётся на ресурсозатратную логику приложения. Как правило, DoS-боты не умеют обрабатывать JS и куки, что позволяет отличить их от полновесных браузерных клиентов.
Гость (17/07/2014 13:41)   
Выключены скрипты – значит бот, так что-ли? Выходит что вся "защита" основана на наивном предположении что боты не понимают скрипты. Кстати wget понимает куки (хотя речь не о них), а httrack умеет обращаться со скриптами. Всё же хотелось бы знать, какая ресурсозатная логика имеется в виду. Стандартный случай – сценарии на php/perl/python генерят html-страницы для Apache, возможно с использованием базы данных mysql. Каким образом javascript помогает пресекать атаки на ресурсы – не понятно.
— SATtva (17/07/2014 14:38)   

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


Не способен обрабатывать JS → ты бот → не получаешь никакого динамического контента: тебе могут отдать заглушку (если сайт находится под атакой) или редко обновляемую статическую копию страницы из кэша.
Гость (17/07/2014 21:56)   
Получается что сам яваскрипт не защищает от доса. Сайт даёт говнеца в виде js, и если браузер не хочет его есть, значит он – бот. Гениально. При том, что есть стандартные средства защиты типа modsecurity.
— SATtva (18/07/2014 11:37, исправлен 18/07/2014 11:38)   

Никто не утверждал об обратном.



Кому что кажется проще.

— unknown (15/08/2014 14:30, исправлен 15/08/2014 14:37)   
В[link44] то время как всё прогрессивное человество (с Github) использует Jekyll, и для страниц сайтов, и для блогов.

Кому ещё нужен свой бложик с коментами и статическими страницами?


Haggis: A static site generator with blogging/comments support[link45]:


Haggis is a static site generator, written in Haskell. It allows you to write your blog posts in any format that pandoc supports, using your chosen directory structure and file names as the site's url structure.

To post comments, the templates of your pages should have an html form in them that posts to some kind of script which inserts posts into the database haggis points at. Optionally, this script could re-generate the entire site after each user post, or you could schedule this via a cron job.
Гость (15/08/2014 19:53)   

Почему-то я не удивлён...

Ссылки
[link1] http://roundcube.net/

[link2] https://github.com/qnrq/rc_openpgpjs/

[link3] http://seafile.com/

[link4] https://conversejs.org/

[link5] https://project.jappix.com/

[link6] https://www.cozycloud.cc/

[link7] http://pyd.io/

[link8] http://webodf.org/

[link9] http://tor2web.org/

[link10] https://img.bi/

[link11] http://www.iredmail.org/

[link12] http://www.horde.org/

[link13] http://lists.horde.org/archives/imp/Week-of-Mon-20080211/048531.html

[link14] http://lists.horde.org/archives/bugs/Week-of-Mon-20140106/071982.html

[link15] https://en.wikipedia.org/wiki/Ghost_(blogging_platform)

[link16] https://en.wikipedia.org/wiki/Node.js

[link17] http://openpgpjs.org/

[link18] http://get-simple.info/

[link19] http://www.narga.net/simple-light-weight-cms-solutions-wordpress-alternative/

[link20] http://webdesignledger.com/tools/10-simple-and-light-weight-cms-solutions

[link21] http://www.tinymce.com

[link22] http://www.webdesignerhub.com/ghost-can-compete-wordpress/

[link23] https://www.pgpru.com/comment81188

[link24] https://www.pgpru.com/comment81172

[link25] https://wordpress.org/plugins/wp-super-cache/

[link26] https://wordpress.org/plugins/w3-total-cache/

[link27] http://jekyllrb.com/

[link28] http://prose.io/

[link29] http://tom.preston-werner.com/2008/11/17/blogging-like-a-hacker.html

[link30] http://tom.preston-werner.com/2011/05/03/rejected-bio-from-the-setup.html

[link31] http://www.lemonde.fr/societe/article/2014/07/13/l-apprentissage-du-code-informatique-sera-propose-au-primaire-en-septembre_4456197_3224.html

[link32] https://www.pgpru.com/comment81060

[link33] https://panopticlick.eff.org/

[link34] https://www.pgpru.com/comment81183

[link35] https://www.pgpru.com/comment81186

[link36] https://www.pgpru.com/comment81190

[link37] https://www.pgpru.com/comment81212

[link38] https://www.pgpru.com/comment81256

[link39] https://www.pgpru.com/comment81261

[link40] http://vinitkumar.me/Simple/articles/

[link41] http://jekyllbootstrap.com/api/theme-api.html

[link42] http://themes.jekyllbootstrap.com/preview/the-minimum/

[link43] https://www.pgpru.com/razrabotki/dvizhok

[link44] https://www.pgpru.com/comment81231

[link45] https://github.com/tych0/haggis