Kategoria: Linux

  • FreePBX Dodanie telefonu VoIP Cisco SPA525G2 część 6

    FreePBX Dodanie telefonu VoIP Cisco SPA525G2 część 6

    Po wstępnych ustawieniach naszego FreePBX Asterisk, nadszedł czas na dodanie telefonów VoIP do naszej centralki telefonicznej, byśmy mogli wreszcie zacząć dzwonić. Na pierwszy ogień pójdzie bardzo udany, niedrogi i łatwy w konfiguracji telefon VoIP Cisco SPA525G2. To ulepszona wersja modelu SPA525G, różniąca się jedynie dodaniem komunikacji Bluetooth, dzięki czemu możemy sparować nasz telefon VoIP z dowolnym smartfonem i wygodnie przełączać połączenia na smarfona.

    Cisco SPA525G2 opis telefonu

    Model ten posiada pięć linii telefonicznych – czyli umożliwia prowadzenie do pięciu rozmów telefonicznych jednocześnie. Rozmowy te można wygodnie przełączać między sobą przy pomocy podświetlanych przycisków po prawej stronie ekranu.

    Telefon może być podłączony zasilaczem 5V, lub bezpośrednio ze switcha PoE kablem LAN. Posiada kolorowy wyświetlacz o przekątnej 3.2 cala i rozdzielczości 320×240 pikseli. Telefonem możemy łatwo zarządzać poprzez przeglądarkę internetową.

    Cisco SPA525G2 ustawienie stałego adresu IP

    1. Słuchawka
    2. Głośnik
    3. Dioda informacyjna: Ciągły czerwony – nowa wiadomość na poczcie głosowej, Mrugający czerwony – Połączenie przychodzące.
    4. Wyświetlacz LCD
    5. Podświetlane przyciski linii telefonicznych: Zielony – Linia w trybie gotowości, Czerwony ciągły – Aktywne połączenie, Czerwony mrugający – Połączenie zawieszone, Pomarańczowy – Linia nie jest zarejestrowana w FreePBX, Pomarańczowy mrugający – telefon nie jest połączony do Internetu.
    6. Soft przyciski
    7. Kursor
    8. Przycisk OK
    9. Połączenie z pocztą głosową
    10. Wstrzymanie połączenia
    11. Ustawienia
    12. Wyciszenie mikrofonu
    13. Przycisk głośności
    14. Włączenie trybu głośnomówiącego
    15. Przełączenie na zestaw słuchawkowy
    16. Klawiatura numeryczna

    Po podłączeniu telefonu do naszej sieci LAN, pierwszym krokiem powinno być ustawienie stałego adresu IP, zamiast tego przydzielanego dynamicznie przez serwer DHCP. W tym celu wciskamy na telefonie przycisk Ustawienia, a następnie kursorem przechodzimy do Network Configuration – Connection Type i zmieniamy tryb DHCP na Static IP.

    Teraz musimy ustawić adres IP, bramkę i maskę podsieci. Wciskamy więc Ustawienia, Network Configuration i przechodzimy do ustawień Static IP Address Settings wpisując w podane pola:

    1. Adres IP (IP address), pamiętając, że zarówno nasz telefon, jak i FreePBX i router muszą być w tej samej podsieci. W naszym przypadku router posiada adres 192.168.0.1, a FreePBX posiada adres 192.168.0.178. Jeśli Twoja maska podsieci ma numer 255.255.255.0, to wówczas adres IP telefonu musi być 192.168.0.X, gdzie X jest liczbą od 0 do 255. Oczywiście adres IP w Twojej sieci musi być unikalny, więc nie może to być numer 1, 178, ani żaden już używany w Twojej sieci. 
    2. Maskę podsieci (Subnet mask) – Jeśli nie masz w swojej sieci więcej niż 256 urządzeń sieciowych, to zazwyczaj jest to 255.255.255.0
    3. Bramę domyślną (Gateway address) – Adres IP Twojego routera
    4. DNS 1, oraz DNS 2– możesz wpisać adres IP dowolnych serwerów DNS, na przykład 1.1.1.1, 8.8.8.8, lub 8.8.4.4

    Na koniec zapisujemy ustawienia wciskając przycisk pod napisem Set

    Cisco SPA525G2 usawienia telefonu w przeglądarce internetowej

    Gdy już ustawiliśmy stały adres IP naszego telefonu, to uruchamiamy na komputerze przeglądarkę internetową i wpisujemy adres IP naszego telefonu. Zobaczymy wówczas okno z informacjami o naszym telefonie, ale jedynie w trybie użytkownika, z poziomu którego nie będziemy mogli wprowadzić zmian potrzebnych do połączenia go z naszym FreePBX. Aby to zrobić, musimy przełączyć się w tryb administratora, klikając link Admin login w prawym górnym rogu i wpisując hasło. Jeśli nikt nie zmienił hasła, to domyślny login to admin i hasło admin.

    Po zalogowaniu się w tryb administratora przechodzimy do zakładki Ext 1, gdzie musieli będziemy wpisać kilka opcji aby połączyć nasz telefon z FreePBX:

    1. Proxy – wpisujemy tutaj adres IP naszego FreePBX
    2. Register – ustawiamy na yes.
    3. Display Name – wpisujemy tutaj dowolną nazwę która będzie identyfikować nasz telefon. 
    4. User ID – tutaj musimy wpisać numer naszego Extension z FreePBX, które utworzyliśmy w poprzednim artykule.
    5. Password – Wpisujemy tutaj hasło które utworzyliśmy, tworząc Extension w FreePBX w polu Secret.

    Zapisujemy zmiany przyciskiem Submit All Changes. Pozostałe pola są w tej chwili nieistotne.

    Uwaga: Upewnij się, że pisałeś poprawny numer Extension w polu User ID i hasło Secret w polu Password. Bez tego telefon nie zarejestruje się poprawnie w FreePBX.

    Po chwili telefon się zrestartuje i jeśli wszystkie dane wpisałeś poprawnie, to telefon powinien się już połączyć z FreePBX, a na wyświetlaczu powinieneś zobaczyć ikonki telefonów, tak na zdjęciu poniżej.

    Jeśli wpisane dane są niepoprawne, lub z innych powodów telefon nie może się zarejestrować w FreePBX, wówczas zobaczysz na wyświetlaczu podniesione słuchawki z wykrzyknikami, a przyciski linii telefonicznych będą się świecić na czerwono, tak jak na zdjęciu poniżej.

    Cisco SPA525G2 konfiguracja linii telefonicznych

    Domyślnie telefon Cisco SPA525G2 wszystkie 5 linii telefonicznych ma podpięte pod jedno Extension w FreePBX. Ale nic nie stoi na przeszkodzie, żeby nasz telefon miał przypisanych 5 różnych numerów wewnętrznych.

    Uwaga: Ba! Nic nie stoi na przeszkodzie żeby nasz telefon obsługiwał 5 różnych stacjonarnych numerów telefonów, jeśli mamy 5 serwerów FreePBX podłączonych do 5 wirtualnych numerów stacjonarnych, ale to już historia na inny artykuł.

    Aby ustawić różne numery wewnętrzne w jednym telefonie, dla każdej z 5 linii telefonicznych, musimy oczywiście posiadać 5 różnych Extensions w FreePBX. Jak to zrobić, dowiesz się z naszego poprzedniego poradnika na temat Extensions.

    Jeśli mamy już utworzone w FreePBX dodatkowe Extensions, to możemy przejść do zakładki Ext 2 wpisując w przeglądarce adres IP naszego telefonu (Nie zapomnij przełączyć się w tryb Administratora) i w oknie User ID i Password wpisujemy numer i Secret naszego drugiego Extension, w polu Proxy wpisujemy ponownie adres IP naszego FreePBX i zatwierdzamy zmiany przyciskiem Submit All Changes.

    Podobne czynności wykonujemy dla pozostałych linii telefonicznych w zakładkach Ext 3, Ext 4 i Ext 5.

    Następnie przechodzimy do zakładki Phone i zmieniamy numery w polu Line Key dla każdej linii telefonicznej.

    Cisco SPA525G2 Przyjazne nazwy zamiast numerów Extensions

    Domyślnie telefon Cisco SPA525G2 wyświetla na wyświetlaczu numery Extensions (korzystając ze zmiennej $USER), zamiast przyjaznych nazw – na przykład Recepcja, Dział Techniczny, czy Dział zamówień. Czasami z jednego telefonu korzysta kilku pracowników i możemy im przypisać oddzielne numery wewnętrzne z ich imionami. Aby to zmienić, musimy ponownie przejść do zakładki Phone w przeglądarce i zmienić pole Short Name przypisane dla każdej linii telefonicznej. Po zatwierdzeniu zmian przyciskiem Submit All Changes, na naszym wyświetlaczu powinny pojawić się już przyjazne nazwy. 

    Dodatkową zaletą takiego rozwiązania jest to, że teraz gdy dany pracownik lub dział będzie dzwonił na inne numery wewnętrzne, to u odbiorcy połączenia oprócz numeru Extension pojawi się również przyjazna nazwa danej linii wewnętrznej.

    Podsumowanie

    Zarejestrowaliśmy właśnie swój pierwszy telefon VoIP w FreePBX. Co prawda jeszcze nie możemy wykonywać połączeń na numery stacjonarne, ani komórkowe (tym zajmiemy się w jednym z kolejnych artykułów), ale już możemy wykonywać połączenia na numery wewnętrzne w firmie – o ile posiadamy kilka telefonów VoIP.

    Telefon Cisco SPA525G2 to najwyższy model serii SPA5xx, bardzo przyjemny w obsłudze i łatwy w konfiguracji. Jednak nie z każdym telefonem Cisco tak jest. Dla przykładu, świetny model VoIP Cisco 9971 z dużym dotykowym wyświetlaczem i możliwością dołączenia kamery konfiguruje się o wiele trudniej, gdyż nie zmieniamy jego ustawień z poziomu przeglądarki internetowej, ale przy każdej zmianie parametru musimy utworzyć plik konfiguracyjny i wysłać go do telefonu poprzez wbudowany w telefon serwer TFTP. Ale to już opowieść na zupełnie inny artykuł.

    Dlatego też jeśli nie masz dużego doświadczenia w konfiguracji telefonów VoIP i FreePBX, przed zakupem upewnij się, że Twój nowy telefon będzie „FreePBX Friendly”

    Cisco 9971
  • FreePBX Extensions część 5

    FreePBX Extensions część 5

    Extensions, to między innymi wszystkie telefony podłączone do naszego FreePBX Asterisk. Nie jestem pewien, czy w FreePBX tłumaczy się Extensions na polskie „Rozszerzenia”, pozostawiam więc oryginalną angielska pisownię.

    Musisz wiedzieć, że jest kilka rodzajów sterowników Extensions:

    • PJSIP – Unowocześniona wersja sterownika SIP. Działa z większością nowych telefonów VoIP (Na przykład Cisco SPA525G2)
    • Chan_SIP – Sterownik  SIP działająca z większością starszych modeli telefonów VoIP (Na przykład Cisco CP-9971)
    • DAHDi – (Digium Asterisk Hardware Device Interface) Dawniej nazywany Zaptel, to sterownik obsługujący telefony firmy Digium (Aktualnie firma nazywa się Sangoma) (Na przykład model Digium D60)
    • IAX2 – (Inter-Asterisk eXchange) to protokół opracowany z myślą o łączeniu się różnych serwerów Asterisk między sobą.
    • Virtual – Wirtualne extensions, to na przykład poczta głosowa.

    Applications – Extensions

    Aby zarządzać extensions, przejdź do ApplicationsExtensions. Aby dodać nowe Extension, kliknij na Add Extension i wybierz rodzaj sterownika, lub interfejsu z listy. Skonfigurujemy teraz nowe Extension na przykładzie telefonu Cisco SPA525G2.

    • Możemy kliknąć Add Extension i wybrać New SIP [chan_pjsip] Extension
    • Lub skorzystać z opcji szybkiego tworzenia extension klikając Quick Create Extension

    Na początek spróbujmy skorzystać z drugiej opcji szybkiego tworzenia Extension.

    • Type – wybierz SIP [chanpjsip]
    • Extension number – Numer Extension. Wybierz dowolny trzy lub czterocyfrowy numer. Będzie to numer wewnętrzny naszego telefonu.
    • Display Name – Dowolna nazwa naszego extension (Na przykład Recepcja, Dział Techniczny, Andrzej Majewski itp) . Ta nazwa na wyświetlaczach niektórych telefonów będzie się pokazywać zamiast numeru Extension.
    • Outbound Caller ID – Omówimy to póżniej. Pozostaw to pole na razie puste.
    • Email Address – Adres email przypisany do tego numeru

    Klikamy Next by przejść do kroku 2

     

    • Enable Find Me/Follow Me – Funkcją Follow Me zajmiemy się w jednym z kolejnych artykułów, a na razie pozostaw tę opcję wyłączoną.
    • ParkingLot – To funkcja umożliwiająca parkowanie połączeń, by móc je odebrać na innym telefonie. W darmowej wersji masz tylko jedną opcję.
    • Create User Manager User – Ta opcja utworzy nam nowego użytkownika dla tego Extension.
    • User Manager Groups – Wybieramy grupę dla naszego użytkownika. Domyślnie jest utworzona tylko jedna grupa All Users. Jeśli mamy wielu pracowników z różnymi uprawnieniami, możemy w FreePBX utworzyć kilka grup i ustawić dla nich różne uprawnienia – na przykład które grupy mają możliwość odsłuchiwania nagrań, które grupy mogą tworzyć nowe Extensions itd.
    • Enable Voicemail – Utworzenie poczty głosowej dla tego Extension
    • Voicemail PIN – PIN konieczny do odsłuchania nagranych na poczcie głosowej wiadomości

    Uwaga: domyślny PIN jest taki sam jak numer Extension. Oznacza to, że podczas pierwszego połączenia z pocztą głosową, użytkownik będzie ją mógł skonfigurować, nagrywając na przykład swoje powitanie i zmienić PIN na swój własny. Jeśli w przyszłości ponownie ustawisz PIN na taki sam jak numer Extension, to ustawienia skrzynki głosowej dla tego Extension zostaną usunięte i użytkownik będzie mógł skonfigurować skrzynkę od nowa.

    Aby zakończyć tworzenie nowego Extension, wciśnij Finish i koniecznie wciśnij Apply Config w prawym górnym rogu aby zapisać nowe ustawienia.

    Edycja Extensions

    Gdy już utworzyliśmy Extensions dla wszystkich telefonów wewnętrznych w firmie, sprawdźmy jakie opcje oferują ustawienia. Przejdź do ApplicationsExtensions i wciśnij przycisk Edit przy Extension które chcemy edytować, jak pokazano na rysunku poniżej.

    Pokaże nam się okno z szeregiem przydatnych opcji zakładek. Omówmy teraz te opcje, o których nie wspominaliśmy wcześniej.

    Extensions – General

    • Outbound CID – Do naszego FreePBX jest przypisany jeden zewnętrzny numer telefoniczny – dajmy na to numer kierunkowy warszawski 022. Mimo tego, że nasi pracownicy są rozsiani po całej Polsce – w Poznaniu, Radomiu i Zielonej Górze, ale jako że są połączeni do jednego serwera FreePBX, to dzwoniąc do klientów, wszystkim klientom pokaże się warszawski numer telefonu przypisany do naszego FreePBX. Ze statystyk wynika, że klienci o wiele chętniej odbierają telefony, gdy dzwoni do nich ktoś z lokalnego numeru kierunkowego. W oknie Outbound CID możemy wpisać numery telefonów z numerami kierunkowymi naszego miasta.
    • Emergency CID – Tutaj sprawa ma się podobnie do Outbound CID, ale jest o wiele poważniejsza, bo dotyczy dzwonienia na numery ratunkowe. Wyobraź sobie, że nasz pracownik który pracuje w oddziale w Zielonej Górze potrzebuje pilnej pomocy medycznej i musi zadzwonić z tego Extension na numer ratunkowy. Wybiera więc numer pogotowia ratunkowego 999, jednak na pogotowiu zamiast numeru z Zielonej Góry wyświetla się numer warszawski i karetka zamiast jechać do potrzebującego pomocy do Zielonej Góry, jedzie na adres firmy do Warszawy. Do tego właśnie służy opcja Emergency CID, by w razie awaryjnej sytuacji służby ratunkowe mogły właściwie zlokalizować dzwoniącego.
    • Secret – To tajny numer który będziesz musiał wpisać w ustawieniach telefonu VoIP, aby mógł on się połączyć z naszym FreePBX Asterisk.  Tę opcje szerzej omówimy innym razem.
    • Language Code – Tutaj wybieramy język naszych nagrań głosowych używanych w FreePBX Asterisk. Jeśli nie widzisz tam języka polskiego, zainstaluj go przechodząc do AdminSound Languages

    Uwaga: Dodatkowe nagrania dźwiękowe ( Na przykład: „Proszę czekać”, „Wszyscy nasi konsultanci są zajęci” itp) możesz nagrać samemu i przesłać do FreePBX, lub też możesz kupić gotowe nagrania na przykład na stronie Westany. Język nagrań głosowych można ustawić dla każdego Extension niezależnie. Jeśli więc mamy w firmie osoby różnych narodowości, każdy z nich będzie mógł słyszeć komunikaty w swoim ojczystym języku.

    • Select User Directory – Ustawienia katalogu użytkownika. Pozostaw domyślne ustawienie PBX Internal Directory. Druga opcja Property Management jest wykorzystywana w hotelach, gdzie wymagane są specjalistyczne funkcje, jak meldowanie i wymeldowanie gości, zamawianie budzenia, rezerwacje, mini bar itp. W tym artykule nie będziemy się tym zajmować, bo ten temat jest zbyt obszerny jak na jeden artykuł.
    • Link to a Default User – Domyślnie użytkownik jest przypisany do danego Extension. Wybierz użytkownika z opcją Linked.
    • Username – Nazwa użytkownika będzie przypisana automatycznie, lub też możesz stworzyć własną nazwę użytkownika klikając na Use Custom Username.
    • Password For New User – Hasło przypisane do użytkownika
    • Groups – Grupy do których należy użytkownik

    Extensions – Voicemail

    Omówmy teraz najważniejsze opcje z zakładki Voicemail, gdzie możemy zarządzać ustawieniami poczty głosowej przypisanej do tego konkretnego Extension.

    Enabled – Włączamy i wyłączamy skrzynkę głosową dla tego Extension

    • Voicemail Password – Hasło potrzebne by móc odsłuchać zapisane wiadomości głosowe
    • Require From Same Extension – Wyłączenie konieczności wprowadzania hasła, jeśli odsłuchujemy wiadomości głosowe dla Extension z którego akurat dzwonimy.

    Tutaj trochę wyjaśnienia. Z każdego telefonu w naszej sieci możemy odsłuchać wiadomości głosowe nie tylko dla numeru z którego korzystamy, ale także możemy odsłuchać zapisane wiadomości każdego innego numeru, o ile znamy hasło do skrzynki głosowej. Wybierając

    1. *97 – odsłuchamy zapisane wiadomości dla telefonu z którego korzystamy. Opcją Require From Same Extension możemy wyłączyć konieczność wpisywania hasła
    2. *98 i numer Extension – możemy odsłuchać wiadomości ze skrzynki głosowej z innego Extension, ale wówczas zawsze będziemy musieli podać hasło do skrzynki głosowej.
    • Email Address – Adres email na który będą przychodzić powiadomienia o nowej wiadomości na skrzynce głosowej
    • Email Attachment – Jeśli włączysz tą opcję, to zapisana wiadomość głosowa zostanie wysłana mailem wraz z powiadomieniem o nowej wiadomości.
    • Play CID – Do wiadomości zostanie dołączona informacja o nadawcy wiadomości
    • Play Envelope – Do wiadomości zostanie dołączona informacja o czasie i dacie zostawienia wiadomości
    • Delete Voicemail – Włącz tą opcję, jeśli chcesz aby po wysłaniu do Ciebie email z wiadomością głosową, FreePBX skasował tę wiadomość z Twojego Extension. 

    Uwaga: Miej na uwadze, że FreePBX przed usunięciem wiadomości ze skrzynki głosowej nie sprawdza, czy email z tą wiadomością dotarł do Ciebie. Jeśli z jakiegoś powodu email z tą nagraną wiadomością nie dotrze do Ciebie, to nie będziesz miał możliwości odsłuchania tej wiadomości, a być może nawet nie będziesz wiedział, że klient jakąkolwiek wiadomość dla Ciebie nagrał.

    • VmX Locater – To dość ciekawa funkcja. Możemy nagrać spersonalizowane powitanie na naszej poczcie głosowej o dzwoniący będzie mógł wybrać jedną z trzech opcji do wyboru. Będzie mógł na przykład połączyć się z głównym telefonem w firmie (Na przykład w recepcji), lub też będzie mógł przekierować rozmowę na inne Extension, lub na przykład na numer komórkowy. Poprawne skonfigurowanie tej funkcji jest czasochłonne i nie będziemy się tym zajmować w tym artykule.

    Extensions – Find Me / Follow Me

    Wyobraź sobie sytuację, że często nie ma Cię w biurze, jesteś w innej części firmy, lub poza nią. Możesz wówczas skonfigurować funkcję Find Me/Follow Me tak, aby po kolei dzwoniła na ustawione numery wewnętrzne, lub komórkowe, by spróbować Cie znaleźć. Funkcję tę możesz skonfigurować według dat i godzin z kalendarzem Microsoft Outlook, CalDAV, lub Apple iCal. Konfiguracja tej funkcji wykracza poza zakres tego artykułu, więc postaram się napisać osobny artykuł specjalnie na potrzeby funkcji Find Me/Follow Me.

    Extensions – Advanced

    Zakładka Advanced zawiera szereg przeróżnych funkcji. Jest ich zbyt dużo, by omówić je w jednym artykule, ale jest jedna ciekawa opcja którą warto wspomnieć:

    • Max Contacts – Standardowo do jednego Extension możesz podłączyć tylko jeden telefon. Przy pomocy tej opcji możesz ustawić, ile różnych urządzeń ma mieć ten sam numer wewnętrzny (numer Extension). Możesz ustawić dowolną liczbę telefonów wewnętrznych (Włączając w to aplikacje SoftPhone zainstalowane na smartfonach) z tym samym numerem, które dzwonić będą jednocześnie. Ale jest pewien haczyk – aby skonfigurować kilka telefonów z tym samym numerem Extension, musisz je skonfigurować przy pomocy aplikacji End Point Manager. W darmowej wersji możesz konfigurować jedynie telefony firmy Sangoma (dawniej Digium). Listę obsługiwanych modeli znajdziesz w zakładce Other. Wersja End Point Manager Pro, która kosztuje na dzień dzisiejszy $199 umożliwia skonfigurowanie kilku urządzeń z tym samym numerem innych producentów.

    Extensions – Pin Sets

    W ustawieniach FreePBX Asterisk możesz zablokować kodem PIN wykonywanie niektórych połączeń – na przykład połączenia za granicę, lub na drogie numery specjalne. Jeśli ustawiliśmy takie blokownie połączeń PIN, to włączając dla jakiegoś Extension opcję Pinless Dialing, połączenia z tego numeru nie będą potrzebować wpisywaniu kodu PIN. Szerzej ten problem omówimy innym razem.

    Masowa edycja ustawień – Bulk Handler

    Bulk Handler nie odnosi się sctricte do Extensions, ale warto wspomnieć o tej funkcji, bo bardzo ułatwia życie. Jeśli masz kilkanaście, kilkadziesiąt, kilkaset lub więcej Extensions i musisz w każdym z tych Extension zmienić jedną funkcję, to zmiana tej funkcji w każdym z Extension z osobna może zająć bardzo dużo czasu. O wiele szybciej zrobisz to przy pomocy Bulk Handler. Przy pomocy tej funkcji wyeksportujesz wszystkie Extensions do pliku CSV, który możesz otworzyć i edytować wygodnie w aplikacji Microsoft Excel. Zmiana jednej funkcji dla wszystkich Extensions zajmie kilka sekund, zamiast kilku godzin. Po edycji pliku możesz jednym kliknięciem zaimportować plik do FreePBX i zatwierdzić zmiany. Czyż to nie prostsze? 

    Przy pomocy Bulk Handler możesz edytować w ten sposób nie tylko Extensions, ale również wiele innych opcji. Aby uruchomić tę aplikację kliknij AdminBulk Handler.

    Podsumowanie

    W tym artykule nauczyłeś się tworzyć i edytować Extensions – to niezbędny krok, by móc później połączyć je z telefonami VoIP. Wiesz już też jak działają skrzynki głosowe.

  • FreePBX Kopia bezpieczeństwa Backup tworzenie i przywracanie część 4

    FreePBX Kopia bezpieczeństwa Backup tworzenie i przywracanie część 4

    Jak ważna jest kopia bezpieczeństwa przekonał się ten, kto choć raz w życiu musiał odzyskiwać pliki z uszkodzonych nośników danych. Administratorzy serwerów dzielą się na dwa rodzaje: Ci którzy wykonują kopie bezpieczeństwa, i Ci którzy będą wykonywać kopie bezpieczeństwa. W tym artykule nauczymy się tworzyć backup lokalnie, na serwerze FTP, na DropBox i Amazon S3, oraz przesyłać je na adres email i poprzez SSH.

    Settings – Filestore

    Na początek przejdźmy do okna SettingFilestore. W tym oknie mamy kilka zakładek, w zależności od tego gdzie chcemy umieszczać pliki z naszymi kopiami zapasowymi.

    Settings – Filestore – Local

    Na początek zajmiemy się tworzeniem backup lokalnie na dysku twardym na którym masz zainstalowany system FreePBX. Kopia lokalna przydaje się wtedy, gdy chcesz przetestować różne ustawienia FreePBX i boisz się, że po zmianie ustawień Twoja centralka telefoniczna przestanie działać poprawnie. Pamiętaj jednak, żeby poza kopiami lokalnymi, tworzyć również kopie bezpieczeństwa przesyłane zdalnie na serwer FTP, Dropbox itp. Gdyż lokalna kopia bezpieczeństwa będzie bezużyteczna, gdy dysk twardy na którym zainstalowany jest FreePBX ulegnie awarii.

    Przejdź do zakładki Local i kliknij przycisk Add local path. Pojawi się nowe okno, gdzie musisz wpisać: 

    • Path name – Nazwa ustawień dla Twojego Filestore. Może być dowolna, na przykład Kopia lokalna
    • Description – Dowolny opis, na przykład Lokalna kopia na dysku twardym
    • Path –  Ścieżka na dysku twardym, gdzie będą przechowywane kopie bezpieczeństwa. Jako ścieżkę, możemy wykorzystać tutaj zmienne proponowane przez FreePBX. Na przykład zmienna __ASTSPOOLDIR__ (pamietaj, że przed zmienną i na końcu są po dwa znaki podkreślenia) oznacza folder /var/spool/asterisk/ i na końcu możemy dopisać backup, żebyśmy wiedzieli, że pliki w tym folderze to kopia bezpieczeństwa. Czyli wpis __ASTSPOOLDIR__/backup oznacza dokładnie to samo co /var/spool/asterisk/backup
    Na koniec nie zatwierdź zmiany przyciskiem Submit.

    Settings – Filestore – FTP

    Jeśli masz dostęp do jakiegoś serwera FTP, koniecznie skorzystaj z opcji wysyłania kopii bezpieczeństwa na ten serwer. To znacznie podnosi bezpieczeństwo Twojej centralki telefonicznej FreePBX, gdyż jeśli wykonujesz kopię zapasową wyłącznie lokalnie, to w razie awarii dysku twardego na którym zainstalowany jest FreePBX, wszystkie lokalne kopie bezpieczeństwa również zostaną utracone. Jeśli nie wiesz jak samemu utworzyć serwer FTP w domu, możesz wykupić niedrogo miejsce na serwerze w chmurze, na przykład na Zetohosting gdzie w ramach hostingu otrzymasz również dostęp do serwera FTP.

    Najpierw w oknie Filestore w zakładce FTP wpiszemy ustawienia które pozwolą nam zalogować się na serwer. Kliknij przycisk Add FTP Instance i w nowym oknie wypełnij wymagane pola:

    • Enabled – Tym przyciskiem włączasz i wyłączasz magazyn danych
    • Server Name – Dowolna nazwa Twojego magazynu danych
    • Description – Dowolny opis
    • Hostname – Adres IP Twojego serwera FTP, lub nazwa domeny
    • Port – Port na którym pracuje twój serwer FTP
    • Use TLS – Jeśli Twój serwer FTP wymaga szyfrowania SSL TLS, włacz tę opcję
    • Username – Nazwa użytkownika serwera FTP
    • Password – Hasło
    • Filesystem type – Jeśli wiesz na jakim systemie operacyjnym pracuje Twój serwer FTP, wybierz odpowiednią opcję. Jeśli nie jesteś pewien, zaznacz Auto.
    • Path – Ścieżka dostępu, gdzie będą zapisywane kopie zapasowe. Uwaga: podaj pełną ścieżkę dostępu (czyli zaczynającą się od znaku /), inaczej Twój Filestore nie będzie działał.
    • Transfer Mode – Wybierz tryb Aktywny, lub Pasywny swojego serwera FTP
    • Timeout – Czas bezczynności w sekundach, po którym nastąpi zerwanie połączenia z serwer FTP.

    Wszystkie potrzebne do skonfigurowania połączenia FTP dane, powinieneś otrzymać od swojego dostawcy serwera FTP.

    Admin – Backup & Restore

    Gdy mamy już utworzone miejsce gdzie będziemy zapisywać pliki, możemy przejść do okna AdminBackup & Restore i w zakładce Backup kliknij Add Backup, aby skonfigurować nowy backup. Do swoich potrzeb w przypadku FreePBX ustawiam zazwyczaj tworzenie kopii miesięcznych i tygodniowych i ustawiam, by zachowywane były trzy ostatnie kopie tygodniowe i po jednej z ostatnich trzech miesięcy. Ale oczywiście nic nie stoi na przeszkodzie byś tworzył kopie codziennie, lub co kwartał. Wszystko zależy od tego ile miejsca na dysku twardym możesz przeznaczyć na kopie bezpieczeństwa. Na początek ustawimy miesięczne backupy. 

    Basic Information – Podstawowe informacje

    • Backup name – Dowolna nazwa, na przykład Kopie miesieczne  (Warto wystrzegać się w nazwie polskich znaków. Dlaczego? Wyjaśnię za chwilę.)
    • Backup Description – Dowolny opis, na przykład Zachowaj kopie z ostatnich 3 miesięcy.
    • Backup Items – wybierasz które moduły FreePBX mają być zachowane w kopii bezpieczeństwa. Na początek dobrym wyborem będzie tworzenie kopii zapasowej wszystkich modułów. Nic więc tam nie zmieniaj.
    • Custom Files – Jeśli skopiowałeś do swojego FreePBX jakieś pliki ręcznie (na przykład przez FTP) i są one przechowywane poza folderami FreePBX Asterisk, a chcesz by były one również zachowane na kopii bezpieczeństwa, musisz powiedzieć FreePBX gdzie one się znajdują. Jeśli nie kopiowałeś żadnych dodatkowych plików do FreePBX, nie musisz się tym przejmować.

    Notifications – Powiadomienia

    • Notification Email – Twój adres email na które będą wysyłane powiadomienia o zakończonym backup, lub błędach podczas tworzenia kopii bezpieczeństwa.
    • Inline Logs – umieszcza w wiadomości email logi z przebiegu wykonania backup
    • Email Type – Wysyła powiadomienie email tylko w przypadku jeśli tworzenie kopii zakończyło się sukcesem (Success), zakończyło się błędem (Failure), lub też wysyłanie powiadomienia mailem w obu przypadkach (Both)

    Storage – Magazyn na kopie

    • Storage location – Tutaj wybieramy miejsce – które utworzyliśmy wcześniej w oknie Filestore – gdzie będą przechowywane nasze kopie bezpieczeństwa. W naszym przypadku będzie to Kopia lokalna
    • Append Backup Name as a directory to the Storage path – Dodaj nazwę kopii zapasowej, to ścieżki gdzie będą zapisywane pliki. Jeśli włączysz tą opcję, to w katalogu gdzie będą zapisywane nasze kopie (W naszym przypadku będzie to /var/spool/asterisk/backup/) utworzy się dodatkowy katalog z nazwą naszej kopii, czyli w tym przypadku będzie to  Kopie miesieczne. Pozwoli nam to zachować porządek w kopiach zapasowych i w razie awarii łatwiej znaleźć kopię na której nam zależy. Dlatego też wspomniałem wcześniej, by w nazwie unikać polskich znaków diakrytycznych, by uniknąć problemów z kodowaniem znaków.

    Schedule and Maintenance – Harmonogram i zarządzanie

    Tutaj ustawiamy, czy chcemy by kipie wykonywane były automatycznie w zaprogramowanych przez nas odstępach czasu.

    • Enabled – włączenie harmonogramu kopii zapasowych
    • Scheduling – Ustawienie częstotliwości wykonywania kopii. Możemy ustawić wykonywanie backup co godzinę, codziennie, raz w tygodniu, co miesiąc, lub co rok.

    Maintenance – Zarządzanie

    W tej sekcji ustawiamy ile kopii chcemy zachować na dysku i kiedy niepotrzebne kopie mają być usuwane.

    • Delete After Runs – Ustawiamy tutaj jaką liczbę ostatnich kopii chcemy zachować na dysku. W naszym przypadku chcemy zachować 3 ostatnie kopie. Wszystkie kopie powyżej trzech będą usuwane. Jeśli ustawimy 0, to kopie nie będą kasowane w ogóle.
    • Delete After Days – Możemy tutaj ustawić również czas, po jakim kopie będą usuwane, niezależnie od tego ile kopii na dysku posiadamy. Sugeruję ustawić tutaj Unlimited, czyli bez ograniczeń czasowych.

    Uwaga: Jeśli ustawimy w pierwszej opcji 0, a w drugiej Unlimited, to kopie nigdy nie będą kasowane. Jako że kopie zapasowe mogą być pokaźnych rozmiarów, może się okazać, że szybko zapełnimy sobie miejsce na dysku. 

    Hooks

    W tym miejscu możemy ustawić, co komputer ma robić przed, lub po wykonaniu lub odtworzeniu kopii. Możesz na przykład po wykonaniu kopii kompresować je, lub przesyłać na serwer zdalny. Możesz też kopiować wykonane backupy na podłączony pendrive – w tym celu w tym oknie możesz go zamontować przed wykonaniem kopii, by  możliwe było jej skopiowanie. Jeśli do tej pory nie pisałeś skryptów w systemie Linux, nie musisz sobie tym zaprzątać głowy. 

    Warm Spare

    Jeśli nasza centralka telefoniczna FreePBX obsługuje dużą firmę i nie możecie pozwolić sobie na żadne przestoje, można zainstalować drugi serwer FreePBX, który będzie synchronizowany z główną centralką, aby w momencie awarii móc szybko przełączyć naszą telefonię na zapasowy serwer FreePBX. Jeśli nie masz dwóch serwerów FreePBX, możesz pominąć te opcje.

    Save – Zapisanie ustawień

    Na koniec zapisujemy nasze ustawienia przyciskiem Save.

    Ręczne wykonanie kopii bezpieczeństwa

    Po zapisaniu ustawień, możesz sprawdzić, czy kopia wykonuje się poprawnie i uruchomić wykonanie backup ręcznie. W tym celu wciśnij przycisk strzałki, jak pokazano na poniższym obrazku.

    Jeśli wszystkie ustawienia są poprawne, powinieneś w logach programu zobaczyć komunikat: Finished created backup file

    Aby się dodatkowo upewnić, że kopia zapasowa została utworzona, możesz zalogować się do konsoli FreePBX przez SSH i sprawdzić ścieżkę zapisu kopii zapasowych – w naszym przypadku będzie to /var/spool/asterisk/backup/

    Przejdź do katalogu kopii zapasowych komendą cd /var/spool/asterisk/backup/ i wyświetl zawartość katalogu: ls Jak widzisz na załączonej ilustracji, utworzył się dodatkowy podfolder Kopie-miesieczne. Otwórz ten folder komendą cd Kopie-miesieczne i wyświetl zawartość tego katalogu komendą ls. Jak widzisz, wewnątrz tego katalogu utworzyła się poprawnie kopia zapasowa.

    Admin – Backup & Restore – Restore – Przywracanie kopii bezpieczeństwa

    Po utworzeniu naszej pierwszej kopii, powinniśmy móc ją zobaczyć w zakładce Restore. Przy każdej kopii zapasowej jest okno Actions, gdzie możemy przywrócić kopię zapasową, pobrać kopię na dysk twardy naszego komputera, lub usunąć kopię. Po pobraniu kopii na dysk twardy komputera, w razie problemów można ją ponownie wgrać na serwer w oknie Upload your restore files i klikając na przycisk Click to upload a backup file.

    Aby skorzystać z opcji Restore from the cloud, musimy najpierw skonfigurować Filestore, aby mieć dostęp do usług zapisu plików w chmurze.

    Podsumowanie

    Wiesz już jak automatycznie tworzyć i przywracać kopie zapasowe zarówno na dysku lokalnym, jak i na zdalnym serwerze FTP. Teraz w razie jakiejkolwiek awarii możesz łatwo przywrócić do działania swoją centralkę telefoniczną FreePBX.

  • Luki bezpieczeństwa w OpenLiteSpeed i LiteSpeed Enterprise

    Luki bezpieczeństwa w OpenLiteSpeed i LiteSpeed Enterprise

    Programiści z LiteSpeed Technologies zawsze poważnie podchodzili do problemów bezpieczeństwa swoich produktów. Dlatego też, gdy tylko zostały wykryte luki bezpieczeństwa w OpenLiteSpeed i LiteSpeed Enterprise, natychmiast zabrano się do pracy, by je załatać. Luki zostały wykryte przez zespół Unit 42 z Palo Alto Networks i zgłoszone zespołowi z LiteSpeed Technologies.

    Chronologia wydarzeń

    • 4 Października 2022 Unit 42 Team wykrywa luki bezpieczeństwa i powiadamia programistów OpenLiteSpeed i LiteSpeed Enterprise o zagrożeniach
    • 8 Października 2022 programiści LiteSpeed łatają luki, sprawdzając jednocześnie, czy poprawki nie mają negatywnego wpływu na działanie innych funkcji serwera.
    • 12 Października 2022 luki zostały załatane w wersji LiteSpeed Enterprise 6.0.12 build 10
    • 18 Października 2022 luki zostały załatane w wersji OpenLiteSpeed v1.7.16 build 1
    • 20 Października 2022 Zaktualizowany obrazy Docker dla OpenLiteSpeed i LiteSpeed Enterprise

    Szczegóły

    Luki bezpieczeństwa uzyskały oznaczenia:

    • CVE-2022-0072
    • CVE-2022-0073
    • CVE-2022-0074

    CVE-2022-0072

    Luka umożliwiająca atak Directory Traversal – średnie zagrożenie. Luka ta mogła pozwolić osobie atakującej na obejście zabezpieczeń i uzyskanie dostępu do chronionych plików systemowych. Aby atakujący mógł skorzystać z tej luki, musi on znać login i hasło do konsoli WebAdmin. Ponadto, aby atak mógł zakończyć się sukcesem, atakujący musi mieć prawo zapisu do katalogu /usr/local/lsws/admin/html Prawo zapisu do tego katalogu powinien mieć wyłącznie użytkownik root Jeśli jest inaczej, to koniecznie napraw uprawnienia i prawa właściciela tego katalogu.

    CVE-2022-0073

    Atak Remote Code Execution – duże zagrożenie. Aby atak był możliwy, atakujący musi być zalogowany do konsoli WebAdmin. Może on wówczas wstrzyknąć kod umożliwiający zdalne wykonanie złośliwego kodu.

    CVE-2022-0074

    Eskalacja uprawnień – duże zagrożenie. Luka ta występowała jedynie w obrazie Dockera serwera OpenLiteSpeed. Problem dotyczył błędnej konfiguracji zmiennej środowiskowej PATH, gdy użytkownikiem jest nobody. Luka ta wykorzystuje „CWE untrusted search path”. Aby można było skorzystać z tej luki, również wymagane są dane logowania do WebAdmin, ale w tym przypadku problem dotyczy jedynie OpenLiteSpeed i nie występuje w wersji LiteSpeed Enterprise. Aby atak mógł się udać, musi być spełnione kilka warunków. Przede wszystkim, właścicielem katalogu /usr/local/bin musi być użytkownik nobody. W przypadku poprawnej konfiguracji serwera, gdy właścicielem katalogu jest root, atak nie powiedzie się. Ta luka to tak naprawdę wina Dockera, a nie LiteSpeed.

    Naprawa luki bezpieczeństwa

    W przypadku wersji Docker, jeśli masz możliwość edycji katalogu /usr/local/bin, możesz zaktualizować obraz OpenLiteSpeed do najnowszej wersji. Jeśli instalacje były wykonywane ręcznie, zalecana jest ręczna aktualizacja serwera przy pomocy skryptu: $LSWS_PATH/admin/misc/lsup.sh. Instalacje wykonane przy pomocy dowolnego managera pakietów (apt, yum itd) będą załatane automatycznie przy okazji standardowego upgrade pakietów.

    Podsumowanie

    Chroń dostęp do panelu WebAdmin

    Panel WebAdmin OpenLiteSpeed Luki bezpieczeństwa

    Żaden z tych ataków nie powiedzie się, jeśli atakujący nie uzyska dostępu do konsoli WebAdmin. Dlatego tak ważne jest, aby nie udostępniać osobom postronnym naszego loginu i hasła do panelu WebAdmin. Ważne jest również stosowanie trudnego do złamania metodą brute force hasła. Jeśli nie musimy logować się do panelu WebAdmin z internetu, warto zablokować port 7080 w Firewall. Dbaj także o aktualizowanie swojego serwera do najnowszej dostępnej wersji.

  • Jak uruchomić zadanie CRON co godzinę

    Jak uruchomić zadanie CRON co godzinę

    Istnieją pewne zadania na komputerze, które musimy wykonywać regularnie – na przykład wykonywanie kopii bezpieczeństwa. Do wykonywaniu takich powtarzalnych zadań w systemie Linux służy polecenie Cron – jest nieoceniony w wykonywaniu zadań które wymagają planowania. W tym artykule pokażemy Ci, jak skonfigurować crontab, by uruchamiał zadanie cron co godzinę. 

    Co to jest cron?

    Cron, to narzędzie, aplikacja służąca do planowania zadań, uruchamiania aplikacji i skryptów w określonym czasie w systemach operacyjnych typu Unix. Umożliwia on planowanie zadań (cykliczne uruchamianie aplikacji, lub skryptów powłoki) które będą się automatycznie uruchamiać o określonej godzinie i dacie. Zadania te nazywane są zadaniami cron.

    Cron w systemach Linux i Unix jest powszechnie używany do zadań konserwacyjnych lub administracyjnych, jak uruchamianie kopii zapasowych (z możliwością wysłania ich później na przykład na serwer FTP), czy wysyłanie zautomatyzowanych wiadomości e-mail. Cron można również stosować na przykład do sprawdzania dostępności aktualizacji systemu i wielu innych rzeczy.

    Cron do pracy wykorzystuje plik konfiguracyjny o nazwie crontab. Crontab, to zwykły plik tekstowy którego możemy edytować dowolnym edytorem tekstu. Administrator systemu ma możliwość skonfigurować globalny plik crontab z uprawnieniami root, a ponadto każdy z użytkowników może mieć własne ustawienia, ograniczone jednak prawami użytkownika.

    Zadanie cron jest zwykle wykonywane w tle, a jeśli występują jakieś dane wyjściowe, to mogą być wysyłane do użytkownika pocztą e-mail, lub zapisywane do pliku. Cron to potężne narzędzie pozwalające zautomatyzować praktycznie każde zadanie, jednak dla początkujących użytkowników może być trudny w obsłudze, jeśli nie znają składni potrzebnych poleceń.

    Do czego przyda nam się cron?

    Przy pomocy cron, możemy zarządzać praktycznie każdą funkcją komputera, czy serwera i uruchamiać cykliczne zadania o określonej godzinie i dacie. Możemy go wykorzysta na przykład do:

    • Automatyzacja powtarzalnych zadań. Zadanie cron może być używane do automatyzacji zadań w regularnych odstępach czasu, takich jak na przykład uruchamianie kopii zapasowych, lub wysyłania cyklicznych wiadomości e-mail, na przykład z przypomnieniami.
    • Uruchamianie zadań systemowych zgodnie z harmonogramem. Zadanie cron może nam sprawdzać, czy są dostępne aktualizacje systemu operacyjnego, bądź aplikacji, albo na przykład może regularnie czyścić komputer z plików tymczasowych i niepotrzebnych  logów systemowych.
    • Automatyczne wykonywanie aktualizacji systemu, aktualizowanie zabezpieczeń i instalacja nowego oprogramowania. Może to pomóc w lepszym zabezpieczeniu systemu i dzięki temu mamy pewność, że na naszym komputerze, czy serwerze zawsze mamy zainstalowane najnowsze wersje aplikacji i bibliotek.
    • Poprawa wydajności. Dzięki cron, możemy tak skonfigurować uruchamianie zadań mocno obciążających komputer, aby uruchamiały się w godzinach gdy komputer jest najmniej używany, na przykład w nocy.

    Ogólnie rzecz biorąc, cron może nam znacznie usprawnić wykonywanie cyklicznych zadań poprzez ich automatyzację.

    Stwórz zadanie cron w terminalu Linux

    Do tworzenia zadań cron służy polecenie crontab. Aby utworzyć nowe zadanie cron:

    • Otwórz okno terminala
    • Wpisz polecenie crontab -e aby otworzyć plik konfiguracyjne cron.
    • Dodaj nowy wpis do pliku crontab, pamiętając, aby zachować odpowiedni format, gdyż inaczej zadanie nie uruchomi się:

    minuta godzina dzień-miesiąca miesiąc dzień-tygodnia polecenie-do-wykonania

    Gwiazdka zamiast minut, godzin, czy miesiąca oznacza, że to zadanie będzie się uruchamiać każdej godziny, minuty, czy każdego miesiąca. Na przykład, jeśli chcemy, by polecenie, lub skrypt uruchamiał się o każdej pełnej godzinie (czyli w minucie 0) każdego dnia każdego miesiąca, musimy wpisać:

    0 * * * * polecenie-do-wykonania

    • Zapisz plik crontab  i zamknij.
    • Użyj polecenia crontab -l aby wyświetlić listę zapisanych zadań cron do wykonania.

    UWAGA: Składnia poleceń zadań cron może się różnić w zależności od wersji systemu Linux. My bazujemy na systemie Ubuntu. Aby dowiedzieć się więcej o aplikacji cron, wpisz w terminalu man cron

    Jak utworzyć zadanie cron w CyberPanel

    Jeśli Twój serwer www oparty jest na LiteSpeed, to powinieneś zainstalować nakładkę CyberPanel. Tworzenie zadań cron w CyberPanel jest o wiele prostsze i przyjemniejsze niż w pliku crontab.

    • Zaloguj się do Dashboard swojego CyberPanel.
    • Kliknij po lewej stronie Websites, a następnie List Websites i wybierz swoją stronę internetową i kliknij Manage
    CyberPanel Website manage
    • Przewiń w dół i kliknij na Cron Jobs
    CyberPanel WordPress cron jobs
    • Aby dodać nowe zadanie cron, naciśnij ADD CRON. Aby zobaczyć listę istniejących zadań, kliknij FETCH CURRENT CRON JOBS
    CyberPanel Add cron job Fetch
    • Aby dane zadanie uruchamiało się co tydzień, wybierz z listy Every week. W poniższym przykładzie cron uruchomi napisany wcześniej skrypt do wykonywania kopii bezpieczeństwa co tydzień, każdej środy o godzinie 4:16 w nocy. W oknie Day of week wpisujemy cyfry od 0 do 7.
    • 0 i 7 oznacza niedzielę, 1 poniedziałek, 2 wtorek itd
    • Możemy również wpisać dni tygodnia słownie po angielsku: mon, tue, wed, thu, fri, sat, lub sun
    • Naciśnij Add cron aby zapisać utworzone zadanie
    CyberPanel WordPress cron weekly

    Prawda, że w CyberPanel konfiguruje się cron przyjemniej?