ALT Linux Community general discussions
 help / color / mirror / Atom feed
* [Comm] postgresql-perl/python using
@ 2005-11-27 16:31 Eugene Prokopiev
  2005-11-28  5:44 ` Alexey V. Novikov
  2005-11-28  8:32 ` Alex Gorbachenko
  0 siblings, 2 replies; 11+ messages in thread
From: Eugene Prokopiev @ 2005-11-27 16:31 UTC (permalink / raw)
  To: ALT Linux Community

Здравствуйте!

А в ALM 2.4 postgresql-perl рабочий?

Вот что у меня получилось:

$ createdb -U postgres test
CREATE DATABASE
$ createlang -U postgres plperl test
$ psql -U postgres test
test=# create or replace function test_2(varchar) returns varchar as '
test'# return $_[0];
test'# ' language plperl;
CREATE FUNCTION
test=# select test_2('1');
сервер неожиданно прервал соединение
         Скорее всего это означает что сервер завершил работу со сбоем
         до или в течение обслуживания запроса.
Подсоединение к серверу было потеряно. Попытка переустановить: Безуспешно.
!>

В postgresql8.1, пересобранного из Сизифа в окружении ALM 2.4 все еще 
хуже: сервер прерывает соединение при попытке создать функцию.

Дальше всего удается пройти при работе с pl/python :)

$ createlang -U postgres plpythonu test
$ psql -U postgres test
test=# create or replace function test(varchar) returns varchar as '
test'# return args[0]
test'# ' language plpythonu;
CREATE FUNCTION
test=# select test('test');
  test
------
  test
(1 запись)

test=# create or replace function get_header(varchar) returns varchar as '
test'# import email.Parser
test'# parser = email.Parser.Parser()
test'# message = parser.parse(args[0])
test'# return message.get("From")
test'# ' language plpythonu;
CREATE FUNCTION
test=# select get_header('');
ERROR:  plpython: function "get_header" failed
DETAIL:  exceptions.ImportError: No module named email.Parser

При том, что:

$ cat mail.py
import sys
import email.Parser
parser = email.Parser.Parser()
message = parser.parse(sys.stdin)
print message.get("From")
$ python mail.py < mbox
test@mydomain.com

Т.е. pl/python использовать не получается. А у кого-нибудь получалось?

-- 
С уважением, Прокопьев Евгений


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] postgresql-perl/python using
  2005-11-27 16:31 [Comm] postgresql-perl/python using Eugene Prokopiev
@ 2005-11-28  5:44 ` Alexey V. Novikov
  2005-11-28 17:53   ` Eugene Prokopiev
  2005-11-28  8:32 ` Alex Gorbachenko
  1 sibling, 1 reply; 11+ messages in thread
From: Alexey V. Novikov @ 2005-11-28  5:44 UTC (permalink / raw)
  To: ALT Linux Community

27.11.2005 19:31, Eugene Prokopiev пишет:
> Здравствуйте!
> 
> А в ALM 2.4 postgresql-perl рабочий?
<skip>
Postgres в alt работает в chroot. Проверьте, что все требуемое
копируется в него.

-- 
WBR, Alexey V. Novikov


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] postgresql-perl/python using
  2005-11-27 16:31 [Comm] postgresql-perl/python using Eugene Prokopiev
  2005-11-28  5:44 ` Alexey V. Novikov
@ 2005-11-28  8:32 ` Alex Gorbachenko
  2005-11-28 10:38   ` Eugene Prokopiev
  1 sibling, 1 reply; 11+ messages in thread
From: Alex Gorbachenko @ 2005-11-28  8:32 UTC (permalink / raw)
  To: community

[-- Attachment #1: Type: text/plain, Size: 258 bytes --]

On Sun, 27 Nov 2005 19:31:22 +0300
Eugene wrote:

EP>А в ALM 2.4 postgresql-perl рабочий?

если вы имеете желание использовать весь функционал postgresql, то его
(postgresql) нужно вынимать из chroot. иначе никак.

-- 
np: In Flames - Man Made God

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 190 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] postgresql-perl/python using
  2005-11-28  8:32 ` Alex Gorbachenko
@ 2005-11-28 10:38   ` Eugene Prokopiev
  2005-11-29  9:14     ` Alex Gorbachenko
  0 siblings, 1 reply; 11+ messages in thread
From: Eugene Prokopiev @ 2005-11-28 10:38 UTC (permalink / raw)
  To: ALT Linux Community

Alex Gorbachenko пишет:
> On Sun, 27 Nov 2005 19:31:22 +0300
> Eugene wrote:
> 
> EP>А в ALM 2.4 postgresql-perl рабочий?
> 
> если вы имеете желание использовать весь функционал postgresql, то его
> (postgresql) нужно вынимать из chroot. иначе никак.

а какой именно функционал требует вынимания?

я вот скопировал /usr/lib/python2.3 в чрут и соответствующая 
python-функция заработала.

-- 
С уважением, Прокопьев Евгений


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] postgresql-perl/python using
  2005-11-28  5:44 ` Alexey V. Novikov
@ 2005-11-28 17:53   ` Eugene Prokopiev
  2005-11-29  5:25     ` Alexey V. Novikov
  0 siblings, 1 reply; 11+ messages in thread
From: Eugene Prokopiev @ 2005-11-28 17:53 UTC (permalink / raw)
  To: ALT Linux Community

Alexey V. Novikov пишет:
> 27.11.2005 19:31, Eugene Prokopiev пишет:
> 
>> Здравствуйте!
>>
>> А в ALM 2.4 postgresql-perl рабочий?
> 
> <skip>
> Postgres в alt работает в chroot. Проверьте, что все требуемое
> копируется в него.

А как это правильно сделать?

Вот python работает, а после копирования /usr/lib/python2.3 в chroot 
работают вообще все необходимые мне модули. Тем не менее:

# ldd /var/lib/pgsql-root/usr/lib/pgsql/plpython.so
         libpython2.3.so.1.0 => /usr/lib/libpython2.3.so.1.0 (0x00129000)
         libpthread.so.0 => /lib/libpthread.so.0 (0x0020e000)
         libdl.so.2 => /lib/libdl.so.2 (0x00262000)
         libutil.so.1 => /lib/libutil.so.1 (0x00266000)
         libm.so.6 => /lib/libm.so.6 (0x0026a000)
         libc.so.6 => /lib/libc.so.6 (0x0028d000)
         /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)

Ничего из перечисленного в chroot нет:

# ls /var/lib/pgsql-root/usr/lib
locale  pgsql  python2.3

А perl не работает вообще никак, даже простейшие функции не создаются 
(ругательства я приводил). Разницы с python практически никакой:

# ldd /var/lib/pgsql-root/usr/lib/pgsql/plperl.so
         libperl.so.5.8 => /usr/lib/libperl.so.5.8 (0x0012d000)
         libdl.so.2 => /lib/libdl.so.2 (0x00214000)
         libm.so.6 => /lib/libm.so.6 (0x00219000)
         libpthread.so.0 => /lib/libpthread.so.0 (0x0023c000)
         libc.so.6 => /lib/libc.so.6 (0x0028f000)
         libcrypt.so.1 => /lib/libcrypt.so.1 (0x0039c000)
         /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)

Как узнать, что проблема действительно в том, что в chroot что-то 
отсутствует? И как узнать, что именно отсутствует?

-- 
С уважением, Прокопьев Евгений


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] postgresql-perl/python using
  2005-11-28 17:53   ` Eugene Prokopiev
@ 2005-11-29  5:25     ` Alexey V. Novikov
  0 siblings, 0 replies; 11+ messages in thread
From: Alexey V. Novikov @ 2005-11-29  5:25 UTC (permalink / raw)
  To: ALT Linux Community

28.11.2005 20:53, Eugene Prokopiev пишет:
> Alexey V. Novikov пишет:
>> Postgres в alt работает в chroot. Проверьте, что все требуемое
>> копируется в него.
> 
> 
> А как это правильно сделать?
> 
> Вот python работает, а после копирования /usr/lib/python2.3 в chroot 
> работают вообще все необходимые мне модули. Тем не менее:
> 
> # ldd /var/lib/pgsql-root/usr/lib/pgsql/plpython.so
>         libpython2.3.so.1.0 => /usr/lib/libpython2.3.so.1.0 (0x00129000)
                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
вот это нужно копировать, ИМХО
>         libpthread.so.0 => /lib/libpthread.so.0 (0x0020e000)
>         libdl.so.2 => /lib/libdl.so.2 (0x00262000)
>         libutil.so.1 => /lib/libutil.so.1 (0x00266000)
>         libm.so.6 => /lib/libm.so.6 (0x0026a000)
>         libc.so.6 => /lib/libc.so.6 (0x0028d000)
>         /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
а эти, скорее всего, загружены самим postgres
то же самое с перлом
<skip>
> Как узнать, что проблема действительно в том, что в chroot что-то 
> отсутствует? И как узнать, что именно отсутствует?
попробовать запустить в chroot'е strace? :(

-- 
WBR, Alexey V. Novikov


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] postgresql-perl/python using
  2005-11-28 10:38   ` Eugene Prokopiev
@ 2005-11-29  9:14     ` Alex Gorbachenko
  2005-11-29  9:54       ` Alexey V. Novikov
  0 siblings, 1 reply; 11+ messages in thread
From: Alex Gorbachenko @ 2005-11-29  9:14 UTC (permalink / raw)
  To: community

[-- Attachment #1: Type: text/plain, Size: 240 bytes --]

On Mon, 28 Nov 2005 13:38:05 +0300
Eugene wrote:

EP>я вот скопировал /usr/lib/python2.3 в чрут и соответствующая 
EP>python-функция заработала.

модули от питона и перла вы тоже в чрут положите ?

-- 
np: In Flames - Bullet Ride

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 190 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] postgresql-perl/python using
  2005-11-29  9:14     ` Alex Gorbachenko
@ 2005-11-29  9:54       ` Alexey V. Novikov
  2005-11-29 10:11         ` Alex Gorbachenko
  0 siblings, 1 reply; 11+ messages in thread
From: Alexey V. Novikov @ 2005-11-29  9:54 UTC (permalink / raw)
  To: ALT Linux Community

29.11.2005 12:14, Alex Gorbachenko пишет:
> On Mon, 28 Nov 2005 13:38:05 +0300
> Eugene wrote:
> 
> EP>я вот скопировал /usr/lib/python2.3 в чрут и соответствующая 
> EP>python-функция заработала.
> 
> модули от питона и перла вы тоже в чрут положите ?
Если использовать plperl и plpython, то лучше
модули в чрут, чем все это хозяйство из него вытаскивать.
В плане безопасности, ИМХО.

-- 
WBR, Alexey V. Novikov


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] postgresql-perl/python using
  2005-11-29  9:54       ` Alexey V. Novikov
@ 2005-11-29 10:11         ` Alex Gorbachenko
  2005-11-29 10:44           ` Alexey V. Novikov
  0 siblings, 1 reply; 11+ messages in thread
From: Alex Gorbachenko @ 2005-11-29 10:11 UTC (permalink / raw)
  To: community

[-- Attachment #1: Type: text/plain, Size: 298 bytes --]

On Tue, 29 Nov 2005 12:54:31 +0300
Alexey wrote:

AVN>Если использовать plperl и plpython, то лучше
AVN>модули в чрут, чем все это хозяйство из него вытаскивать.
AVN>В плане безопасности, ИМХО.

и чем оно лучше в плане безопасности в данном случае ? 

-- 
np: In Flames - Square Nothing

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 190 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] postgresql-perl/python using
  2005-11-29 10:11         ` Alex Gorbachenko
@ 2005-11-29 10:44           ` Alexey V. Novikov
  2005-11-29 13:09             ` Alex Gorbachenko
  0 siblings, 1 reply; 11+ messages in thread
From: Alexey V. Novikov @ 2005-11-29 10:44 UTC (permalink / raw)
  To: ALT Linux Community

29.11.2005 13:11, Alex Gorbachenko пишет:
> On Tue, 29 Nov 2005 12:54:31 +0300
> Alexey wrote:
> 
> AVN>Если использовать plperl и plpython, то лучше
> AVN>модули в чрут, чем все это хозяйство из него вытаскивать.
> AVN>В плане безопасности, ИМХО.
> 
> и чем оно лучше в плане безопасности в данном случае ? 
Как минимум тем, что в случае взлома, ну например,
SQL-injection через php или perl'овый cgi на web-сервере
грозит лишь самому postgres'у.
На запись права получить будет нелегко, но права на чтение
данных и запуск большинства программ(не дай бог suid)
получить через plperl и plpython вполне реально.

-- 
WBR, Alexey V. Novikov


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] postgresql-perl/python using
  2005-11-29 10:44           ` Alexey V. Novikov
@ 2005-11-29 13:09             ` Alex Gorbachenko
  0 siblings, 0 replies; 11+ messages in thread
From: Alex Gorbachenko @ 2005-11-29 13:09 UTC (permalink / raw)
  To: community

[-- Attachment #1: Type: text/plain, Size: 397 bytes --]

On Tue, 29 Nov 2005 13:44:53 +0300
Alexey wrote:

AVN>Как минимум тем, что в случае взлома, ну например,
AVN>SQL-injection через php или perl'овый cgi на web-сервере
AVN>грозит лишь самому postgres'у.

писать нужно правильно. потому как тащить в chroot perl, python и
прочее барахло это не выход.

либо использовать jail, vserver и сотоварищи.

-- 
np: In Flames - Food For The Gods

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 190 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2005-11-29 13:09 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-11-27 16:31 [Comm] postgresql-perl/python using Eugene Prokopiev
2005-11-28  5:44 ` Alexey V. Novikov
2005-11-28 17:53   ` Eugene Prokopiev
2005-11-29  5:25     ` Alexey V. Novikov
2005-11-28  8:32 ` Alex Gorbachenko
2005-11-28 10:38   ` Eugene Prokopiev
2005-11-29  9:14     ` Alex Gorbachenko
2005-11-29  9:54       ` Alexey V. Novikov
2005-11-29 10:11         ` Alex Gorbachenko
2005-11-29 10:44           ` Alexey V. Novikov
2005-11-29 13:09             ` Alex Gorbachenko

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