Перейти до

Ubilling + NAS на FreeBSD бортжурнал починаючого адміна


Рекомендованные сообщения

Опубліковано: (відредаговано)

 

Власне це він і означає - десь самі собі зробили deny from xxx to yyy via zzz 
 
я про це  перше подумав, але сервер перезавантажувався після  останньої модифікації фаєра і успішно працював.
мене найбільше хвилює, що воно там без мене щось діється і я нерозумію що.
 
піду аналізувати що де там зарубується.
Відредаговано mgo
Ссылка на сообщение
Поделиться на других сайтах
  • Відповіді 1,8k
  • Створено
  • Остання відповідь

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Вітаю Татко!   

Не так вже й багато   Ход коньом:   # cat /bin/clear_dhcpdlog #!/bin/sh /bin/echo > /var/log/dhcpd.log /usr/local/etc/rc.d/isc-dhcpd restart # chmod a+x /bin/clear_dhcpdlog # crontab -e

http://wiki.ubilling.net.ua/doku.php?id=userstats       Расист? http://wiki.ubilling.net.ua/doku.php?id=userstats

Posted Images

 

Определять онлайновость исходя из содержимого /content/dn ?

DN_ONLINE_DETECT=1

 

накопав, що потрібно завжди онлайн поставити "ні"

і користуватися авторизатором.

тицніть  де про авторизатор щось написано.

Ссылка на сообщение
Поделиться на других сайтах

припускав, що авторизатор з DHCP логів підтягує хто получив адрес, так і визначати онлайн користувача.

хоча  можна обійтися.

Ссылка на сообщение
Поделиться на других сайтах

"Авторизатор" це трохи не те.

Загалом забудьте про це - нормально визначити наскільки користувач "онлайн" в 2013 році практично не можливо. DN_ONLINE_DETECT взагалі призначено для того, щоб мати уявлення - виконався для користувача OnConnect чи ні.

Ссылка на сообщение
Поделиться на других сайтах
  • 2 weeks later...
Опубліковано: (відредаговано)

сьгодні елепотреки вирубали на пів дня електрику ... 

результат - злетівші права на конфіг намед, uhw глючит і  ще х-зна  що там глючит

треба якесь  людське UPS поставити, щоб фрю нормально вирубало в таких випадках.

 

погуглив чуток  і  нагугглив таку штуку

 

1. Брати упса треба фірми APC

2. /usr/ports/sysutils/apcupsd - поставити з портів фірмову прогу і відстроїти її.

 

пошастав магазинами і поняв, що на  Smart деньгу кидати жаба душит, зупинився на таких моделях

APC Back-UPS 650VA (BX650CI-RS) особливо радує діапазон 140-300В вхідна напруга

або 

APC Back-UPS ES 700VA (BE700G-RS) 

обидва на USB порт.

на мої 100-150 Ват вони малиб тримати +- 15-20 хв. 

 

від такого упса я чеаю наступного функціоналу:

виключення сервера згідно налаштувань apcupsd (припустим 30% залишок батареї)

увімкнення сервера при відновленні електопостачання (упс без сторонньї допомоги на вихід дає 220)

на сервері в біосі налаштовано автоматичний старт при відновленні живлення.
 

у кого є досвід роботи з упсами поправте якщо туплю відносно очікуваного функціоналу.

Відредаговано mgo
Ссылка на сообщение
Поделиться на других сайтах
Опубліковано: (відредаговано)








Warning: mysql_query(): Unable to save result set in /usr/local/www/apache22/data/billing/api/libs/api.workaround.php on line 1748

Warning: mysql_num_fields() expects parameter 1 to be resource, boolean given in /usr/local/www/apache22/data/billing/api/libs/api.workaround.php on line 1749

Warning: mysql_query(): Unable to save result set in /usr/local/www/apache22/data/billing/api/libs/api.workaround.php on line 1748

Warning: mysql_num_fields() expects parameter 1 to be resource, boolean given in /usr/local/www/apache22/data/billing/api/libs/api.workaround.php on line 1749

 

при спробі зробити резервну копію,







Warning: mysql_query(): Unable to save result set in /usr/local/www/apache22/data/uhw/libs/api.mysql.php on line 262
 wrong data input: SELECT COUNT(`id`) from `uhw_brute` WHERE `mac`='1c:6f:65:4e:9d:хх'

 

UHW видає 

 

гугл каже, що пошкоджена база(

Repair table ... курю як юзати.

добре є  бекап бази двох денної давності.

Відредаговано mgo
Ссылка на сообщение
Поделиться на других сайтах
Опубліковано: (відредаговано)

З допомогою  молотка зубила и какойто матери  пари рядків в консолі усе  відновив  B)

 

 



mysqlcheck -A -auto-repair -u root -p
mysql -u root -p -f stg < /home/mg/billing-db-backup-1363200990.sql
mysqlcheck -r -A -uroot -p
 

незнаю точно що допомогло, але  функціонал бази відновлений 

Відредаговано mgo
Ссылка на сообщение
Поделиться на других сайтах

Таблички покрашились, при непередбаченій зупинці MySQL.

 

Загалом в таких випадках варто робити наступне:

1. зупиняємо stargazer

2. шукаємо хто поламався з допомогою CHECK TABLE `імя_таблички`

3. рихтуємо її з допомогою REPAIR TABLE `імя_таблички`

4. запускаємо stargazer

Ссылка на сообщение
Поделиться на других сайтах
Опубліковано: (відредаговано)

там пару табличок невдалося відрехтувати(

непамятаю точно як воно написало - суть їм повний капець.

відновлення з бекапу допомогло

1. зупиняємо stargazer
....
4. запускаємо stargazer



цей момент упустив.

глянув на реальний монітор (не через SSH) там 10-15 помилок підчас загрузки(
кілька файлів і папок взагалі пропало, у кількох права злетіли,
систему сильно покоцало, дивно, що взагалі працює, мабуть переставлю коли упс нормальний буду крутити.

при перестановці
1. узяти усі конфіги які правив
2. бекап бази.
на нову систему залити старі конфіги
базі зробити щось таке

mysql -u root -p -f stg < /home/mg/billing-db-backup-1363200990.sql



решту дрібниць по ходу допилити.

Нічого не упустив?

Відредаговано mgo
Ссылка на сообщение
Поделиться на других сайтах

Нічого не упустив?

Здається - ні, не упустили.

 

Критичними є конфіги:

/config/mysql.ini

/config/billing.ini

/config/alter.ini

/config/ymaps.ini

/userstats/config/mysql.ini

/userstats/config/userstats.ini

 

Все інше затирається навіть при оновленнях обновлятором, після чого вищевказані конфіги повертаються на місце.

 

Можна взагалі бути брутальним і після того як поставились з нуля інсталятором  і розгортання бази перелити поверху каталог billing з бекапа (це такий варіант для надто лінивих).

У будь якому випадку треба пам'ятати, що заливати дампи БД потрібно при незапущеному stargazer. Він читає такі таблички як users чи скажімо tariffs тільки на старті, після чого тільки перезаписує їх.

Ссылка на сообщение
Поделиться на других сайтах
Опубліковано: (відредаговано)

ой ... у мене аварія
після відновлення бази з кирилецею така фігня сталася.

Дімнич ТетÑна ЯроÑлавівна

Додано через 5 хв.--------------------------------------------------------------------
сам запоров - сам розрулив UTF8 кодировка

Відредаговано mgo
Ссылка на сообщение
Поделиться на других сайтах
Опубліковано: (відредаговано)

та з кодуванням я розібрався уже
а оце мені точно не позубах

 

wrong data input: INSERT INTO `weblogs` (`id`,`date`,`admin`,`ip`,`event`) VALUES(NULL,'2013-03-03 03:01:00','user','192.168.1.202','BALANCEADD (xxxxxx) ON 1')




при спробі записати з білінга щось в базу, але ж я обожнюю збочення і phpMyAdmin то все роблю
буду пробувати писати знову рядок в консолі

cat ваш_дамп.sql | /usr/local/bin/mysql -u root -p stg --password=newpassword --default_character_set utf8


дуже влучно дякую!

..... 5 хв і пара рядків в консолі.

і як завжди один рядок від nightfly розрулює ситуацію!
ДЯКУЮ, усе працює. Відредаговано mgo
Ссылка на сообщение
Поделиться на других сайтах

CREATE TABLE IF NOT EXISTS `weblogs` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`date` datetime NOT NULL,
`admin` varchar(45) DEFAULT NULL,
`ip` varchar(64) DEFAULT NULL,
`event` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `date` (`date`),
KEY `date_2` (`date`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
Ссылка на сообщение
Поделиться на других сайтах

А так, мало не забув. Таблички які не будуть звертатись кліканням по модулю бекапів з вебінтерфейсу - встановлюються опцією NOBACKUPTABLESLIKE=

Ссылка на сообщение
Поделиться на других сайтах
Опубліковано: (відредаговано)

буду юзати

 

я розрулив ситуацію інакше чуть

убив старгейзер

зніс базу

запустив старгейзер, знову убив



cat docs/test_dump.sql | mysql -u root -p stg

розгорнув базу

і відновив базу

 

cat ваш_дамп.sql | /usr/local/bin/mysql -u root -p stg --password=newpassword --default_character_set utf8
запустив старгейзер і радуюсь роботою білінгу!
Відредаговано mgo
Ссылка на сообщение
Поделиться на других сайтах
  • 1 month later...

Ну давайте повгадуємо грунтуючись на "я зробив шось - воно не робить, я зробив шось інше - воно чось робить".

 

Логи інсталяції складаються в /tmp/ub*

Ссылка на сообщение
Поделиться на других сайтах

Ну давайте повгадуємо грунтуючись на "я зробив шось - воно не робить, я зробив шось інше - воно чось робить".

 

Логи інсталяції складаються в /tmp/ub*

Треба логи одразу зливати на Центральний Сервер , і тут же по ним малювати квитанцію до сплати :)
Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    Немає користувачів, що переглядають цю сторінку.

  • Схожий контент

    • Від sanyadnepr
      Приветствую всех.
      Подскажите пожалуйста где копнуть и нет ли проблемы со стороны протокола взаимодействия сити24 или возможно не учтена необходимая проверка в модуле сити24 в Ubilling, пока писал понял что похоже в проверке payID, но это не точно.  
      Недавно обнаружилось с сити24 начали прилетать дубликаты платежей, в целом платежей мало, два одинаковых запроса Pay с одинаковым transactionID и payID в одну секунду одному платежному ID при этом биллинг "думает" примерно чуть больше минуты и отвечает одним ответом <result>0</result>, сити24 утверждает что ответ они не получили и по протоколу дальше повторяет запросы дублем, биллинг ответ и так по кругу, сити24 спрашивает каким образом с одинаковым payID от сити24 билл продолжает обрабатывать запросы и пополнять абоненту счет раз в 5 минут примерно, на одну и туже сумму, ведь этот payID уже был обработан предполагают сити24 согласно протоколу.
      Конечно есть вопрос к сити24 зачем они дублем присылают два запроса, но они отвечают что эта ситуация учтена в протоколе и проблема на стороне биллинга, потому что он пополняет счет по уже обработанному одинаковому payID.
      При этом transactionID в дублях одинаковый, но с каждым новым дублем разный.
      Если зафаерволить запросы от сити24, но оставить возможность отвечать то после блокировки билл отправляет 2-3 минуты 6 ответов <account>0001</account>  <result>0</result>.
      После снятия блокировки, дубли и платежи нескольких проблемных абонентов прилетают так же по кругу, при этом и с некоторыми новыми пополнениями происходит аналогичная ситуация.
      В openpayz в платежах transactionID и не видно payID.
    • Від nightfly
      Ubilling 1.4.3 rev 9058 The Bladewood Grove
       
      Зміни в структурі БД. alter.ini: нові опції OPHANIMFLOW_ENABLED та OPHANIMFLOW_URLS котрі вмикають та керують інтеграцією з OphanimFlow. alter:ini: нова опція PHOTOSTORAGE_POSTPROCESSING, що вмикає післяобробку зображень при завантаженні в Сховище зображень. alter:ini: нова опція PHOTOSTORAGE_WATERMARK, що вмикає розміщення вотермарки на всіх зображеннях, що завантажуються. alter:ini: нова опція PHOTOSTORAGE_RECOMPRESS, що вмикає зміну компрессії завантажених зображень. alter:ini: нова опція PHOTOSTORAGE_AUTORESIZE, що вмикає автоматичне та лагідне масштабування зображень конячих розмірів. alter:ini: нова опція PHOTOSTORAGE_DRAWIMGINFO, що вмикає вдруковування в зображення відлагоджувальної інформації. alter.ini: нова опція ONDEMAND_CHARTS, що вмикає відкладене завантаження графіків завантаження користувацької смуги. userstats.ini: нова опція OPHANIM_ENABLED, що вмикає інтеграцію OphanimFlow в кабінеті користувача. Модуль Заздрість: тепер авторизаційні дані пристроїв, не відображаються в списку пристроїв. Модуль “Заздрість”: при створенні та редагуванні пристроїв, для полів “пароль” та “enable пароль” тепер використовуються інпути паролів. Модуль “Заздрість”: заздрісним пристроям додано нове поле “Порт”. Тепер в скриптах можна використовувати, відповідний макрос {PORT}. Модуль “Статистика трафіку користувача”: проведено радикальний рефакторинг. Модуль “Статистика трафіку користувача”: додано опційну можливість, відображення трафіку отриманого з OphanimFlow. Модуль “Статистика трафіку користувача”: виправлено проблему невірного відображення залишку коштів на кінець місяця, при використанні Ішимури. Модуль “Статистика трафіку користувача”: додано можливість відображення графіків за останню годину з OphanimFlow. Модуль “Користувачі”: додано опційну можливість, відображення трафіку отриманого з OphanimFlow. Модуль “Сховище зображень”: тепер додатково перевіряє завантажувані зображення на тему їх валідності. Модуль “Фінансові операції”: виправлено відображення суми платежів користувача. Remote API: новий виклик ophanimtraff, який просто бере і синхронізує локальну БД з віддаленими джерелами OphanimFlow. Remote API: виклик userbynum тепер також опційно містить поле з “Платіжним ID” користувача. Глобально: у всіх полях вводу паролів, окрім форми входу, тепер відображається елемент керування “показати/приховати” пароль. Кабінет користувача: в модулі “Трафік” додано опційну можливість, відображення трафіку отриманого з OphanimFlow. Кабінет користувача: в модулі “Трафік” виправлено проблему невірного відображення залишку коштів на кінець місяця, при використанні Ішимури. Кабінет користувача: в модулі “Відеоспостереження” для NVR WolfRecorder замінено розділювач попередньо заповнених даних авторизації. OpenPayz: додано frontend portmonemulti, для отримання платежів від різних контрагентів. Інформацію по контрагентам бере з біллінгу, також використовую розширену інформацію контрагента. Платіжна система в контрагенті мусить бути створена, як PORTMONE 1984tech: додано функціонал генерації RPZ для isc-bind, спасибі @misterromanbush  
      Повний чейнджлог
      Оновлена демка
       

    • Від mac
      Здається, після оновлення PHP 7.4 до PHP 8.2 feesharvester припинив працювати:
       
      /usr/local/bin/curl "http://127.0.0.1/billing/?module=remoteapi&key={SERIAL}&action=feesharvester" <br /> <b>Fatal error</b>: Uncaught TypeError: Unsupported operand types: string - string in {UBPATH}/billing/api/libs/api.fundsflow.php:570 Stack trace: #0 {UBPATH}/billing/modules/remoteapi/feesharvester.php(22): FundsFlow-&gt;harvestFees('2024-01') ...  
      Невеличке розслідування врешті з'ясувало, що це через наявність пробілу у деяких логінах абонентів. Як так сталося? Тому що інколи був неуважно додан трейлінг пробіл до номеру будинка і цей пробіл потрапив до логіну абоненту. Логін абоненту неможливо змінити ніяким чином штатними засобами. Я не розглядаю створення нового абонента для усунення помілки.

      Був обран такий шлях вирішення проблеми. Заміну функції php explode() знайшов у мережі. Мабуть це станеться в нагоді:

       
      diff api.fundsflow.php.bak api.fundsflow.php.new 559c559 < $eachfee = explode(' ', $eachline); --- > $eachfee = preg_split("~(?<!\\\\)(?:\\\\{2})*'[^'\\\\]*(?:\\\\.[^'\\\\]*)*'(*SKIP)(*F)|\s+~s" , $eachline);  
    • Від Zend
      Продам сабж.
      2 контроллера CA07336-C001, в каждом по одном интерфейсном модуле CA07336-C009 (2 x 1Gbps iSCSI)
      HDD: 24 x 900GB SAS 10K
      Исправен.
      С ним могу продать шкафчик того же вендора.
       
      Стоимость - $4000, торг
       

    • Від Dilan
      Собственно ищу кто сделает такую связку с нуля под ключ. Тз высылаю в личку. Заранее спасибо.

×
×
  • Створити нове...