www.tres.pl - Baza wiedzy Trawers ERP - Spis treści


Trawers. Linux i Windows. Aspekty techniczne 1. Opis ogólny 2. Linux. Wymagania techniczne 2.1 Serwer (64 bitowy) 2.2 Stacja robocza (terminal) 2.3 Sieć 2.4 Biblioteki Linuxa wymagane przez Trawers 3. Windows. Wymagania techniczne 3.1 Serwer (64 bitowy) 3.2 Stacja robocza (terminal) 3.3 Sieć 3.4 Windows. Wielodostęp 4. Rady praktyczne i zalecenia 4.1 Konieczny tryb terminalowy 4.2 Linux. Serwer i dystrybucja 5. Inne informacje techniczne 5.1 Małe i wielkie litery 5.2 Konfiguracja programu PuTTY 5.3 Konfiguracja programu X2Go 5.4 Udostępnienie katalogu wymiany w programie X2Go 5.5 Automatyczne logowanie do serwera Linux przez PuTTY 5.6 Automatyczne logowanie do Trawersa 5.7 Logowanie do serwera za pomocą kluczy kryptograficznych 5.8 Ograniczenie dostępu do powłoki systemu 6. Tematy powiązane 1. Opis ogólny Trawers występuje w kilku odmianach różniących się technologią wytworzenia i charakterystyką środowiska użytkowania. Różne mogą być: * Platforma systemu operacyjnego serwera i stacji roboczych: Windows lub Linux * Topologia sieci: sieć rozległa WAN lub sieć lokalna LAN * Platforma bazodanowa: bazy xBase Zakres funkcjonalny jest taki sam u wszystkich odmian. Ew. drobne różnice wynikają z uwarunkowań technologicznych i sprzętowych. Identyfikacja Trawers ERP 2. Linux. Wymagania techniczne 2.1 Serwer (64 bitowy) * Konfiguracja serwera dystrybucji Linuksa, np. Centos 7: procesor klasy Intel Core 2 duo 2.2 GHz, pamięć 2GB, aby system operacyjny nie wykorzystywał pamięci swap * Dysk twardy: zależy od ilości danych: min 2 GB; może być IDE * System operacyjny: Centos, Fedora, Mandriva, Debian, PLD, Slackware z wersjami pakietów: GTK 3 >= 3.22 * Wersja Trawers6 GUI wymaga dodatkowo: WebKitGtk dla Gtk3 Trawers6 GUI Instalowanie * Dla TR-MSQ-X i TR-ORA-X: Mediator firmy OTC 2.2 Stacja robocza (terminal) * Komputer z systemem, na którym można uruchomić terminal SSH, np. Windows z programem PuTTY, Linux, stacja bezdyskowa LTSP * Dla wydruków graficznych wymagany przynajmniej Windows 2000 i drukarka obsługiwana przez CUPS 2.3 Sieć * Łącza do pracy w sieci rozległej WAN: zalecane DSL 2.4 Biblioteki Linuxa wymagane przez Trawers Pakiety programowe (biblioteki) systemu Linux Trawers linkuje dynamicznie. (en: Dynamic linking) Informacje o brakujących bibliotekach sygnalizowane są podczas uruchamiania programu Trawers Aby wcześniej sygnalizować ew. braki, już podczas instalowania programu sprawdza się czy w systemie operacyjnym są wszystkie niezbędne biblioteki To zadanie wykonuje polecenie Linuxowe: ldd (List Dynamic Dependencies) umieszczone w skrypcie instalującym ldd można także wywołać 'ręcznie'. Przykłady wywołania i przykładowe komunikaty polecenia ldd podane są w opisie migracji programu Trawers z platformy Windows na platformę Linux Migracja Trawers -W Windows --> -X Linux 3. Windows. Wymagania techniczne 3.1 Serwer (64 bitowy) * Konfiguracja serwera systemu Windows, np. Win7: procesor klasy Intel Core 2 duo 2.2 GHz, pamięć 2GB * Dysk twardy: zależy od ilości danych: min 2 GB; może być IDE * System operacyjny: Windows 7 / 2012 / 8 / 2016 / 10 / 2019 NOTE: W instalacji sieciowej (2 lub więcej stanowisk), stacje robocze muszą łączyć się z serwerem w trybie terminalowym, np. przy zastosowaniu Windows Terminal Services, przez zdalny pulpit lub OTC Winflector. Nie wolno współdzielić katalogów z danymi Trawers w sieci lokalnej Patrz dalej: Konieczny tryb terminalowy Platformy systemowe Tryb terminalowy Można sprawdzić, czy pracuje w trybie terminalowym. Należy włączyć parametr 0823 [1] Diagnostyczny tryb pracy 3.2 Stacja robocza (terminal) * Konfiguracja stacji roboczej systemu Windows, np. Win7: procesor klasy Intel Core 2 duo 2.2 GHz, pamięć 2GB * System operacyjny: Windows 7 / 8 / 10 * Stacje muszą pracować w trybie terminalowym (patrz opis serwera) 3.3 Sieć * łącza dla pracy w sieci rozległej WAN: zalecane DSL 3.4 Windows. Wielodostęp Trawers pracuje z bazami xBase. Bazy xBase są bazami typu: File-based database. Te bazy zapisane są na serwerze i powinny być przetwarzane tylko na serwerze. Nie powinny być przesyłane np. do korekty, do komputera lokalnego (stacji roboczej) (en: Workstation). Nie należy tworzyć instalacji sprzętowo-programowej, w której pliki bazy udostępniane są w sieci lokalnej lub rozległej w trybie współdzielenia danych (en: File sharing) Powodem jest działanie mechanizmu Opportunistic locking (oplock) wbudowanego w oprogramowanie Windows, który może powodować m.in. * problemy z otwieraniem plików * problemy z blokowaniem i zwalnianiem blokowania (en: Lock) rekordów np. może nie być skuteczna funkcja AD > Blokowanie dostępu do programu * utratę danych podczas synchronizacji między stacją roboczą a serwerem. Patrz wiele informacji w internecie: File-based database, oplock Tymczasowym rozwiązaniem może być wyłączenie mechanizmu oplock (en: Disable oplock). Polega na zmianie wpisów w rejestrze (patrz opisy w internecie). Może to robić świadomy administrator. Powinien wziąć jednak pod uwagę, że w oprogramowaniu Windows nie ma panelu konfiguracyjnego dla oplock. I że po wymianie na nową wersję Windows, zmiany wprowadzone do rejestrów mogą być ignorowane przez nową wersję systemu operacyjnego. Opisany problem z wielodostępem nasila się w nowszych systemach, tj. Windows Vista, Windows 7, Windows 10 Objawia się np. przerwaniem pracy z komunikatem: Brak dostępu do zbioru. Lub, co jest znacznie poważniejszym problemem, brakiem zapisów w bazie danych na serwerze. Zapisów, które zostały wprowadzone na stacji roboczej. Prawidłowym rozwiązaniem w Windows jest praca w trybie terminalowym . Platformy systemowe Tryb terminalowy PS: w środowisku Linuxa program pracuje z założenia w trybie terminalowym. 4. Rady praktyczne i zalecenia 4.1 Konieczny tryb terminalowy Instalacje z 2-ma (i więcej) stanowiskami (sesjami) muszą pracować w trybie terminalowym nie tylko w sieci rozległej ale i lokalnej. Dlatego, w instalacji z liczbą sesji (dostępów) 2 i więcej, zaleca się: a) Trawers -X na platformie Linux b) Trawers -W na platformie Windows Serwer, z wykorzystaniem połączenia zdalnego pulpitu Remote Desktop Connection (RDC) lub RemoteApp c) Trawers -W na platformie Windows z dodatkowym programem OTC Winflector (www.winflector.pl) Serwer terminali Winflector NOTE: Można sprawdzić, czy program pracuje w trybie terminalowym Należy włączyć parametr 0823 [1] Diagnostyczny tryb pracy Platformy systemowe Tryb terminalowy 4.2 Linux. Serwer i dystrybucja * Serwerem powinien być dedykowany komputer, który nie pracuje jednocześnie jako stacja robocza * Na serwerze powinny być wyłączone wszystkie niepotrzebne usługi, wygaszacze ekranu, programy antywirusowe * Przy wyborze dystrybucji należy kierować się, prócz podanych wymagań, także: 1. znajomością danej dystrybucji 2. bezpieczeństwem i stabilnością 3. dostępnością pomocy technicznej Platformy systemowe * W firmie wieloodziałowej zaleca się użycie VPN do połączenia oddziałów z centralą. W ustawieniach VPN należy włączyć kompresję danych. Patrz opis: Drukowanie w sieci rozległej WAN > Zastosowanie VPN * Nie zaleca się uruchamiania 32 bitowej wersji programu Trawers na 64 bitowej dystrybucji Linuksa NOTE: Od 2022.07.01 wersja Trawers 5 -X (Linux) 32 bit: nie będzie nowych wydań Informacja jest na ekranie: Ad > Trawers > O programie [AD_TAT10] o-- O programie ---------------------------------------------o | ... | | | | Odmiana programu ........ TR-xxx-X 64 bit <----------- |<-- 64 bit | | | Środowisko pracy ........ Harbour Linux Na dysku 1.5TB | | | | Katalog /home/trawers/tres/trawers/tres-x/tres5-x/adtres | o------------------------------------------------------------o Identyfikacja Trawers ERP 5. Inne informacje techniczne 5.1 Małe i wielkie litery Linux. Małe i wielkie litery są rozróżniane na platformie Linux (-X) (en: Case Sensitive). [MojeHaslo] to nie jest to samo co [MOJEHASLO]. Wartości pól (kolumn) kluczowych (wskazanych jako klucze indeksowe) w tabeli indeksowej zapisane są wielkimi literami (funkcja: upper()) Np. nazwa indeksu KIM: Box1 w tabeli indeksowej zapisana jest: BOX1 W konsekwencji do KIM nie można zapisać nazw: box1, BoX1, itp. 5.2 Konfiguracja programu PuTTY Opis dotyczy programu PuTTY 0.69 https://www.chiark.greenend.org.uk/~sgtatham/PuTTY/releases/0.69.html Najnowsza wersja PuTTY: https://www.chiark.greenend.org.uk/~sgtatham/PuTTY/latest.html Konfiguracja dla programu Trawers Podstawowa konfiguracja sesji dla programu Trawers. Pozostałe parametry można pozostawić domyślne. Category: * Session Host name (or IP address): (podać adres serwera, np. 192.168.1.100) Port: (podać port SSH, zwykle 22) Connection type: [o] SSH * Terminal * Keyboard The Backspace key: [o] Ctrl-H The Home and End keys: [o] Standard The Function keys and keypad: [o] Linux * Window Columns: 80 Rows: 25 * When window is resized [o] Change the number of rows and columns Spowoduje zwiększenie ilości wierszy i kolumn, podczas maksymalizacji lub zmiany rozmiaru okna. Np. ekran może mieć 120 kolumn, Szerokie ekrany NOTE: Cześć funkcji programu dopasowuje się do szerokiego ekranu. Np. zestawienia można oglądać na szerszym ekranie, także niektóre zestawienia tabelaryczne mogą zawierać więcej kolumn niż 80. Przykłady szerokich ekranów PuTTY: Klawisze. Mysz. Ekrany. Dialog [o] Change the size of the font Spowoduje powiększenie czcionki, podczas maksymalizacji lub zmiany rozmiaru okna. [ ] Display scrollbar * Behaviour Window title: (Podać tytuł okna sesji, np. Trawers) [v] Full screen on Alt+Enter * Translation Remote character set: UTF-8 [o] Use Unicode line drawing code points * Connection Seconds between keepalives (0 to turn off): 30 * Data Auto-login username: (Podać nazwę użytkownika na serwerze Linux) Terminal-type string: linux * SSH [v] Enable compression * X11 [v] Enable X11 forwarding 5.3 Konfiguracja programu X2Go Opis dotyczy programu X2Go Client v. 4.1.1.1 https://wiki.x2go.org/doku.php Podstawowa konfiguracja sesji dla programu Trawers. Pozostałe parametry można pozostawić domyślne. Category: * Session Session name: nazwa połączenia, np. Trawers Server: podać adres serwera, np. 192.168.1.100 Login: podać nazwę użytkownika na serwerze Linux SSH Port: podać port SSH, zwykle 22 [ ] Use proxy server for SSH connection Oznaczyć [x] jeżeli połączenie z serwerem jest przez serwer pośredniczący Session type: Single application Command: trawers6 albo trawers6_txt * Connection Connection speed: ustawić zależnie rodzaju i jakości połączenia W pracy w sieci lokalnej: LAN W pracy zdalnej domyślnie: ADSL Jeżeli jakość połączenia wymaga wybrania MODEM warto rozważyć pracę w wersji znakowej z użyciem programu PuTTY Compression: zależnie od szybkości połączenia Format ??-png zapewnia lepszą jakość tekstu niż ??-jpg ?? - to ilość kolorów zwiększanie tego parametru poprawi jakość obrazków, np. załączników e-maili zmniejszenie może przy słabym połączeniu przyspieszyć odświerzanie ekranów zwłaszcza zawierających grafikę 4k-png jest wystarczające do pracy z Trawers * Input/Output Clipboard mode: Bidirectional copy and paste * Media [ ] Enable sound support [x] Client side printing support * Shared folders Tu należy dodać katalogi wymiany plików do których program będzie zapisywał np. wydruki i pobierał załączniki. [x] Use SSH port forwarding to tunnel file system connections... 5.4 Udostępnienie katalogu wymiany w programie X2Go 1. Dla każdego operatora logującego się zdalnie trzeba utworzyć użytkownika na serwerze. Użytkownicy powinni mieć wspólną grupę podstawową: trawers 2. W kliencie X2Go w zakładce katalogi współdzielone (Shared Folders) należy wskazać lokalny katalog, który będzie służył do zapisywania plików. Oznaczyć [x] opcję Automount 3. Ustawić parametr pracy programu 0120 na pracę z podkatalogami operatorów [2] lub pracę ze wspólnym katalogiem wymiany trinout 0120 [ ]. 4. Połączyć katalog współdzielony z katalogiem wymiany trinout Katalog wymiany danych na stacji roboczej W przypadku pracy z podkatalogami operatorów (parametr 0120 [2]) można dowiązaniem symbolicznym zastąpić istniejący katalog operatora. Spowoduje to, że pliki będą zapisywane na stacji roboczej. Niemożliwe będzie logowanie do programu gdy katalog nie będzie dostępny. W przypadku niedostępności katalogu program zgłosi błąd E-17. Po uruchomieniu sesji X2Go trzeba zastąpić katalog wymiany /trinout/aa dowiązaniem symbolicznym do katalogu /tmp/X2Go-użytkownik/media/disk/_katalog_na_stacji_roboczej/ ln -s /tmp/x2go-aa/media/disk/_katalog_na_stacji_roboczej trtres/trinout/aa Podkatalog na stacji roboczej Alternatywą jest zamontowanie podkatalogu współdzielonego w katalogu wymiany /trinout/... sudo mount --bind /tmp/x2go-aa/media/disk/_katalog_na_stacji_roboczej trtres/trinout/AA Ponowne montowanie musi się odbywać każdorazowo po zalogowaniu użytkownika. Można to zautomatyzować dodając wpis do skryptów uruchamiających Trawers. Wymaga to nadania uprawnień do wykonania bez hasła poleceń sudo mount i sudo umount Katalog wymiany pozostaje na serwerze i stąd domyślnie pobierane są pliki. Operator zapisując lub pobierając plik ze stacji roboczej musi wskazać podkatalog: AA Do zapisywania plików z wydrukami na stacji roboczej trzeba dodać urządzenie wyjściowe rodzaju [Polecenie], które umieści plik w podkatalogu stacji roboczej mv -f -t ../trtres/trinout/&symop& &zbior& &zalaczniki& Podkatalog nazwać zgodnie z symbolem operatora: AA, GN, itp. lub wykorzystując nazwę użytkownika systemu: mv -f -t ../trtres/trinout/$USER &zbior& &zalaczniki& Jeżeli system pracuje z podkatalogami operatorów (0120 [2]) to podkatalog można nazwać: x2go i umieścić w katalogu operatora /trinout/aa/x2go Polecenie urządzenia wyjściowego: mv -f -t ../trtres/trinout/&lsymop&/x2go &zbior& &zalaczniki& X2Go umożliwia współdzielenie dowolnej ilości katalogów. To umożliwia zapisywanie różnych rodzajów dokumentów w osobnych lokalizacjach 5.5 Automatyczne logowanie do serwera Linux przez PuTTY * W parametrach sesji PuTTY w: Category / Connection / Data / Auto-login username podać nazwę użytkownika na serwerze * Utworzyć na pulpicie skrót do programu PuTTY * We właściwościach tego skrótu w polu: Element docelowy, dodać parametry wywołania: -load NAZWA_SESJI -pw HASLO_UZYTKOWNIKA ^ ^ | ^-- hasło użytkownika na serwerze ^--- nazwa sesji zapisana w PuTTY np. "c:\Program files\PuTTY\putty.exe" -load serwer51 -pw haslo123 5.6 Automatyczne logowanie do Trawersa Automatyczne logowanie do programu Trawers jest jednym z mechanizmów zapewnienia bezpieczeństwa plików (bazy danych) na serwerze Logowanie automatyczne zawęża użytkownikowi prace na serwerze do możliwośći uruchomienia programu Trawers. Po zalogowaniu się następuje automatyczne wywołanie programu Trawers a po zakończeniu pracy, automatyczne wylogowanie się. a) Oczekiwana konfiguracja * Po uruchomieniu stacji roboczej automatycznie (bez żadnego logowania) pojawia się menu umożliwiające: - uruchomienie Trawers - wyłączenie komputera * Wybranie opcji 'Uruchomienie Trawersa' automatycznie loguje użytkownika do serwera (bez podawania hasła) i uruchamia Trawersa * Możliwość fiskalizacji na stacji roboczej * Możliwość drukowania na stacji roboczej b) realizacja - ogólnie Stacja robocza a) Automatyczne logowanie użytkownika trawers na konsoli tty1 b) Automatyczne uruchomienie skryptu z menu c) Logowanie użytkownika 'trawers' na serwerze przez ssh bez hasła d) Wyłączenie stacji roboczej przez użytkownika 'trawers' e) Udostępnienie drukarki w CUPS f) Uruchomienie programu serproxy dla drukarki fiskalnej Serwer a) Logowanie użytkownika 'trawers' przez ssh bez hasła b) Automatyczne uruchamianie programu Trawers po zalogowaniu użytkownika c) Udostępnienie drukarek ze stacji roboczych w systemie CUPS d) Udostepnienie portu 5331 dla komunikacji z drukarkami fiskalnymi b) realizacja - szczegółowo Stacja robocza a) Automatyczne logowanie użytkownika trawers na konsoli tty1 W /etc/inittab zmienić: # Run gettys in standard runlevels 1:2345:respawn:/sbin/mingetty tty1 na 1:2345:respawn:/sbin/mingetty --autologin trawers tty1 b) Automatyczne uruchomienie skryptu z menu W pliku /home/trawers/.bash_profile: Na początku dodać wyłączenie klawisza CTRL-C trap '' 2 Ma końcu dodać: . /usr/bin/trawers_menu.sh logout c) Logowanie użytkownika 'trawers' na serwerze przez ssh bez hasła http://www.csua.berkeley.edu/~ranga/notes/ssh_nopass.html W skrypcie /usr/bin/trawers_menu.sh powinno być: ssh trawers@adres_serwera d) Wyłączenie stacji roboczej przez użytkownika 'trawers' jako root wywołać polecenie 'visudo' i dodać linie: Cmnd_Alias SHUTDOWN=/sbin/shutdown -h now trawers localhost=NOPASSWD: SHUTDOWN W skrypcie /usr/bin/trawers_menu.sh powinno być: shutdown -h now e) Udostępnie drukarki w CUPS Dodać drukarkę do CUPS na stacji roboczej np przez interfejs www: http://localhost:631 Jeżeli drukarka ma pracować w trybie tekstowym, to podczas jej dodawania lub modyfikacji, należy wybrać markę RAW. f) Uruchomienie programu serproxy dla drukarki fiskalnej Pobrać program serproxy oraz plik konfiguracyjny z: https://ftp.tres.pl/fiskalizacja/serproxy/serproxy https://ftp.tres.pl/fiskalizacja/serproxy/serproxy.cfg W katalogu /usr/bin umieścić program 'serproxy'. Zrobić go wykonywalnym: chmod a+x serproxy W pliku konfiguracyjnym /etc/serproxy.cfg podać numer portu, np. 5331. Do pliku startowego /etc/rc.d/rc.local dodać wywołanie: /usr/bin/serproxy &> /dev/null & Serwer a) Logowanie użytkownika 'trawers' przez ssh bez hasła Szczegółowy opis znajduje się pod adresem: http://www.csua.berkeley.edu/~ranga/notes/ssh_nopass.html Na serwerze należy upewnić się, że w pliku konfiguracyjnym serwera ssh /etc/ssh/sshd_config są ustawione parametry: RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys Po zmianie należy zrestartować ssh poleceniem: /etc/rc.d/init.d/sshd restart b) Automatyczne uruchamianie programu trawers po zalogowaniu użytkownika w pliku /home/trawers/.bash_profile: - na początku dodać linię blokującą działanie klawisza CTRL-C (czyli mozliwość przerwania skryptu) trap '' 2 - na końcu dodać linie: /usr/bin/trawers5 # skrypt uruchamiający Trawersa logout # wylogowanie z serwera c) Udostępnienie drukarek ze stacji roboczych w systemie CUPS System CUPS działa w ten sposób, że rozsyła informacje o zainstalowanych drukarkach. Wystarczy więc dodać odpowiednie drukarki na stacji roboczej, a po chwili będą widoczne na serwerze Jako polecenie wydruku operatora podać: lpr -P NAZWA_DRUKARKI &zbior& d) Udostepnienie portu 5331 dla komunikacji z drukarkami fiskalnymi Drukarka fiskalna na stacji roboczej obsługiwana jest przez program serproxy pracujący na porcie 5331 Określa się to w parametrach fiskalizacji operatora Należy się upewnić, że port nie jest zajęty przez inny program i że nie jest blokowany przez firewall # koniec 5.7 Logowanie do serwera za pomocą kluczy kryptograficznych Nie używa się haseł, ale w konfiguracji PuTTY wskazuje się plik klucza 1. Cel Zwiekszyć bezpieczeństwo dostępu do serwera. Zabezpieczyć serwer przed próbami nieautoryzowanego dostępu. Zmienić sposób logowania z pary: użytkownik-hasło na parę kluczy publiczny-prywatny. 2. Kroki * Przygotować parę kluczy kryptograficznych * Skonfigurować serwer i stacje robocze do korzystania z kluczy * Zablokować użytkownikowi root możliwość logowania do serwera * Wyłączyć możliwość logowania do serwera za pomocą hasła 3. Narzędzia * ssh-keygen * PuTTYgen.exe * PuTTY.exe * psftp.exe Więcej informacji: Mirosław Przyłucki, PPU MARCO, Autoryzowany Partner Tres Partnerzy 5.8 Ograniczenie dostępu do powłoki systemu W typowej sytuacji, po zalogowaniu programem PuTTY, użytkownik ma dostęp do konsoli serwera (zwykle jest to powłoka bash). Może więc wykonywać różne polecenia na systemie plików. Mimo, iż odbywa się to w ramach posiadanych uprawnień, może być jednak źródłem potencjalnych problemów. Aby wyeliminować powyższe potencjalne zagrożenie, można skonfigurować serwer tak, by po zalogowaniu, użytkownikowi automatycznie uruchamiał się program Trawers, a po zakończeniu pracy automatycznie się wylogowywał. Technicznie, zmiana polega na zastąpieniu w pliku /etc/passwd ścieżki do powłoki, np. /bin/bash, wywołaniem skryptu uruchamiającego Trawers, np. /usr/bin/trawers5 W niektórych instalacjach, zamiast bezpośredniego wywołania programu Trawers, użytkownik ma do dyspozycji menu startowe, z którego może wykonać także inne operacje. Menu takie przygotowują administratorzy zależnie od potrzeb użytkowników 6. Tematy powiązane Platformy systemowe Linux i Windows Koszty instalacji IT Serwer Terminali OTC Winflector Przygotowanie IT do drukowania Utrzymanie instalacji IT Identyfikacja Trawers ERP Drukarki fiskalne Aspekty techniczne Urządzenia wyjściowe Klawisze. Mysz. Ekrany. Dialog


www.tres.pl - Baza wiedzy Trawers ERP - Spis treści

Polityka prywatności Ustawienia Cookies