poniedziałek, 25 czerwca 2018

WebEngine - Cron Jobs

I believe that you have Apache with Linux. Ofc you can do it with MS Windows as well and it's called Windows Task Scheduler.

We just need to make script which will be executed periodically by our Linux.

Let's start!

Add following line by using command: crontab -e
*/1 * * * * /usr/bin/php -f /var/www/html/includes/cron/cron.php

Add this line with your real path of cron.php and if you don't know where is php use try command:
whereis php

That line in crontab will let execute cron php every minute.

If you want to configure it more specify then google it how it works. It's not super hard!

czwartek, 21 czerwca 2018

MuOnline WebEngine on CentOS 7 - easy guide !

Used files in guide:
- PuTTY
- WebEngine 1.0.9
- PHP 5.6.14
- MSSQL 2008 R2 SP2
- MuOnline S6 database scheme (MuOnline.bak)

Install Apache on CentOS7

Clean all in yum service and install Midnight commander
yum clean all
yum -y update
yum -y install mc

Install Apache
yum -y install httpd

Open port in firewall. You can open HTTPS port if you want, just replace 80 with 433.
Method I:
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
service iptables restart
Method II:
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --reload

Start Apache service and enable autostart with system

systemctl start httpd
systemctl enable httpd

You can check if Apache service is running
systemctl status httpd

You can stop this service as well but why??
systemctl stop httpd

List of sorted Apache installed modules
apachectl -M | sort

You can edit Apache configurations like for example a directory for website files or port for listening, but you need to AllowOverwrite to all
/etc/httpd/conf/httpd.conf
find and replace: AllowOverwrite None -> all
If file doesnt exist, try to search
find / -name httpd.conf

We can upload our Website files. I prefer WinSCP (download)
cd /var/www/html

Let's finally install PHP !
yum install php php-mysql php-devel php-gd php-pecl-memcache php-pspell php-snmp php-xmlrpc php-xml  
systemctl restart httpd

==== short_open_tag FIX ====
/etc/php.ini
If file doesnt exist, try to search
find / -name php.ini

Find: short_open_tag = Off
Replace: short_open_tag = On
systemctl restart httpd

==== BC Math Extension FIX ====
yum install php-bcmath
systemctl restart httpd

==== PDO dblib (linux) FIX ====
yum install epel-release
yum upgrade ca-certificates --disablerepo=epel
yum install php-mssqlsystemctl restart httpd

==== DBLIB can't connect to database :( SEND HELP ! ====
Check if SELinux is blocking our database connection
getsebool -a | grep httpd_can_network_connect

Enable if it's Off
setsebool -P httpd_can_network_connect 1
setsebool -P httpd_can_network_connect_db 1 
systemctl restart httpd
==== DONE ====


Now you can go to your website following this path /install/install.php to start configure !

==== Writable Directories and Files (chmod) FIX ====
setsebool -P httpd_unified 1
cd /var/www/html/includes
chmod 776 cache/
chmod 777 cache/
chmod 777 cache/news/
chmod 777 cache/profiles/guilds/
chmod 777 cache/profiles/players/
chmod 777 cache/castle_siege.cache
chmod 777 cache/cron.cache
chmod 777 cache/downloads.cache
chmod 777 cache/news.cache
chmod 777 cache/plugins.cache
chmod 777 cache/rankings_gens.cache
chmod 777 cache/rankings_gr.cache
chmod 777 cache/rankings_guilds.cache
chmod 777 cache/rankings_level.cache
chmod 777 cache/rankings_master.cache
chmod 777 cache/rankings_online.cache
chmod 777 cache/rankings_pk.cache
chmod 777 cache/rankings_pvplaststand.cache
chmod 777 cache/rankings_resets.cache
chmod 777 cache/rankings_votes.cache
chmod 777 cache/server_info.cache
chmod 777 config/email.xml
chmod 777 config/navbar.json
chmod 777 config/usercp.json
chmod 777 config/webengine.json
chmod 777 config/modules/castlesiege.xml
chmod 777 config/modules/contact.xml
chmod 777 config/modules/donation.paymentwall.xml
chmod 777 config/modules/donation.paypal.xml
chmod 777 config/modules/donation.superrewards.xml
chmod 777 config/modules/donation.westernunion.xml
chmod 777 config/modules/donation.xml
chmod 777 config/modules/downloads.xml
chmod 777 config/modules/forgotpassword.xml
chmod 777 config/modules/login.xml
chmod 777 config/modules/news.xml
chmod 777 config/modules/profiles.xml
chmod 777 config/modules/rankings.xml
chmod 777 config/modules/register.xml
chmod 777 config/modules/usercp.addstats.xml
chmod 777 config/modules/usercp.buyzen.xml
chmod 777 config/modules/usercp.clearpk.xml
chmod 777 config/modules/usercp.clearskilltree.xml
chmod 777 config/modules/usercp.myaccount.xml
chmod 777 config/modules/usercp.myemail.xml
chmod 777 config/modules/usercp.mymasterkey.xml
chmod 777 config/modules/usercp.mypassword.xml
chmod 777 config/modules/usercp.reset.xml
chmod 777 config/modules/usercp.resetstats.xml
chmod 777 config/modules/usercp.unstick.xml
chmod 777 config/modules/usercp.vip.xml
chmod 777 config/modules/usercp.vote.xml

==== LEAVE A COMMENT IF IT HELPS YOU ! ====
==== ENJOY ==== 


==== FOR LAZY ASS ====
Copy and paste code below, but short_open_tag you need to do by yourself!

yum clean all
yum -y update
yum -y install mc
yum -y install httpd
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
service iptables restart
systemctl start httpd
systemctl enable httpd
systemctl status httpd
yum -y install php php-mysql php-devel php-gd php-pecl-memcache php-pspell php-snmp php-xmlrpc php-xml
systemctl restart httpd
yum -y install php-bcmath
systemctl restart httpd
yum -y install epel-release
yum -y upgrade ca-certificates --disablerepo=epel
yum -y install php-mssql
systemctl restart httpd
setsebool -P httpd_can_network_connect 1
setsebool -P httpd_can_network_connect_db 1
setsebool -P httpd_unified 1
systemctl restart httpd
BYE !

Problem with Cron Jobs? Click here!

wtorek, 26 kwietnia 2016

QNAP konfiguracja apache (raportowanie błędów i opóźnienie podmiany plików)

Korzystając z serwera www na QNAP'ie można zauważyć, że nie wyświetlają nam się błędy, pisząc np. w PHP oraz po wrzuceniu nowego, poprawionego pliku do katalogu /Web można zauważyć, że trzeba czasem odczekać dłuższy czas na rezultat podmiany.

Włączamy raportowanie błędów.
1. Logujemy się poprzez przeglądarke do QNAP'a
2. Panel sterowania > Serwery aplikacji > Serwer WWW
3. W obsłudze php.ini edytujemy w sekcji PHP
display_errors = Off
display_startup_errors = Off
na
display_errors = On
display_startup_errors = On
Wyłączanie opóźnienia podmiany plików
4. Edytujemy sekcje [opcache] dopisując kolejno:
[opcache]
opcache.enable = 0
opcache.validate_timestamps = 0

Klikamy zapisz :)

Ewentualnie, można wprowadzić te zmiany ręcznie poprzez putty w plikach
/mnt/HDA_ROOT/.config/php.ini
i restartujemy serwer od razu w putty lub z poziomu przeglądarki
/etc/init.d/Qthttpd.sh stop
/etc/init.d/Qthttpd.sh start 

środa, 20 kwietnia 2016

CentOS 7 reset hasła dla root

Podczas uruchamiania naciskamy e, później wybieramy linię z nazwa kernel:


i wciskamy jeszcze raz e, przejdziemy do edycji:


zmieniamy ro na rw init=/sysroot/bin/sh
Naciskamy kolejnie Ctrl+X

To co edytowaliśmy nie zostało zapisane, więc nie musimy z powrotem zmieniać na ro.

Po załadowaniu, wpisujemy kolejne komendy:
chroot /sysrootpasswd roottouch /.autorelabel
restartujemy CentOS'a, jego pierwsze załadowanie może trochę czasu zając.

piątek, 12 lutego 2016

Centos 7 i Cacti - Instalacja oraz konfiguracja

Cacti - oprogramowanie open source służące do monitorowania pracy urządzeń telekomunikacyjnych oraz komputerowych. Służy również do archiwizacji wyników pomiarów pracy tych urządzeń oraz do przedstawiania wyników tych pomiarów w formie wykresów.



Celem poniższego opisu jest stworzenie wykresów ruchu w sieci na różnych portach urządzenia.

Przydatne narzędzie: PuTTY

Instalujemy Apache, serwer internetowy do wyświetlania wykresów
yum install httpd httpd-devel
Instalujemy MariaDB, miejsce gdzie będą przechowywane dane
yum install mariadb-server -y
Instalacja PHP
yum install php-mysql php-pear php-common php-gd php-devel php php-mbstring php-cli
Rozszerzenie dla PHP
yum install php-snmp
Protokół SNMP używane do zarządzania siecią
yum install net-snmp-utils net-snmp-libs
RRDTool dla gromadzenia i przetwarzania danych
yum install rrdtool


1. Uruchamiamy usługi:
systemctl start httpd.service
systemctl start mariadb.service
systemctl start snmpd.service
2. Robimy linki dla Start-up
systemctl enable httpd.service
systemctl enable mariadb.service
systemctl enable snmpd.service
3. Dodajemy repozytorium EPEL niezbędne do instalacji Cacti
yum install wget
wget http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
rpm -ivh epel-release-7-5.noarch.rpm

Sprawdzamy repozytoria, dostępność i instalujemy Cacti
yum repolist
yum --enablerepo=epel info cacti
yum install cacti
4. Konfigurujemy bazę danych
mysqladmin -u root password USTALONE-HASLO
mysql -u root -p
create database cacti;
GRANT ALL ON cacti.* TO cacti@localhost IDENTIFIED BY 'USTALONE-HASLO';
FLUSH privileges;
exit;
5. Wgrywamy tabale do bazy danych
Wracamy do folderu root i wyszukujemy cacti.sql
rpm -ql cacti | grep cacti.sql
Otrzymamy ścieżkę:
/usr/share/doc/cacti-0.8.8b/cacti.sql

Importujemy tabele:
mysql -u cacti -p cacti < /usr/share/doc/cacti-0.8.8b/cacti.sql
6. Edytujemy plik /etc/cacti/db.php
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cacti";
$database_password = "USTALONE-HASLO";
$database_port = "3306";
$database_ssl = false;
6a. Jeżli łączymi się z serwerem zewnętrzym należy zezwolić na nawiązywanie połączenia:
setsebool -P httpd_can_network_connect 1
 7. Przepuszczamy ruch HTTP przez firewall'a
iptables -A INPUT -p udp -m state --state NEW --dport 80 -j ACCEPT
iptables -A INPUT -p tcp -m state --state NEW --dport 80 -j ACCEPT
8. Edytujemy plik /etc/httpd/conf.d/cacti.conf

Alias /cacti /usr/share/cacti
<Directory /usr/share/cacti/>
   <IfModule mod_authz_core.c>
      # httpd 2.4
      Require all granted
   </IfModule>
   <IfModule !mod_authz_core.c>
      # httpd 2.2 
      Order deny,allow
      Deny from all
      Allow from all
   </IfModule>
</Directory>

9. Restart serwera Apache
systemctl restart httpd.service
10. Edytujemy plik /etc/cron.d/cacti i usuwamy # na początku linii

11. W pliku /etc/php.ini ustalamy
safe_mode = Off
date.timezone = "Europe/Berlin"
12. Uruchamiamy stronę naszego serwera: http://adres-ip/cacti/

Przechodzimy formularz:
Next >>
New Install i Next >>
Finish

13. Logujemy się i zmieniamy hasło

Domyślne hasło i login to admin / admin

14. Logujemy się na NETASQ i włączamy moduł SNMP




















15. Na stronie Cacti dodajemy urządzenie od którego będą zbierane dane
Klikamy New Graphs, następnie Create New Host

Wypełniamy formularz:

Nazwę użytkownika i hasło wpisujemy takie jak ustalono w urządzeniu (NETASQ) z którego otrzymywane są dane. Po udanym połączeniu zostaniemy poinformowani komunikatem Save Successfull.

16. Wchodzimy do Management > Devices i klikamy na nasze urządzenie, na samym dole w tabeli Associated Data Queries z rozwijanej listy wybieramy SNMP - Interface Statistics i zatwierdzamy przyciskiem Add

17. Na górze strony klikamy *Create Graphs for this Host, zaznaczamy porty dla których mają być tworzone wykresy i klikamy Create.

Możemy dostosować wykres (np. nazwę) jak uważamy wchodząc do Management > Graph Management i kliknąć na nazwę wykresu, który chcemy dostosować.

18. Klikamy na Management > Graph Trees
Możemy stworzyć dowolnie nazwaną grupę jeśli chcemy uporządkować więcej urządzeń, albo przechodzimy do tworzenia w domyślnej grupie, klikamy Default tree i Add.

i ustawiamy jak na obrazku poniżej








Wszystko jest gotowe, pierwsze wykresy mogą pojawić się dopiero po 5-10 minutach.


19. Zrobimy kosmetyczna korektę, aby w adresie www nie trzeba było dopisywać http://adres-ip/cacti.
Wchodzimy do pliku, który jest odpowiedzialny za wyświetlanie strony pod adresem http://adres-ip/
Wchodzimy do /usr/share/httpd/noindex/ i czyścimy plik index.html poleceniem
cat > index.html
i naciskamy [CTRL] + [Z], edytujemy plik wklejając poniższy kod podmieniająć adres-ip na właściwy.
<html><head><meta http-equiv="refresh" content="0; url=http://adres-ip/cacti" /></head></html>
Zapisujemy i wszystko gotowe !

Efekt po kilkunastu minutach działania

piątek, 22 stycznia 2016

Naprawa 'Menu start' w Windows 10

Naprawienie profilu w Windows 10, gdy menu start się nie rozwija, a restarty nie pomagają.

1. Naciśnij przycisk Windows + X na klawiaturze i wybierz opcję Wiersz polecenia (administrator). 
Wpisz polecenie:
sfc /scannow 
i naciśnij Enter. Jak skończy skanować to uruchom ponownie komputer i jeszcze raz naciśnij przycisk Windows + X na klawiaturze i wybierz opcję Wiersz polecenia (administrator).
Wpisz polecenie:
dism /online /cleanup-image /restorehealth 
i potwierdź Enterem. Po zakończeniu zrestartuj komputer.



Jak nie działa to kolejny sposób

2. Naciśnij Windows + R, wpisać powershell i wkleić:
Start-Process powershell -Verb runAs
powinno wyskoczyć okienko, gdzie klikamy Tak, albo sie od razu otworzy nowe okno i w tym nowym oknie wpisujemy:
Get-AppXPackage -AllUsers | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register "$($_.InstallLocation)\AppXManifest.xml"} 
po zakończeniu zrestartować komputer.

wtorek, 19 stycznia 2016

Tworzenie profili mobilnych i obowiązkowych

1. Tworzymy udział sieciowy

- tworzymy nowy folder o nazwie profiles
- udostępniamy go dla grupy Domain Users do zapisu/odczytu


















2. Tworzymy odrębne zasady polityki

- w narzędziu zarządzania zasadami grupy tworzymy nowy obiekt zasad grupy (PPM na Obiekty zasad grupy i Nowe)
- PPM na nowo stworzonym obiekcie grupy i edytujemy

Konfiguracja komputera -> Zasady -> Szablony administracyjne -> System -> Profile użytkowników


Podajemy ścieżkę zapisu profili \\<nazwa_serwera>\profiles\%USERNAME%

%USERNAME% - pozwoli na automatyczne tworzenie katalogów profili względem nazwy użytkownika




























3. Nadajemy uprawnienia Administratorowi domeny do profili co pozwoli m.in. na stworzenie profilu obowiązkowego.

- w tym samym miejscu włączamy:
Dodaj grupę zabezpieczeń Administratorzy do profilów użytkowników mobilnych

4. Podlinkowujemy stworzone GPO dla wybranej jednostki organizacyjnej (OU)

- klikająć PPM wybieramy blokadę dziedziczenia, aby zasady grupy kontenera nie zostały nadpisane przez nadrzędne












5. Tworzymy profil obowiązkowy

//Ustawienia zasad grupy były konfigurowane dla komputera
- Przenosimy komputer z do konteneru Użytkownicy


- wracamy do Zarządzania zasadami grupy i wybieramy stworzoną politykę
- do filtrowania zabezpieczeń dodajemy Domain Computers

- wymuszamy aktualizację zasad grupy

gpupdate /force












- logujemy się na komputerze użytkownika i wylogowujemy się, aby profile został zapisany na serwerze
- wchodzimy do profilu i blokujemy możliwość modyfikacji profilu przez użytkownika, czyli zmieniamy nazwę pliku NTUSER.DAT na NTUSER.MAN, może on być niewidoczny dlatego też trzeba w Widok -> Opcje ->  Zmień opcje folderów..

Ustawiamy jak poniżej i gotowe.