LINUX.ORG.RU

Сообщения niXman

 

перестали логироваться ошибки php/apache

привет.

все было хорошо до тех пор, пока я чего-то там не начал пытаться настроить %)

сейчас, в '/var/www/nixman/data/logs/domain.error.log' ничего не пишется. совсем ничего. при этом, если в php коде возникают ошибки, они выводятся прям в браузер.

подскажите, где/чего я мог загубить?

благодарен.

niXman
()

администраторский состав, поясните суть происходящего

привет.

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

эта тема создана в надежде пролить свет на суть происходящего, по этому вопросу: не проверять принадлежность к Tor для реальных пользователей

21го ноября, я впервые написал maxcom(max.valjanski@gmail.com, насколько я понимаю, он является администратором сего ресурса) по этому вопросу. 23го ноября я наконец-то получил ответ в виде:

Отфорвардил письмо в рассылку для модераторов, в итоге никто не высказался «за»

разумеется, я не поверил такому ответу и поинтересовался, могу ли я глянуть на эту рассылку? в ответ, он мне сообщил о том, что это приватный список рассылки, и предложил создать тему тут, в разделе Linux-org-ru. что я и сделал(ссылка выше).

и, как показал опрос, никто не высказался против, если кто и высказывался по теме - то «за». после, 26го ноября, я отправил maxcom следующее сообщение:

глянь тему: не проверять принадлежность к Tor для реальных пользователей насколько я вижу, нет ни одного «против». зато, есть множественное «за».

и с тех пор - тишина. я пинговал еще четыре раза, и ничего в ответ.

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

по итогу, у меня всего три вопроса: 1)будет ли принят такой патч, 2)если нет - почему?, 3)если у maxcom есть личные мотивы не принимать такой патч, то почему нельзя было просто сказать об этом, вместо того, чтоб тратить мое время?

спасибо за понимание.

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

зызы: не намереваюсь разводить тут флуд и критику. и прошу остальных форумчан не делать этого.

зызызы: и не надо говорить, что он не онлайн, или дико занят. он онлайн, и ответ на мой вопрос состоял бы либо из «да», либо из «нет». на такой ответ не нужно более десяти секунд.

niXman
()

как сменить IP адрес для доменного имени?

есть домен. раньше, этот домен ссылался на некоторый IP адрес. сейчас, хочу изменить IP адрес домена, но не знаю как. на сайте регистратора похоже издеваются, давая какие-то невразумительные ответы %)

вот что есть: http://clip2net.com/clip/m47996/1354119806-clip-10kb.png

скажите, куда и что нужно вписывать, и сюда ли вообще нужно что-то вписывать?

благодарен.

Перемещено post-factum из general

niXman
()

выдрать исходники из SVN хранилища

привет.

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

т.е. есть стандартный способ: поднимаем SVN, импортируем в него бэкап хранилища, и чекаем нужные репы.

а вопрос именно в том, как чекнуть исходники не поднимая SVN сервер?

благодарен.

niXman
()

не проверять принадлежность к Tor для реальных пользователей

привет.

я, как и многие другие, вынужден использовать Tor для доступа к linux.org.ru из офиса. мне, как и многим другим, становится все сложнее пробиться на ЛОР, потому что администрация блокирует айпишники Tor. (говорят что из-за спама)

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

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

после общения с maxcom по почте, было решено создать тему тут, на форуме. (правда, не уверен в каком конкретно разделе)

хотелось бы выслушать «за» и «против».

Перемещено maxcom из lor-source

niXman
()

определить максимальный объем памяти используемый программой

привет.

я в терминале ввожу './test'. скажите, каким образом по завершению программы, я могу узнать максимальный объем памяти выделенный программой, и среднюю загрузку процессора?

в какую сторону копать?

благодарен.

niXman
()

где в убунте находится конфиг-файл апатча/пхп ?

привет.

проверяю таким скриптом:

<?php
error_reporting(E_ALL);
phpinfo();
?>
в выводе в браузере вижу:
display_errors = Off
но в '/etc/php5/apache2/php.ini' у меня установлено: 'display_errors=On'

и при этом, в браузере указывается путь к конфигу как: /etc/php5/apache2/php.ini

почему эта опция не включена?

спасибо.

niXman
()

VirtualBox и 64ех битная гостевая ОС

привет.

при попытке установить ubuntu-12.04.01-x86_64, получаю такое сообщение: http://clip2net.com/clip/m47996/1352926359-clip-36kb.png

хостовая ОС тоже 64ех битная. при попытке отключить это расширение, получаю это: http://clip2net.com/clip/m47996/1352926460-clip-10kb.png

замкнутый круг, какой-то %)

подскажите, как быть?

niXman
()

блокировка 22го порта

привет.

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

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

благодарен.

niXman
()

юзеры, группы, права %)

привет.

сайт, выполняется под каким-то пользователем. (по моему - www-data). из php-кода выполняется некоторая программа. эта программа, требует переменной 'HOME', которая, почему-то, не определена для этого юзера. я перед запуском программы устанавливаю эту переменную.

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

наверное нужно создать некоторого пользователя, от имени которого при помощи sudo нужно выполнять программу? собственно пользователя я создал. но теперь, получаю: nixman is not in the sudoers file. This incident will be reported.

подскажите, что я неправильно делаю?

благодарен.

niXman
()

Haskell, подавить вывод о процессе сборки программы и...

привет.

скажите, каким ключиком подавить вывод о процессе сборки программы? т.е. это:

[1 of 1] Compiling Main             ( test.hs, /tmp/Main.o )
Linking test2 ...
и еще, каким образом сказать ему, чтоб удалял за собой временные файлы?

благодарен.

 

niXman
()

хук на dlsym() и оригинальный dlsym()

привет.

все о том же, о хуках.

дошел до реализации хука на dlsym() и столкнулся с такой проблемой: для того чтоб вызывать оригинальный dlsym(), мне нужно получить его адрес. это я делаю в конструкторе so`шки. а проблема в том, что при вызове из конструктора dlsym(), вызывается хуковый dlsym().

пробовал первым аргументом указывать как RTLD_DEFAULT, так и RTLD_NEXT. при первом - вообще символ не находится. при втором - адрес хуковой dlsym().

подскажите, как побороть?

благодарен.

niXman
()

errno и траблы при использовании errno в .so библиотеке

привет.

продолжая все то же(хуки), столкнулся со следующей проблемой: если проверка условий для конкретного хука не пройдена, я в хуковой .so устанавливаю errno в EPERM. это работает.

проблема отображена ниже:

int main() {
   int rc0 = remove("/bin/ls");
   perror("remove(rc0)"); // тут выведет что надо: remove(rc0): Operation not permitted

   int rc1 = remove("test.txt");
   perror("remove(rc1)"); // а вот тут ошибочка. выведет: remove(rc0): Operation not permitted
      // но при этом rc1 == 0
}
т.е. получается так, что когда я из хука устанавливаю errno, создается еще одна копия errno?

подскажите, как исправить?

niXman
()

глобальная переменная и fork()

привет.

реализовал хук для system()/fork()/execve() в виде .so библиотеки. внутри хука для system(), я проверяю всякие условия/командную_строку, и если все гут - зову реальный system(). но, т.к. в .so реализованы хуки еще и для fork() и execve(), то когда реальный system() начинает выполняться, он зовет мой хуковый fork() и из него execve(). тут проблема в том, что для приведенного тут примера с system(), условия проверяются несколько раз подряд. от этого и хочу избавиться.

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

и тут я наткнулся на такую странную проблему... суть проблемы в том, что когда из хуковой system() зовется fork(), при входе в хуковый fork(), та самая глобальная переменная уже ровняется нулю, хотя из вызова выше(system()) возвращения не произошло. уточняю: глобальная переменная при входе в хуковый fork() ровняется нулю, и это еще до того, как вызываем реальный fork(). далее, из реального fork() (глобальную переменную мы снова устанавливаем в единицу(ибо при входе она почему-то ровняется нулю), чтоб исключить последующие проверки условий) происходит вызов хуковой execve(). в этом хуке все повторяется, глобальная переменная снова ровняется нулю!

в псевдокоде это выглядит так:

volatile int in_hook = 0;

...

int system(const char *cmd) {
   if ( ! in_hook  ) {
      in_hook = 1; // "говорим" что мы в хуке
      if ( ! { проверяем условия } ) {
         errno = EPERM;
         in_hook = 0;
         return -1;
      }
      int rc = { вызываем реальный system() };
      in_hook = 0;
      return rc;
   } else {
      // сюда мы приходим только в том случае, если эта функция вызвана из хука.
      return { вызываем реальный system() };
   }
}

pid_t fork() {
   // тут 'in_hook' уже равен нулю!
   if ( ! in_hook  ) { 
      in_hook = 1; // "говорим" что мы в хуке
      if ( ! { проверяем условия } ) {
         errno = EPERM;
         in_hook = 0;
         return -1;
      }
      int rc = { вызываем реальный fork() };
      in_hook = 0;
      return rc;
   } else {
      // сюда мы приходим только в том случае, если эта функция вызвана из хука.
      return { вызываем реальный fork() };
   }
}
подскажите, где ступил?

благодарен.

niXman
()

перехват вызовов функций

привет.

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

этот способ неудобен тем, что для каждого такого хука нужно писать обертку и пересобирать .so библиотеку.

отсюда вопрос: каким образом я могу перехватить все вызовы из программы?

благодарен.

niXman
()

где реализация функций strtok/strtok_r ?

привет.

подскажите по сабжу.

догадываюсь(но немогу утвердится), что в libc. но тогда попутный вопрос: где взять исходники libc?

благодарен.

niXman
()

SIGSEGV при использовании плюсового кода в .so библиотеке

привет.

реализовал в библиотеке init-функцию:

extern "C" {

void __attribute__ ((constructor)) my_init(void) {
	//std::cout << "constructor" << std::endl;
	//printf("constructor\n");
}

} // extern "C"
библиотеку подгружаю как: LD_PRELOAD=lib.so ./appname

если раскомментировать первую строку - SIGSEGV, если вторую - ок.

скажите, от чего так?

благодарен.

niXman
()

немогу понять как работает fnmatch

снова драсте.

fnmatch(): http://linux.die.net/man/3/fnmatch

при таком вызове функция возвращает 0: fnmatch(«/mydir/*», «/mydir/foo.txt», FNM_FILE_NAME)

а при таком, 1: fnmatch(«/mydir/*», «/mydir/../usr/bin/../../mydir/foo.txt», FNM_FILE_NAME)

перепробовал множество вариантов, но что-то никак немогу понять, как эта функция должна работать. подскажите, где ступил?

благодарен.

niXman
()

передать аргументы в .so библиотеку

привет.

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

мне нужно из командной строки передать в библиотеку аргументы. пока что, нашел только такой способ: export var=value; LD_PRELOAD=./hook.so

в этом способе мне не нравится то, что при таком способе переменная 'var' будет доступна из процесса.

другой вариант, читать некоторый конфигурационный файл. но в данной задаче это оочень неудобно.

благодарен.

niXman
()

запретить некоторому юзеру создавать процессы

привет.

нужно некоторому юзеру запретить создавать процессы. как это можно сделать?

благодарен.

niXman
()

RSS подписка на новые темы