Standardowo serwer Apache obsługuje PHP5 jako moduł php5_mod, który co prawda jest dość szybki jednak ma pewne ograniczenia związane z konfiguracją jak i z ograniczeniem bezpieczeństwa. Problem ten można rozwiązać wykorzystując moduł FCGI ( Fast CGI ) wraz z PHP-FPM. Rozwiązanie takie daje nam znacznie większe możliwości konfiguracji interpretera PHP jak i zwiększa poziom bezpieczeństwa. Najogólniej można by wymienić chociażby możliwość niezależnej konfiguracji dyrektyw z php.ini dla każdego użytkownika / vhosta czy też uruchamianie skryptów z prawami użytkownika.

Continue reading

Tym razem zajmiemy się utworzeniem systemu do monitoringu z wykorzystaniem mini komputerka Raspberry Pi ( w moim przypadku jest to 2-jka ) wykorzystując do tego kamerkę SONY Eye z konsoli PlayStation 3. Może być wykorzystana także inna kamerka USB kompatybilna z Raspberry. Dzięki temu będziemy mieli energooszczędny i w miarę mobilny system monitoringu ( dostęp poprzez WIFI ) bez dodatkowych wydatków – wykorzystujemy to co już posiadamy :) Dostęp do monitoringu odbywa się poprzez przeglądarkę internetową – tak więc każde urządzenie z przeglądarką internetową i dostępem do sieci będzie mogło zostać wykorzystane do monitoringu.

Continue reading

Jeśli posiadamy wiele różnych urządzeń typu: komputer, laptop, smartphone czy tablet dobrym rozwiązaniem jest utworzenie serwera, który będzie udostępniał pliki a także inne urządzenia np. drukarki wszystkim upoważnionym urządzeniom w obrębie sieci lokalnej. Do tego celu wykorzystamy multi-platformowy serwer Samba. Bez względu na to czy nasze urządzenie korzysta z systemu Windows, OS X, Linux czy Android będzie możliwe wykorzystanie współdzielenie plików i urządzeń podpiętych do naszego serwera. W tym wypadku serwerem będzie mini komputerek: Raspberry Pi 2 z systemem Ubuntu Mate.

Continue reading

Serwer pocztowy oparty na Postfixie to na pewno dobry pomysł w kontekście jego szybkości, bezpieczeństwa i elastyczności. W zasadzie Postfix to zespół współpracujących ze sobą demonów do obsługi i przetwarzania poczty. Instalacja Posfixa najczęściej wiąże się z instalacją innych pakietów takich jak SASL czyli autoryzacja poczty wychodzącej ( bez tego nasz sewer będzie typu Open Relay ), pakiet do szyfrowania TLS/OpenSSL czy też pakiety odpowiedzialne za obsługę pobierania poczty z serwera na komputer klienta wykorzystując protokoły POP3 czy IMAP. Instalacja wykonana z wykorzystaniem dystrybucji Linux Debian.

Continue reading

Natknąłem się ostatnio na problem z dodaniem nowej domeny ( aliasu ) dla swojego konta w Google. Podczas dodawania nowej domeny otrzymałem komunikat: „Nie masz dostępu do usługi Narzędzie dla webmasterów”. Niestety znalezienie tej opcji zabrało mi sporo czasu, menu w panelu administracyjnym na koncie Google nie należy najdelikatniej mówiąc do zbyt intuicyjnych. Druga domena była mi potrzebna dla aliasowania adresów email np. user@how.pl / user@mor.pl. Na przeszkodzie stanął problem aktywacji niby nie związanej z tematem usługi.

Continue reading

spamassassin

Jak wiadomo przed spamem trzeba się bronić wszelkimi możliwymi sposobami. SpamAssasin analizuje nie tylko treść mailów ale także bierze pod lupę adres nadawcy jak również serwer z którego został wysłany mail. Ale nie będziemy się tutaj zajmować jak SpamAssasin analizuje maile pod kątem spamu tylko skupimy się na instalacji i konfiguracji w celu wspólpracy z Postfixem ( Linux Debian ).

Continue reading

Instalacja i konfiguracja SASL na potrzeby serwera SMTP w tym wypadku popularnego POSTFIXa jest w zasadzie koniecznością. W przeciwnym wypadku dajemy otwartą furtkę dla spamerów, którzy będą wykorzystywali nasz serwer poczty wychodzącej w celu masowego rozsyłania niechcianej poczty. A jak wiadomo kwestii bezpieczeństwa nigdy nie należy ignorować. Aby uniknąc tego typu przypadków wykorzystuje się pośrednią warstwę do autoryzacji wysyłanych maili. Bez autoryzacji ( login/hasło ) wysłanie maila nie będzie możliwa. Uwierzytelnienie pobiera loginy i hasła z kont użytkowników na serwerze lub z bazy danych MySQL – według typu instalacji. W poniższym przykładzie konfiguracji POSTFIX dane autoryzacyjne będą pobierane z /etc/passwd.

Continue reading

xcode

Każdy szanujący się programista ma jakiś swój zestaw przykładów czy zestawów ćwiczeń lub innych plików do szybkiego testowania tworzonego kodu. Osobiście mam utworzone katalogi dla jedno-plikowych programików. Dla przykładu w katalogu Exer_C trzymam pliki z kodem źródłowych w charakterze zestawu ćwiczeń lub co ważniejsze przykłady trzymam w katalogu Samples_C – końcówka to oczywiście określa typ języka w tym wypadku ANSI C. O ile w przypadku pracy z edytorem tekstu typu Sublime Text czy Vim nie ma problemu z kompilacją czy uruchamianiem pojedyńczych plików to przy projektach w IDE sprawa nie wygłąda już tak prosto. Oczywiście tworzenie projektu dla każdego pojedyńczego pliku jest wyjątkowo nieefetykwne a możliwości IDE są deleko bardziej rozwinięte od chociażby najbardziej rozbudowanego edytora ( no może poza Vim 😉 ) Poniżej przedstawię jak rozwiązać problem z konfiguracją projektu obejmującego zestaw pojedyńczych plików źródłowych. Tak aby w miarę łatwo można było na nich pracować wykonując kompilację, debugowanie i uruchomianie pojedyńczych plików.

Continue reading

code_signing

Podczas aktualizacji systemu z OS X Lion do Mavericks lub Yosemite napotkałem problem podczas debugowania w środowisku Eclipse C/C++. Pierwsza kwestia dotyczyła tego, że po aktualizacji nie miałem już GDB w systemie a po jego instalacji pojawił się problem z certyfikatami, np. komunikat: „Unable to find Mach task port for process” . Poniżej przedstawiam krok po kroku rozwiązanie owego problemu.

Continue reading

final keyboard

W momencie kiedy nasz projekt jest już gotowy w programie Final Cut Pro X pozostaje nam wyeskportowanie go do jakiegoś polularnego formatu, najczęściej mp4 ( z wykorzystaniem kodeka H.264 ). Niestety podczas kodowania mogą wystąpić problemy i proces zostaje przerwany. Dostajemy komunikat w stylu: „Getting error message in Final Cut Pro X for frame 13142 when sharing” lub „Quick Time Error 50″. W sieci dostępne są różne rozwiązania ale nie każde może zakończyć się sukcesem.

Continue reading