* [mdk-re] LRN & database.inc @ 2001-05-16 12:56 Vyt 2001-05-23 3:27 ` Anton Farygin 0 siblings, 1 reply; 15+ messages in thread From: Vyt @ 2001-05-16 12:56 UTC (permalink / raw) To: Mandrake-Russian Hello, All Обнаружилось, что /var/www/html/LRN/database.inc имеет права -rw-r--r-- 1 root root 2228 Май 16 12:57 database.inc ^ А ведь там пароль для доступа к базе данных. Или это у меня что-то сглючило? -- Regards, Vyt mailto:vyt@vzljot.ru ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [mdk-re] LRN & database.inc 2001-05-16 12:56 [mdk-re] LRN & database.inc Vyt @ 2001-05-23 3:27 ` Anton Farygin 2001-05-23 11:42 ` Mikhail Zabaluev 0 siblings, 1 reply; 15+ messages in thread From: Anton Farygin @ 2001-05-23 3:27 UTC (permalink / raw) To: mandrake-russian Vyt wrote: > Hello, All > > Обнаружилось, что /var/www/html/LRN/database.inc имеет права > -rw-r--r-- 1 root root 2228 Май 16 12:57 database.inc > ^ > А ведь там пароль для доступа к базе данных. Или это у меня что-то > сглючило? Нет не сглючило. На мой взгляд бесмысленно закрывать файл с паролем, который может прочитать любой пользователь, положивший небольшой PHP скриптик к себе в ~/public_html/ ;-( А те, кто действительно хочет закрыть - закроют его правами. Но все равно он должен читаться для пользователя apache, что означает его возможное открытие любым пользователм, который имеет права и умение писать скрипты для своей странички. Rgds Rider ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [mdk-re] LRN & database.inc 2001-05-23 3:27 ` Anton Farygin @ 2001-05-23 11:42 ` Mikhail Zabaluev 2001-05-23 12:37 ` Vyt ` (2 more replies) 0 siblings, 3 replies; 15+ messages in thread From: Mikhail Zabaluev @ 2001-05-23 11:42 UTC (permalink / raw) To: mandrake-russian Hello Anton, On Wed, May 23, 2001 at 03:32:09AM +0400, Anton Farygin wrote: > > Vyt wrote: > > > Hello, All > > > > Обнаружилось, что /var/www/html/LRN/database.inc имеет права > > -rw-r--r-- 1 root root 2228 Май 16 12:57 database.inc > > ^ > > А ведь там пароль для доступа к базе данных. Или это у меня что-то > > сглючило? > > Нет не сглючило. > На мой взгляд бесмысленно закрывать файл с паролем, который может > прочитать любой пользователь, положивший небольшой PHP скриптик к себе в > ~/public_html/ ;-( > > А те, кто действительно хочет закрыть - закроют его правами. Но все > равно он должен читаться для пользователя apache, что означает его > возможное открытие любым пользователм, который имеет права и умение > писать скрипты для своей странички. Можно и, наверное, даже нужно задать для PHP параметр open_basedir, где перечислить безопасный набор каталогов, в которых скрипты могут открывать файлы. Это, насколько я знаю, влияет и на require/include, и на exec и пр. Указание "." будет открывать для каждого скрипта его каталог. А в отдельных сайтах open_basedir можно расширять по вкусу. Пользовательские CGI _нужно_ запускать через suexec. Так что проблема решаема хотя бы теоретически. -- Stay tuned, MhZ JID: mookid@jabber.org ___________ If this is a service economy, why is the service so bad? ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [mdk-re] LRN & database.inc 2001-05-23 11:42 ` Mikhail Zabaluev @ 2001-05-23 12:37 ` Vyt 2001-05-24 10:50 ` Anton Farygin 2001-05-23 14:32 ` Vlad Vostrykh 2 siblings, 1 reply; 15+ messages in thread From: Vyt @ 2001-05-23 12:37 UTC (permalink / raw) To: mandrake-russian On Wed, 23 May 2001 11:57:55 +0400 Mikhail Zabaluev <mhz@alt-linux.org> wrote: <skipped> > > > Обнаружилось, что /var/www/html/LRN/database.inc имеет права > > > -rw-r--r-- 1 root root 2228 Май 16 12:57 database.inc > > > ^ > > > А ведь там пароль для доступа к базе данных. Или это у меня что-то > > > сглючило? > > > > Нет не сглючило. > > На мой взгляд бесмысленно закрывать файл с паролем, который может > > прочитать любой пользователь, положивший небольшой PHP скриптик к себе в > > ~/public_html/ ;-( > > > > А те, кто действительно хочет закрыть - закроют его правами. Но все > > равно он должен читаться для пользователя apache, что означает его > > возможное открытие любым пользователм, который имеет права и умение > > писать скрипты для своей странички. > > Можно и, наверное, даже нужно задать для PHP параметр open_basedir, > где перечислить безопасный набор каталогов, в которых скрипты могут > открывать файлы. Это, насколько я знаю, влияет и на require/include, и > на exec и пр. Указание "." будет открывать для каждого скрипта его > каталог. А в отдельных сайтах open_basedir можно расширять по вкусу. > Пользовательские CGI _нужно_ запускать через suexec. > Так что проблема решаема хотя бы теоретически. Спасибо всем отреагировавшим :) Я имел в виду возможность локальному пользователю узнать пароль. <skipped> -- Regards, Vyt mailto:vyt@vzljot.ru ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [mdk-re] LRN & database.inc 2001-05-23 12:37 ` Vyt @ 2001-05-24 10:50 ` Anton Farygin 2001-05-24 11:16 ` Vyt 0 siblings, 1 reply; 15+ messages in thread From: Anton Farygin @ 2001-05-24 10:50 UTC (permalink / raw) To: mandrake-russian Vyt wrote: > On Wed, 23 May 2001 11:57:55 +0400 > Mikhail Zabaluev <mhz@alt-linux.org> wrote: > > <skipped> > >>>>Обнаружилось, что /var/www/html/LRN/database.inc имеет права >>>>-rw-r--r-- 1 root root 2228 Май 16 12:57 database.inc >>>> ^ >>>>А ведь там пароль для доступа к базе данных. Или это у меня что-то >>>>сглючило? >>>> >>>Нет не сглючило. >>>На мой взгляд бесмысленно закрывать файл с паролем, который может >>>прочитать любой пользователь, положивший небольшой PHP скриптик к себе >>> > в > >>>~/public_html/ ;-( >>> >>>А те, кто действительно хочет закрыть - закроют его правами. Но все >>>равно он должен читаться для пользователя apache, что означает его >>>возможное открытие любым пользователм, который имеет права и умение >>>писать скрипты для своей странички. >>> >>Можно и, наверное, даже нужно задать для PHP параметр open_basedir, >>где перечислить безопасный набор каталогов, в которых скрипты могут >>открывать файлы. Это, насколько я знаю, влияет и на require/include, и >>на exec и пр. Указание "." будет открывать для каждого скрипта его >>каталог. А в отдельных сайтах open_basedir можно расширять по вкусу. >>Пользовательские CGI _нужно_ запускать через suexec. >>Так что проблема решаема хотя бы теоретически. >> > > Спасибо всем отреагировавшим :) Я имел в виду возможность локальному > пользователю узнать пароль. Речь и идет об локальных пользователях. Об тех, кто может писать скрипты на локальном хосте для WEB. А совсем тупо можно в принципе сделать владельца database.inc apache и убрать права на чтение для остальных. Rgds Rider ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [mdk-re] LRN & database.inc 2001-05-24 10:50 ` Anton Farygin @ 2001-05-24 11:16 ` Vyt 2001-05-24 12:33 ` Mikhail Zabaluev 2001-05-25 16:03 ` Anton Farygin 0 siblings, 2 replies; 15+ messages in thread From: Vyt @ 2001-05-24 11:16 UTC (permalink / raw) To: mandrake-russian On Thu, 24 May 2001 10:56:01 +0400 Anton Farygin <rider@altlinux.ru> wrote: > А совсем тупо можно в принципе сделать владельца database.inc apache и > убрать права на чтение для остальных. А чем это тупо? -- Regards, Vyt mailto:vyt@vzljot.ru ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [mdk-re] LRN & database.inc 2001-05-24 11:16 ` Vyt @ 2001-05-24 12:33 ` Mikhail Zabaluev 2001-05-25 16:03 ` Anton Farygin 1 sibling, 0 replies; 15+ messages in thread From: Mikhail Zabaluev @ 2001-05-24 12:33 UTC (permalink / raw) To: mandrake-russian Hello Vyt, On Thu, May 24, 2001 at 11:12:32AM +0400, Vyt wrote: > > On Thu, 24 May 2001 10:56:01 +0400 > Anton Farygin <rider@altlinux.ru> wrote: > > > А совсем тупо можно в принципе сделать владельца database.inc apache и > > убрать права на чтение для остальных. > > А чем это тупо? Тем, что всякий, кто может редактировать PHP-скрипты, исполняемые Apache, все равно сможет прочитать этот файл. -- Stay tuned, MhZ JID: mookid@jabber.org ___________ I don't understand the HUMOUR of the THREE STOOGES!! ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [mdk-re] LRN & database.inc 2001-05-24 11:16 ` Vyt 2001-05-24 12:33 ` Mikhail Zabaluev @ 2001-05-25 16:03 ` Anton Farygin 1 sibling, 0 replies; 15+ messages in thread From: Anton Farygin @ 2001-05-25 16:03 UTC (permalink / raw) To: mandrake-russian Vyt wrote: > On Thu, 24 May 2001 10:56:01 +0400 > Anton Farygin <rider@altlinux.ru> wrote: > > >>А совсем тупо можно в принципе сделать владельца database.inc apache и >>убрать права на чтение для остальных. >> > > А чем это тупо? тупо тем, что по прежнему остается возможность читать этот файл другим скриптам. Rgds Rider ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [mdk-re] LRN & database.inc 2001-05-23 11:42 ` Mikhail Zabaluev 2001-05-23 12:37 ` Vyt @ 2001-05-23 14:32 ` Vlad Vostrykh 2001-05-23 23:38 ` Mikhail Zabaluev 2001-05-24 10:52 ` Anton Farygin 2 siblings, 2 replies; 15+ messages in thread From: Vlad Vostrykh @ 2001-05-23 14:32 UTC (permalink / raw) To: mandrake-russian ----- Original Message ----- From: "Mikhail Zabaluev" <mhz@alt-linux.org> To: <mandrake-russian@altlinux.ru> Sent: Wednesday, May 23, 2001 9:57 AM Subject: Re: [mdk-re] LRN & database.inc > Hello Anton, > > On Wed, May 23, 2001 at 03:32:09AM +0400, Anton Farygin wrote: > > > > Vyt wrote: > > > > > Hello, All > > > > > > Обнаружилось, что /var/www/html/LRN/database.inc имеет права > > > -rw-r--r-- 1 root root 2228 Май 16 12:57 database.inc > > > ^ > > > А ведь там пароль для доступа к базе данных. Или это у меня что-то > > > сглючило? > > > > Нет не сглючило. > > На мой взгляд бесмысленно закрывать файл с паролем, который может > > прочитать любой пользователь, положивший небольшой PHP скриптик к себе в > > ~/public_html/ ;-( > > > > А те, кто действительно хочет закрыть - закроют его правами. Но все > > равно он должен читаться для пользователя apache, что означает его > > возможное открытие любым пользователм, который имеет права и умение > > писать скрипты для своей странички. > > Можно и, наверное, даже нужно задать для PHP параметр open_basedir, > где перечислить безопасный набор каталогов, в которых скрипты могут > открывать файлы. Это, насколько я знаю, влияет и на require/include, и > на exec и пр. Указание "." будет открывать для каждого скрипта его > каталог. А в отдельных сайтах open_basedir можно расширять по вкусу. Интересное решение :) Но при этом люди не смогут свои параметры для PHP задавать, что иногда бывает необходимо. (А если смогут, то кто им помешает open_basedir прописать до вашего файла с паролями? :)) В общем, аккуратно надо :) Для случая с пользовательскими каталогами (http://server/~username) стоит также посмотреть на параметр user_dir > Пользовательские CGI _нужно_ запускать через suexec. > Так что проблема решаема хотя бы теоретически. _Теоретически_ проблема решается, насколько я понимаю, с приходом Apache 2 А практически (как вариант) -- запуском для каждого сервера своей копии апача с отдельным User userId (необходимо, конечно, по отдельному ip и/или порту для сайта) WBR, Vlad Vostrykh ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [mdk-re] LRN & database.inc 2001-05-23 14:32 ` Vlad Vostrykh @ 2001-05-23 23:38 ` Mikhail Zabaluev 2001-05-24 10:52 ` Anton Farygin 1 sibling, 0 replies; 15+ messages in thread From: Mikhail Zabaluev @ 2001-05-23 23:38 UTC (permalink / raw) To: mandrake-russian Hello Vlad, On Wed, May 23, 2001 at 12:37:47PM +0200, Vlad Vostrykh wrote: > > > Можно и, наверное, даже нужно задать для PHP параметр open_basedir, > > где перечислить безопасный набор каталогов, в которых скрипты могут > > открывать файлы. Это, насколько я знаю, влияет и на require/include, и > > на exec и пр. Указание "." будет открывать для каждого скрипта его > > каталог. А в отдельных сайтах open_basedir можно расширять по вкусу. > Интересное решение :) > Но при этом люди не смогут свои параметры для PHP задавать, что иногда > бывает необходимо. > (А если смогут, то кто им помешает open_basedir прописать до вашего файла с > паролями? :)) > В общем, аккуратно надо :) Угу. Options None. Все пожелания пользователей - через администратора и с приложенным пивом :) Иначе - анархия и вседозволенность. > Для случая с пользовательскими каталогами (http://server/~username) стоит > также посмотреть на параметр user_dir > > > Пользовательские CGI _нужно_ запускать через suexec. > > Так что проблема решаема хотя бы теоретически. > _Теоретически_ проблема решается, насколько я понимаю, с приходом Apache 2 > А практически (как вариант) -- запуском для каждого сервера своей копии > апача с отдельным User userId (необходимо, конечно, по отдельному ip и/или > порту для сайта) Тоже вариант. Так и до colocation недалеко. -- Stay tuned, MhZ JID: mookid@jabber.org ___________ There's always free cheese in a mousetrap. ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [mdk-re] LRN & database.inc 2001-05-23 14:32 ` Vlad Vostrykh 2001-05-23 23:38 ` Mikhail Zabaluev @ 2001-05-24 10:52 ` Anton Farygin 2001-05-24 12:32 ` Mikhail Zabaluev 1 sibling, 1 reply; 15+ messages in thread From: Anton Farygin @ 2001-05-24 10:52 UTC (permalink / raw) To: mandrake-russian Vlad Vostrykh wrote: > ----- Original Message ----- > From: "Mikhail Zabaluev" <mhz@alt-linux.org> > To: <mandrake-russian@altlinux.ru> > Sent: Wednesday, May 23, 2001 9:57 AM > Subject: Re: [mdk-re] LRN & database.inc > > > >>Hello Anton, >> >>On Wed, May 23, 2001 at 03:32:09AM +0400, Anton Farygin wrote: >> >>>Vyt wrote: >>> >>> >>>>Hello, All >>>> >>>>Обнаружилось, что /var/www/html/LRN/database.inc имеет права >>>>-rw-r--r-- 1 root root 2228 Май 16 12:57 database.inc >>>> ^ >>>>А ведь там пароль для доступа к базе данных. Или это у меня что-то >>>>сглючило? >>>> >>>Нет не сглючило. >>>На мой взгляд бесмысленно закрывать файл с паролем, который может >>>прочитать любой пользователь, положивший небольшой PHP скриптик к себе в >>>~/public_html/ ;-( >>> >>>А те, кто действительно хочет закрыть - закроют его правами. Но все >>>равно он должен читаться для пользователя apache, что означает его >>>возможное открытие любым пользователм, который имеет права и умение >>>писать скрипты для своей странички. >>> >>Можно и, наверное, даже нужно задать для PHP параметр open_basedir, >>где перечислить безопасный набор каталогов, в которых скрипты могут >>открывать файлы. Это, насколько я знаю, влияет и на require/include, и >>на exec и пр. Указание "." будет открывать для каждого скрипта его >>каталог. А в отдельных сайтах open_basedir можно расширять по вкусу. >> > Интересное решение :) > Но при этом люди не смогут свои параметры для PHP задавать, что иногда > бывает необходимо. > (А если смогут, то кто им помешает open_basedir прописать до вашего файла с > паролями? :)) > В общем, аккуратно надо :) > Для случая с пользовательскими каталогами (http://server/~username) стоит > также посмотреть на параметр user_dir > > >>Пользовательские CGI _нужно_ запускать через suexec. >>Так что проблема решаема хотя бы теоретически. >> > _Теоретически_ проблема решается, насколько я понимаю, с приходом Apache 2 > А практически (как вариант) -- запуском для каждого сервера своей копии > апача с отдельным User userId (необходимо, конечно, по отдельному ip и/или > порту для сайта) Лучше всего - user-mode Linux тогда поставить. ;-) И проблем не будет даже в теории. Rgds Rider ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [mdk-re] LRN & database.inc 2001-05-24 10:52 ` Anton Farygin @ 2001-05-24 12:32 ` Mikhail Zabaluev 2001-05-25 16:02 ` Anton Farygin 0 siblings, 1 reply; 15+ messages in thread From: Mikhail Zabaluev @ 2001-05-24 12:32 UTC (permalink / raw) To: mandrake-russian Hello Anton, On Thu, May 24, 2001 at 10:57:04AM +0400, Anton Farygin wrote: > > > _Теоретически_ проблема решается, насколько я понимаю, с приходом Apache 2 > > А практически (как вариант) -- запуском для каждого сервера своей копии > > апача с отдельным User userId (необходимо, конечно, по отдельному ip и/или > > порту для сайта) > > > Лучше всего - user-mode Linux тогда поставить. ;-) > > И проблем не будет даже в теории. Зато будут проблемы в производительности? -- Stay tuned, MhZ JID: mookid@jabber.org ___________ The longest part of the journey is said to be the passing of the gate. -- Marcus Terentius Varro ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [mdk-re] LRN & database.inc 2001-05-24 12:32 ` Mikhail Zabaluev @ 2001-05-25 16:02 ` Anton Farygin 0 siblings, 0 replies; 15+ messages in thread From: Anton Farygin @ 2001-05-25 16:02 UTC (permalink / raw) To: mandrake-russian Mikhail Zabaluev wrote: > Hello Anton, > > On Thu, May 24, 2001 at 10:57:04AM +0400, Anton Farygin wrote: > >>>_Теоретически_ проблема решается, насколько я понимаю, с приходом Apache 2 >>>А практически (как вариант) -- запуском для каждого сервера своей копии >>>апача с отдельным User userId (необходимо, конечно, по отдельному ip и/или >>>порту для сайта) >>> >> >>Лучше всего - user-mode Linux тогда поставить. ;-) >> >>И проблем не будет даже в теории. >> > > Зато будут проблемы в производительности? Какие например? Я не думаю, что будут проблемы с производительностью. Rgds Rider ^ permalink raw reply [flat|nested] 15+ messages in thread
[parent not found: <3B0CB024.6070809@altlinux.ru>]
* Re: [mdk-re] LRN & database.inc @ 2001-05-24 12:29 ` Mikhail Zabaluev 2001-05-25 16:04 ` Anton Farygin 0 siblings, 1 reply; 15+ messages in thread From: Mikhail Zabaluev @ 2001-05-24 12:29 UTC (permalink / raw) To: mandrake-russian Hello Anton, On Thu, May 24, 2001 at 10:54:28AM +0400, Anton Farygin wrote: > > Понятно. > Итак, посмотрим - что же для меня нужно: > 1. Включать библиотеки LRN, которые в данный момент лежат в составе > сайта, но есть мысль вынести их за его пределы. > 2. Включать database.inc, в котором будут настройки сайтов и пароли > доступа к базам. > 3. Читать/писать в /tmp > 4. Читать .theme файлы, которые в принципе могут лежать в любом месте > системы, в том числе и в пользовательских каталогах (форум на > gimp.linux.ru.net так и реализован). Если .theme лежит в том же каталоге, что и вызывающий ее скрипт - нет проблем, включаешь '.' в перечисление open_basedir. > И еще - а как в таком случае обстоят дела с запуском внешних программ? > Например тип файла я определяю с помощью системной утилиты file, которая > обращается к /etc/mime-magic и /usr/share/mime ??? Вот тут бы не помешал exec-wrapper, который бы менял UID. Потому что иначе можно с помощью cat прочитать все, что мы пытаемся защитить. -- Stay tuned, MhZ JID: mookid@jabber.org ___________ The truth about a man lies first and foremost in what he hides. -- Andre Malraux ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [mdk-re] LRN & database.inc 2001-05-24 12:29 ` Mikhail Zabaluev @ 2001-05-25 16:04 ` Anton Farygin 0 siblings, 0 replies; 15+ messages in thread From: Anton Farygin @ 2001-05-25 16:04 UTC (permalink / raw) To: mandrake-russian Mikhail Zabaluev wrote: > Hello Anton, > > On Thu, May 24, 2001 at 10:54:28AM +0400, Anton Farygin wrote: > >>Понятно. >>Итак, посмотрим - что же для меня нужно: >>1. Включать библиотеки LRN, которые в данный момент лежат в составе >>сайта, но есть мысль вынести их за его пределы. >>2. Включать database.inc, в котором будут настройки сайтов и пароли >>доступа к базам. >>3. Читать/писать в /tmp >>4. Читать .theme файлы, которые в принципе могут лежать в любом месте >>системы, в том числе и в пользовательских каталогах (форум на >>gimp.linux.ru.net так и реализован). >> > > Если .theme лежит в том же каталоге, что и вызывающий ее скрипт - нет > проблем, включаешь '.' в перечисление open_basedir. В том то и весь вопрос - они могут лежать где угодно. Это конечно можно разрешить организвационными мерами, но не так просто ;( > > >>И еще - а как в таком случае обстоят дела с запуском внешних программ? >>Например тип файла я определяю с помощью системной утилиты file, которая >>обращается к /etc/mime-magic и /usr/share/mime ??? >> > > Вот тут бы не помешал exec-wrapper, который бы менял UID. Потому что > иначе можно с помощью cat прочитать все, что мы пытаемся защитить. Да. именно так. Rgds Rider ^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2001-05-25 16:04 UTC | newest] Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2001-05-16 12:56 [mdk-re] LRN & database.inc Vyt 2001-05-23 3:27 ` Anton Farygin 2001-05-23 11:42 ` Mikhail Zabaluev 2001-05-23 12:37 ` Vyt 2001-05-24 10:50 ` Anton Farygin 2001-05-24 11:16 ` Vyt 2001-05-24 12:33 ` Mikhail Zabaluev 2001-05-25 16:03 ` Anton Farygin 2001-05-23 14:32 ` Vlad Vostrykh 2001-05-23 23:38 ` Mikhail Zabaluev 2001-05-24 10:52 ` Anton Farygin 2001-05-24 12:32 ` Mikhail Zabaluev 2001-05-25 16:02 ` Anton Farygin 2001-05-24 12:29 ` Mikhail Zabaluev 2001-05-25 16:04 ` Anton Farygin
ALT Linux Community general discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 community community/ http://lore.altlinux.org/community \ mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com public-inbox-index community Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.community AGPL code for this site: git clone https://public-inbox.org/public-inbox.git