URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID15
Нить номер: 1200
[ Назад ]

Исходное сообщение
"значения ulimits в сессии telnet и ssh разные почему"

Отправлено klmnls , 20-Июн-07 11:25 
Ребята привет,
все время работал с Solaris а вот теперь приходится еще и Linux конфигурить. Столкнулся с проблеммой не известной по аналогиис Solaris'om - может кто подскажет

Вобщем:
1. поменял настройку в /etc/security/limits.conf max_open_files = 6000 (hard и soft)
2. подключаюсь к серверу по ssh все нормально вижу переменную со значением 6000, а если подключаюсь через telnet (то видимо настройка по умолчанию срабатывает) значение переменной 1024.

Подключаюсь одним и тем же пользователем, пробовал и разными подключаться все равно.
Мне нужно именно подключение через телнет!
Где поменять эту настройку безопасности как настройку ядра или как-то похожим образом ...


Содержание

Сообщения в этом обсуждении
"значения ulimits в сессии telnet и ssh разные почему"
Отправлено pavel_simple , 20-Июн-07 12:41 
>Ребята привет,
>все время работал с Solaris а вот теперь приходится еще и Linux
>конфигурить. Столкнулся с проблеммой не известной по аналогиис Solaris'om - может
>кто подскажет
>
>Вобщем:
>1. поменял настройку в /etc/security/limits.conf max_open_files = 6000 (hard и soft)
>2. подключаюсь к серверу по ssh все нормально вижу переменную со значением
>6000, а если подключаюсь через telnet (то видимо настройка по умолчанию
>срабатывает) значение переменной 1024.
>
>Подключаюсь одним и тем же пользователем, пробовал и разными подключаться все равно.
>
>Мне нужно именно подключение через телнет!
>Где поменять эту настройку безопасности как настройку ядра или как-то похожим образом
>...

telnetd не использует pam_limits.so -- а должен
НО телнет я бы использовал в самом крайнем случае -- не нашлось подходящих альтернатив?


"значения ulimits в сессии telnet и ssh разные почему"
Отправлено klmnls , 20-Июн-07 16:04 
Есть такая софтина называется TEMENOS - вот для нее нужен telnet

А как сделать чтобы использовал и за что этот модуль отвечает
>
>telnetd не использует pam_limits.so -- а должен
>НО телнет я бы использовал в самом крайнем случае -- не нашлось
>подходящих альтернатив?



"значения ulimits в сессии telnet и ssh разные почему"
Отправлено pavel_simple , 20-Июн-07 17:03 
для начала
ldd /usr/sbin/telnetd
или он запускается через inetd ?
Linux какой?.


"значения ulimits в сессии telnet и ssh разные почему"
Отправлено klmnls , 20-Июн-07 17:39 
Red Hat AS 4.0
>для начала
>ldd /usr/sbin/telnetd
>или он запускается через inetd ?
>Linux какой?.



"значения ulimits в сессии telnet и ssh разные почему"
Отправлено pavel_simple , 20-Июн-07 18:05 
остальное где?


"значения ulimits в сессии telnet и ssh разные почему"
Отправлено klmnls , 21-Июн-07 08:14 
>остальное где?


[root@ala2950i18 ~]# uname -a
Linux ala2950i18 2.6.9-34.ELsmp #1 SMP Fri Feb 24 16:54:53 EST 2006 i686 i686 i386 GNU/Linux
[root@ala2950i18 ~]#

- из этого понятно ?


"значения ulimits в сессии telnet и ssh разные почему"
Отправлено pavel_simple , 21-Июн-07 08:20 
блин
ldd /usr/sbin/telnetd
ldd /usr/sbin/in.telnetd

что говорят эти команды


"значения ulimits в сессии telnet и ssh разные почему"
Отправлено klmnls , 21-Июн-07 08:20 
>остальное где?

файла inetd.conf - нет


"значения ulimits в сессии telnet и ssh разные почему"
Отправлено klmnls , 21-Июн-07 08:25 
>остальное где?

[root@ala2950i18 etc]# ldd /usr/kerberos/sbin/telnetd
        libkrb4.so.2 => /usr/lib/libkrb4.so.2 (0x40053000)
        libdes425.so.3 => /usr/lib/libdes425.so.3 (0x40070000)
        libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0x40074000)
        libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0x400d9000)
        libcom_err.so.2 => /lib/libcom_err.so.2 (0x400fa000)
        libutil.so.1 => /lib/libutil.so.1 (0x400fd000)
        libresolv.so.2 => /lib/libresolv.so.2 (0x40101000)
        libtermcap.so.2 => /lib/libtermcap.so.2 (0x40115000)
        libc.so.6 => /lib/tls/libc.so.6 (0x40119000)
        /lib/ld-linux.so.2 (0x40027000)
[root@ala2950i18 etc]#

файла inetd.conf - нет


"значения ulimits в сессии telnet и ssh разные почему"
Отправлено pavel_simple , 21-Июн-07 08:39 
>>остальное где?
вот теперь видно -- что сервер kerberos'ованный и с PAM'ом не слинкованный -- соответственно, через pam_limits лимиты не выставить.
теперь осталось выучить команду ulimit и поставить её в ~/.bashrc или ~/.bash_profile (тут конечно зависит от того, какой шел используется) с соответствующими опциями.

Удачи.
p.s. telnet специально такой?


"значения ulimits в сессии telnet и ssh разные почему"
Отправлено klmnls , 21-Июн-07 12:37 
>остальное где?

странно уже третий раз отправляю этот ответ

файла inetd.conf нет

[root@ala2950i18 etc]# uname -a
Linux ala2950i18 2.6.9-34.ELsmp #1 SMP Fri Feb 24 16:54:53 EST 2006 i686 i686 i386 GNU/Linux
[root@ala2950i18 etc]#

[root@ala2950i18 etc]# ldd /usr/kerberos/sbin/telnetd
        libkrb4.so.2 => /usr/lib/libkrb4.so.2 (0x40053000)
        libdes425.so.3 => /usr/lib/libdes425.so.3 (0x40070000)
        libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0x40074000)
        libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0x400d9000)
        libcom_err.so.2 => /lib/libcom_err.so.2 (0x400fa000)
        libutil.so.1 => /lib/libutil.so.1 (0x400fd000)
        libresolv.so.2 => /lib/libresolv.so.2 (0x40101000)
        libtermcap.so.2 => /lib/libtermcap.so.2 (0x40115000)
        libc.so.6 => /lib/tls/libc.so.6 (0x40119000)
        /lib/ld-linux.so.2 (0x40027000)
[root@ala2950i18 etc]#


"значения ulimits в сессии telnet и ssh разные почему"
Отправлено klmnls , 21-Июн-07 12:42 
>>остальное где?
>
>странно уже третий раз отправляю этот ответ
telnet взял из дистрибутива этого же Linuxa
а вот шел используется там свой jsh - это специфический шел этого Теменоса
у него конечно есть свой профайл но вроде вставить в него значение ulimit не получилось сейчас проверю
а есть еще вариант прописать это как-нибудь ?

>
>файла inetd.conf нет
>
>[root@ala2950i18 etc]# uname -a
>Linux ala2950i18 2.6.9-34.ELsmp #1 SMP Fri Feb 24 16:54:53 EST 2006 i686
>i686 i386 GNU/Linux
>[root@ala2950i18 etc]#
>
>[root@ala2950i18 etc]# ldd /usr/kerberos/sbin/telnetd
>        libkrb4.so.2 => /usr/lib/libkrb4.so.2 (0x40053000)
>        libdes425.so.3 => /usr/lib/libdes425.so.3 (0x40070000)
>        libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0x40074000)
>        libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0x400d9000)
>        libcom_err.so.2 => /lib/libcom_err.so.2 (0x400fa000)
>        libutil.so.1 => /lib/libutil.so.1 (0x400fd000)
>        libresolv.so.2 => /lib/libresolv.so.2 (0x40101000)
>        libtermcap.so.2 => /lib/libtermcap.so.2 (0x40115000)
>        libc.so.6 => /lib/tls/libc.so.6 (0x40119000)
>        /lib/ld-linux.so.2 (0x40027000)
>[root@ala2950i18 etc]#



"значения ulimits в сессии telnet и ssh разные почему"
Отправлено pavel_simple , 21-Июн-07 12:47 
напиши скрипт на баше, там проставишь лимиты и в конце запускается этот-самый jsh, сделаей его исполняемым, ну и поставь юзеру под которым логинишся как default.

"значения ulimits в сессии telnet и ssh разные почему"
Отправлено klmnls , 21-Июн-07 13:29 
Да .... спасибо

я думал порешать этот вопрос типо с pam_limits.so - стандартыным методом, но если его нет будем делать так

большое спасибо

>напиши скрипт на баше, там проставишь лимиты и в конце запускается этот-самый
>jsh, сделаей его исполняемым, ну и поставь юзеру под которым логинишся
>как default.



"значения ulimits в сессии telnet и ssh разные почему"
Отправлено klmnls , 22-Июн-07 11:07 
интересно получается
пользователь не имеет рутовых привелегий и поэтому не может поменять значение выше чем установлено лимитами (видимо они по умолчанию для открытых файлов 1024) и поэтому команда в профайле ругается на превышение лимитов и не меняет 1024 на 4000

может это прописать в стартовых скриптах rc но наверно будет такой же результат поменяется значение в локально открытой сессии для скрипта (эксперементировать лишний раз не могу)

>Да .... спасибо
>
>я думал порешать этот вопрос типо с pam_limits.so - стандартыным методом, но
>если его нет будем делать так
>
>большое спасибо
>
>>напиши скрипт на баше, там проставишь лимиты и в конце запускается этот-самый
>>jsh, сделаей его исполняемым, ну и поставь юзеру под которым логинишся
>>как default.



"значения ulimits в сессии telnet и ssh разные почему"
Отправлено pavel_simple , 22-Июн-07 11:37 
suid bit тебе в помощь

"значения ulimits в сессии telnet и ssh разные почему"
Отправлено klmnls , 22-Июн-07 11:57 
а ulimit это внутренняя команда шела
>suid bit тебе в помощь



"значения ulimits в сессии telnet и ssh разные почему"
Отправлено pavel_simple , 22-Июн-07 12:52 
>а ulimit это внутренняя команда шела
>>suid bit тебе в помощь
да -- она



"значения ulimits в сессии telnet и ssh разные почему"
Отправлено klmnls , 22-Июн-07 14:45 
>>а ulimit это внутренняя команда шела
>>>suid bit тебе в помощь
>да -- она

интересный момент возник еще
я выполняю команду
sudo /bi/ksh -c "ulimit -n 6000"
система не ругается и наверно выполняет, но при этом я смотрю что ничего не поменялось


"значения ulimits в сессии telnet и ssh разные почему"
Отправлено pavel_simple , 22-Июн-07 14:48 
sudo -c "ulimit -n 60000; ulimit -n"


"значения ulimits в сессии telnet и ssh разные почему"
Отправлено klmnls , 22-Июн-07 15:05 
>sudo -c "ulimit -n 60000; ulimit -n"

это не проходит
sudo -c "ulimit -n 6000" - на это он говорит что ulimit нет такой команды


"значения ulimits в сессии telnet и ssh разные почему"
Отправлено pavel_simple , 22-Июн-07 15:11 
ошибся немного
su root -c "bash -c 'ulimit -n 60000; ulimit -n'"


"значения ulimits в сессии telnet и ssh разные почему"
Отправлено klmnls , 22-Июн-07 15:20 
>ошибся немного
>su root -c "bash -c 'ulimit -n 60000; ulimit -n'"


sh-3.00$
sh-3.00$ su root -c "bash -c 'ulimit -n 6000; ulimit -n'"
Password:
Your default context is root:system_r:unconfined_t.

Do you want to choose a different one? [n]
6000
sh-3.00$ ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
file size               (blocks, -f) unlimited
pending signals                 (-i) 1024
max locked memory       (kbytes, -l) 32
max memory size         (kbytes, -m) unlimited
open files                      (-n) 600
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
stack size              (kbytes, -s) 10240
cpu time               (seconds, -t) unlimited
max user processes              (-u) 77824
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
sh-3.00$

вот такая вот фигня получается, а вот такой вопрос эту переменную как-нибуть можно поменять на уровне настройки ядра (пересобирание ядра или что-то в этом роде, я правдо ядро никогда не пересобирал его)

тут вот сейчас 600 значение, т.е меньше сделать 1024 без проблемм, больше нельзя
а вот твоей командой даже и 600 не меняет например на 500
если я дам гдшьше -т 500, он ее выпоняет


"значения ulimits в сессии telnet и ssh разные почему"
Отправлено pavel_simple , 22-Июн-07 15:24 
su root -c "bash -c 'ulimit -n 60000; ulimit -n'"
60000
^^^^^
Всё очень даже меняется Debian Etch (4r0)

"значения ulimits в сессии telnet и ssh разные почему"
Отправлено klmnls , 22-Июн-07 15:31 
>su root -c "bash -c 'ulimit -n 60000; ulimit -n'"
>60000
>^^^^^
>Всё очень даже меняется Debian Etch (4r0)


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


"значения ulimits в сессии telnet и ssh разные почему"
Отправлено pavel_simple , 22-Июн-07 15:41 
>да тут он написал что поменял если команду просмотра даешь через точку
>с запятой, а если запускаешь в следующей строке то она показывает
>старый параметер как у меня в примере
>тогда что это значит ? я просто это того .....

напиши уже скрипт и проверь
ты сначала вызываеш шел с одной командой ulimit <тут параметры> -- вот он вызавается, выполняет, и ЗАКРЫВАЕТСЯ!!!
а потом ты вызываешь другой шел -- он вызывается - показывает тебе параметры по умолчанию и благополучно завершается
всё это говорит о том, что результат выполнения команд НУЛЕВОЙ

--- иээх -- меня это устало.


"значения ulimits в сессии telnet и ssh разные почему"
Отправлено klmnls , 22-Июн-07 16:14 
>>да тут он написал что поменял если команду просмотра даешь через точку
>>с запятой, а если запускаешь в следующей строке то она показывает
>>старый параметер как у меня в примере
>>тогда что это значит ? я просто это того .....
>
>напиши уже скрипт и проверь
>ты сначала вызываеш шел с одной командой ulimit <тут параметры> -- вот он вызавается, выполняет, и ЗАКРЫВАЕТСЯ!!!
>а потом ты вызываешь другой шел -- он вызывается - показывает тебе
>параметры по умолчанию и благополучно завершается
>всё это говорит о том, что результат выполнения команд НУЛЕВОЙ
>
>--- иээх -- меня это устало.

да :-) меня тоже
спасибо за твое терпение