Logujemy się na serwer przez SSH i instalujemy certboc (https://certbot.eff.org/)

sudo vim /etc/apt/sources.list
deb http://ftp.debian.org/debian stretch-backports main
sudo aptitude update
sudo aptitude install python-certbot-apache -t stretch-backports
sudo certbot --apache

Przeklikujemy wizarda i już :) Certyfikat został zainstalowany i zadanie w CRON dodane. Będzie się automatycznie odnawiał co 90 dni

W kilku przypadkach musiałem użyć metody manualnej:

certbot run -a webroot -i apache -w /var/www/html -d example.com

Źródło:

https://letsencrypt.org/

https://certbot.eff.org/lets-encrypt/debianstretch-apache

Migracja Owncloud do Nextcloud Kategoria: Nextcloud | Autor: Bartłomiej Gałęzia

sudo mv /var/www/owncloud /var/www/owncloud_bak
sudo wget https://download.nextcloud.com/server/releases/nextcloud-10.0.0.tar.bz2
sudo tar -xjf nextcloud-10.0.0.tar.bz2
sudo mv nextcloud /var/www/owncloud
sudo chown www-data: -R /var/www/owncloud
sudo find /var/www/owncloud -type d -exec chmod 755 {} \;
sudo find /var/www/owncloud -type f -exec chmod 644 {} \;
sudo cp /var/www/owncloud_bak/config/config.php  /var/www/owncloud/config/
sudo chmod +x /var/www/owncloud/occ
cd /var/www/owncloud
sudo -u www-data php occ maintenance:mode --on
sudo -u www-data php occ upgrade
sudo -u www-data php occ maintenance:mode --off

https://websetnet.net/migrate-owncloud-nextcloud/

Debian zmiana nazwy kart sieciowych z enp2s0 na ethX Kategoria: Linux | Autor: Bartłomiej Gałęzia

Aby pozbyć się tych nowych nazw kart sieciowych (enp2s0) należy:

1. Zmienić wpisy w pliku GRUB.

sudo vim /etc/default/grub

z

GRUB_CMDLINE_LINUX=""

na

GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0"

2. Wygenerować nowy plik grub.cfg

sudo grub-mkconfig -o /boot/grub/grub.cfg

3. Zmienić nazwy kart sieciowych w pliku /etc/network/interfaces

sudo vim /etc/network/interfaces
allow-hotplug eth0
iface eth0 inet dhcp

4. Reboot

https://www.itzgeek.com/how-tos/linux/debian/change-default-network-name-ens33-to-old-eth0-on-debian-9.html

Apostrofy w input Kategoria: Codeigniter | Autor: Bartłomiej Gałęzia

W Codeigniterze (a właściwie w samym php) występuje pewien problem z apostrofami jeśli są zapisywane w bazie i ponownie wyświetlane w polu input w formularzu.

Jako przykładu użyję pola Model w bazie Samochody.

Zobacz całość

Apache mod rewrite Kategoria: WWW | Tagi: apache, rewrite | Autor: Bartłomiej Gałęzia

a2enmod rewrite
echo ServerName localhost >> /etc/apache2/apache2.conf
vim /etc/apache2/sites-enabled/000-default
<Directory /var/www/>
   ...
   AllowOverride FileInfo
   ...
</Directory>

/etc/init.d/apache2 restart

Ubuntu install Real VNC Kategoria: Linux | Tagi: vnc | Autor: Bartłomiej Gałęzia

Register on realvnc.com and activate your account

https://manage.realvnc.com/

Download VNC Connect

https://www.realvnc.com/en/connect/download/vnc/linux/

Run VNC Server:

/etc/init.d/vncserver-x11-serviced start

Run Licensing Wizard and login with your realvnc.com account

vnclicensewiz

To autorun VNC Server on boot use this:

sudo update-rc.d vncserver-x11-serviced defaults

Zobacz całość

XEN - migracja maszyn pomiędzy serwerami XEN Kategoria: Linux | Tagi: clone, dd, migracja, xen | Autor: Bartłomiej Gałęzia

Nie jest to idealne rozwiązanie ale działa.

1. Należy stworzyć wolumen na który będziemy zapisywać obraz dysku źródłowego. Wolumen ten powinien być conajmniej tej samej wielkości do dysk źródłowy.

lvcreate -n transfer_disk -L 200G xenvms

2. Podłączamy ten dysk do wirtualki, którą chcemy zmigrować i bootujemy ją z live-cd

Zobacz całość

Skrypt blokujący adres IP do 3 nieudanych próbach logowania.

1. Dodajem akcję logowania "zlylogin"

System -> Logging -> [Actions] -> [+]
Name: zlylogin
Type: memory
System -> Logging -> [Rules] -> [+]
Topics: critical, system, error
Action: zlylogin

 

Zobacz całość

XEN - autostart VM Kategoria: Linux | Tagi: autorun, xen | Autor: Bartłomiej Gałęzia

Domyślnie po restarcie serwera XEN maszyny wirtualne nie startują automatycznie.

Aby to się udało należy zrobić linki symboliczne (ln -s) do configów poszczegółnych maszyn wskazujące na katalog /etc/xen/auto (musimy go utworzyć).

mkdir /etc/xen/auto

Jeśli chcemy przekierować wszystkie configi z katalogu, wystarczy zastosować taki symlink:

ln -s /etc/xen/ /etc/xen/auto

Natomiast jeśli chcemy uruchomić tylko poszczególne maszyny, należy to zrobić osobno dla każdego configa:

ln -s /etc/xen/MY_DOMU_GUEST_1.cfg /etc/xen/auto/
ln -s /etc/xen/MY_DOMU_GUEST_2.cfg /etc/xen/auto/

Cała konfiguracja autostartu jest opisana w pliku:

/etc/default/xendomains
XENDOMAINS_RESTORE=true
XENDOMAINS_AUTO=/etc/xen/auto

Źródło: https://askubuntu.com/questions/196444/how-do-i-auto-start-xen-guests-on-boot

XEN - install Windows 7 Kategoria: Linux | Tagi: windows, win 7, xen | Autor: Bartłomiej Gałęzia

Plik konfiguracyjny z wirtualką Windows 7 na XEN

kernel = '/usr/lib/xen-4.8/boot/hvmloader'
builder = 'hvm'

vcpus       = '1'
memory      = '2048'
shadow_memory = 8

localtime = 1 # Disk device(s). disk = [ 'file:/xen/ISO/win7_Pro_SP1_x64.iso,hdb:cdrom,r', 'phy:/dev/xenvms/win7,xvda,w' ] boot = "dc" # Hostname name = 'awin7' # Networking vif = [ 'mac=00:11:22:33:44:55,bridge=xenbr0' ] vnc=1 vncconsole=1 vncpasswd='password' vncunused = 1 vnclisten = '192.168.1.1'
stdvga = 0 serial = 'pty' usbdevice = 'tablet' # Required for USB mouse ## Behaviour
on_shutdown = 'destroy' on_poweroff = 'destroy' on_reboot = 'restart' on_crash = 'restart'

Domyślnie w UTF-8 sortowanie ustawia literę "Ł" na końcu listy.

Aby to zmienić należy zmienić COLLATION przy ORDER BY na 'utf8_polish_ci'.

Zmiany należy dokonać w pliku:

system/database/DB_query_builder.phg

było

$qb_orderby[] = ($direction === '' && preg_match('/\s+(ASC|DESC)$/i', rtrim($field), $match, PREG_OFFSET_CAPTURE))
? array('field' => ltrim(substr($field, 0, $match[0][1])), 'direction' => ' '.$match[1][0], 'escape' => TRUE)
: array('field' => trim($field), 'direction' => $direction, 'escape' => TRUE);

ma być

$qb_orderby[] = ($direction === '' && preg_match('/\s+(ASC|DESC)$/i', rtrim($field), $match, PREG_OFFSET_CAPTURE))
? array('field' => ltrim(substr($field, 0, $match[0][1])), 'direction' => ' '.$match[1][0], 'escape' => TRUE)
: array('field' => trim($field), 'direction' => 'COLLATE utf8_polish_ci '.$direction, 'escape' => TRUE);

WAŻNE! Nie działa jeśli sortujemy liczby!

Ubuntu - upgrage JDK/JVM 1.7 do 1.8 Kategoria: Linux | Tagi: java, ubuntu | Autor: Bartłomiej Gałęzia

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
java -version

Źródło: https://stackoverflow.com/questions/30177455/moving-from-jdk-1-7-to-jdk-1-8-on-ubuntu

Napisana nazwa:

Nazwa przy edycji:

Przy zapisaniu takiego rekordu tworzy się jeszcze większy bałagan.

Aby uniknąć takie sytuacji należy przy edycji podać jako atrybut "value":

value=<?php echo html_entity_decode($nazwa, ENT_QUOTES, 'UTF-8');?>"

Wtedy po zapisaniu rekordu ampersant nadal będzie "&" zamiast "&amp;".

Jeden z prostszych skryptów z zadeklarowaną nazwą pliku

System -> Scripts -> [+]
Name = "autobackup"
Source
:local ts [/system clock get time]
:set ts ([:pick $ts 0 2]."_".[:pick $ts 3 5]."_".[:pick $ts 6 8])

:local ds [/system clock get date]
:set ds ([:pick $ds 7 11]."_".[:pick $ds 0 3]."_".[:pick $ds 4 6])

:local fname ("BACKUP-".[/system identity get name]."-".$ds."-".$ts)
:local sfname ("/".$fname)

/system backup save name=($sfname.".backup")
/export file=($sfname.".rsc")

Następnie należy dodać skrypt do Schedulera

System -> Scheduler -> [+]
Name = "autobackup"
Interval ="1d 00:00:00"
On Event
/system script run autobackup

Zobacz całość

Aby włączyć automatyczną kopię zapasową przyrostową na komputerach i serwerach z windowsem należy:

1. Zainstalować SyncToy

https://www.microsoft.com/en-us/download/details.aspx?id=15155

Zobacz całość

Heheszki ssh telnet Kategoria: Linux | Tagi: ssh, telnet | Autor: Bartłomiej Gałęzia

Snake SSH

ssh sshtron.zachlatta.com

Star Wars telnet

telnet towel.blinkenlights.nl

Mapa Świata w ASCII

telnet mapscii.me

Mikrotik export DHCP config Kategoria: MikroTik | Tagi: dhcp, mikrotik | Autor: Bartłomiej Gałęzia

/ip dhcp-server export file=leaseConfiguration.txt

Źródło: https://forum.mikrotik.com/viewtopic.php?t=29597

Ubuntu 14.04 Połączenie VPN L2TP IPsec Kategoria: Linux | Tagi: mikrotik, ubuntu, vpn | Autor: Bartłomiej Gałęzia

Konfigurowanie połączenia VPN za pomocą L2TP IPsec do routera Mikrotik.

1. Instalujemy wymagane paczki:

sudo add-apt-repository ppa:nm-l2tp/network-manager-l2tp #ubuntu 20.04
aptitude update
sudo apt-get install openswan xl2tpd l2tp-ipsec-vpn

2. Uruchamiamy managera połączeń VPN

L2tpIPsecVpn

3. Dodajemy nowe połączenie VPN.

Zobacz całość

Mikrotik VPN L2TP IPsec Kategoria: MikroTik | Tagi: mikrotik, vpn | Autor: Bartłomiej Gałęzia

Zestawianie połączenia VPN przez L2TP + IPsec.

Wariantów jest kilka ale przedstawię mój ulubiony.

1. Uruchamiany server DHCP dla bridge'a do którego mamy podłączone wszystkie urządzenia w sieci.

Tworzenie bridge, przypisywanie adresu i instalacja DHCP jest omówiona w poprzednim poście:

http://blog.cssoft.pl/post/mikrotik-base-config

2. Tworzymy Profil użytkownika VPN.

PPP -> [zakładka] Profiles -> [+] ->
-> Name: "users_vpn"
-> Local Address: 192.168.1.100 //adres naszego mikrotika
-> Remote Address: dhcp-pool //można też wpisać statyczny adres lokalny i zdalny
-> OK

Zobacz całość

Mikrotik block multicast Kategoria: MikroTik | Autor: Bartłomiej Gałęzia

Aby zablokować ruch multicastów na danym porcie należy:

1. Upewnić się, że port wychodzący i przychodzący są połączone w jednym bridge'u.

Bridge -> [zakładka] Ports -> {ether1,ether2}

2. Dodać filtr w Bridge'ach blokujący pakiety przychodzące i wychodzące.

Bridge -> [zakładka] Filters -> [+] ->
-> Chain: forward
-> Interfaces -> In. interface: ether2
-> [zakładka] Advanced -> Packet type: multicast
-> [zakładka] Action -> Action: block
Bridge -> [zakładka] Filters -> [+] ->
-> Chain: forward
-> Interfaces -> Out. interface: ether2
-> [zakładka] Advanced -> Packet type: multicast
-> [zakładka] Action -> Action: block

Export z mikrotika

/interface bridge
add name=bridge_LAN
/interface bridge filter
add action=drop chain=forward in-interface=\
    ether2 packet-type=multicast
add action=drop chain=forward out-interface=\
    ether2 packet-type=multicast
/interface bridge port
add bridge=bridge_LAN interface=ether1
add bridge=bridge_LAN interface=ether2

http://u-to-l.blogspot.com/2012/06/dealing-with-multicast-traffic-on.html