Welcome to MkDocs
Linux
Clean the session of the log in - Linux
history -c \
rm -rf ~/.bash_history \
echo >/var/log/wtmp \
exit
SSH
Problem with autodisconnect when session is idle in ssh
To solve that problem you can the below line into ~/.ssh/config
ServerAliveInterval 120
After 120 sec it will sent the null packet into the connected server.
SELinux
Status of SELinux
sestatus
Disable temporarily SELinux
sudo setenforce 0
Disable permenitly SELinux
Please open the file /etc/selinux/config
and change the SELINUX to disabled
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=disabled
Better compression
Directory Compression
tar cf - paths-to-archive | pigz -9 -f > archive.tar.gz
Directory Uncompression
pigz -dc archive.tar.gz | tar xf -
LZMA decompress
xz --format=lzma FILE.lzma
LVM
Dodawanie nowego dysku do istniejącego volume group
# Wyświetlamy jakie aktualnie mamy volume groupy: (aktualnie mamy jedną)
[root@localhost ~]# vgdisplay | grep "VG Name"
--- Volume group ---
VG Name centos_localhost
# Dodajemy wybrany dysk w naszym przypadku /dev/sdb do wyżej wymienionej
# volume group
[root@localhost ~]# vgextend centos_localhost /dev/sdb
# Dodajemy logiczny volume (o pojemnosci 10G) do wybranej group
[root@localhost ~]# lvcreate -L +10G --name data centos_localhost
# Rozszerzamy o całe pozostałe miejsce z volume group
[root@localhost ~]# lvm lvextend -l +100%FREE /dev/mapper/localhost-data
# W niektórych przypadkach można użyć też komendy do resize aby dobrze się wyświetał
[root@localhost ~]# xfs_growfs /dev/mapper/localhost-data
# Formatujemy logiczny volumin
[root@localhost ~]# mkfs -t ext4 /dev/mapper/localhost-data
# Tworzymy miejsce do zamountowania logicznego voluminu:
[root@localhost ~]# mkdir /data
# Dodajemy go aby mountował przy starcie
# Edytujemy plik oraz dodajemy do niego:
[root@localhost ~]# vim /etc/fstab
# <NAZWA-LOGIC-MAPPERA> <MIEJSCE MOUNTOWANIA> FORMAT <POZOSTAŁE RZECZY>
/dev/mapper/localhost-data /data ext4 defaults 0 0
# Sprawdzamy komenda czy dysk sie mountuje sam:
[root@localhost ~]# mount -a
# Jezeli komenda wykonala sie bez bledu to po wywolaniu komendy
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sdb 8:16 0 130G 0 disk
└─localhost-data 253:2 0 130G 0 lvm /data
# Widzimy /data zamountowane ;)
Rozszerzenie
# LLVM
vgdisplay # Sprawdzenie czy jest free vg?
sudo lvm lvextend -l +100%FREE /dev/mapper/localhost-root # Dodanie wszytskiego
# co ma vg do localhost-root
xfs_growfs /dev/mapper/localhost-root # Dobrze wyświetlał df -h
Git
Git - Przykładowy rebase - git rebase
# Chcemy skompresować trzy ostatnie commity (bo tyle stworzyliśmy)
git rebase -i HEAD~3
# Następnie pierwszy commit zostawiamy bez zmian a ostatnie dwa (2,3)
# zmieniamy jako pick
# Przed zmianami:
pick eaaf1bb Added purple-discord
pick a44c5d7 Updated the Copyright
pick fef6588 x11-plugins/purple-discord: add purple-discord-9999
# Po zmianach:
pick eaaf1bb Added purple-discord
s a44c5d7 Updated the Copyright
s fef6588 x11-plugins/purple-discord: add purple-discord-9999
# Normalnie commit usuwając reszte commit messages
git commit
Network
Set the static IP in CentOS using the file ifcfg-eth0
- Create a file named /etc/sysconfig/network-scripts/ifcfg-eth0 as follows:
DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
PREFIX=24
IPADDR=192.168.2.203
- Restart network service:
systemctl restart network
Add static ip for eth0
in the livecd
ip address add 192.168.180.99/24 dev eth0
route add default gw 192.168.180.1 eth0
echo "nameserver 8.8.8.8" > /etc/resolv.conf
echo "nameserver 8.8.8.8" > /mnt/sysimage/etc/resolv.conf
Add routing - 192.168.0.220 through 192.168.0.254 and wlan0 dev
sudo ip route add 192.168.0.220 via 192.168.0.254 dev wlan0
Adding the RAID in Linux
mdadm --create --verbose /dev/md1 --level=mirror --raid-devices=2 /dev/sdb1 /dev/sdc1
Wipe filesystem
wipefs -a /dev/sdb
Chroot w linux iso
mount /dev/sda2 /mnt
mount --rbind /dev /mnt/dev
mount --make-rslave /mnt/dev
mount -t proc /proc /mnt/proc
mount --rbind /sys /mnt/sys
mount --make-rslave /mnt/sys
mount --rbind /tmp /mnt/tmp
chroot /mnt /bin/bash
. /etc/profile
Limit for network speed
Set the limit (upload)
doas tc qdisc add dev eth0 root tbf rate 5024kbit latency 50ms burst 1540
Remove the limit (upload)
doas tc qdisc del dev eth0 root
Change date using the timedatectl
timedatectl set-timezone "Europe/Warsaw"
Base64
- encrypt and decrypt
Encrypt
echo "text:text" | tr -d \\n | base64
dGV4dDp0ZXh0
Decrypt
echo "dGV4dDp0ZXh0" | base64 -d
text:text%
Change the time modyfication of file
touch -t "1901081430.30" /var/log/yum.log
touch -d "3 days ago" /var/log/yum.log
GPG
Import GPG keys
My key is ~y0rune-private-gpg.key~ and ~y0rune-ownertrust-gpg.txt~
gpg --import y0rune-private-gpg.key
gpg --import-ownertrust y0rune-ownertrust-gpg.txt
Resolving problem with GPG
killall gpg-agent && gpg-agent \
--daemon \
--use-standard-socket \
--pinentry-program \
/usr/bin/pinentry
Resolve the problem
Problem with CLANG in CentOS
sudo localectl set-locale LANG=en_US.UTF-8
sudo dnf install langpacks-en glibc-all-langpacks -y
Problem with s2ram
If in your system got a message Machine is unknown.
you should use the -f
force method to do it. The command is below.
sudo s2ram -f
Resolving problem with GPG when do not import the keys
killall gpg-agent && gpg-agent \
--daemon \
--use-standard-socket \
--pinentry-program \
/usr/bin/pinentry
Gentoo
Instalacja
W trakcie instalacji potrzebny jest pendrive w moim przypadku używam Ubuntu.
Pierwsze uruchomienie Ubuntu
Podłącz się do sieci za pomocą kabla albo sieci wifi. Sprawdź czy posiadasz połączenie do internetu:
ping google.com
Możesz także skonfigurować ssh aby wykonywać komendy zdalnie prze innych komputer.
hostname -I # Otrzymamy aktualny adres ip urządzenia
apt install ssh -y # Instalacja ssh
passwd # Zmieniamy aktualne hasło do usera ubuntu
systemctl status ssh # Jezeli jest wlaczone to bardzo dobrze ;)
Teraz możemy połączyć się z maszyną zdalnie:
ssh ubuntu@<IP-ADDRESS Z KROKU POPRZEDNIEGO>
Partycjonowanie dysku
W moim przypadku posiadam dysk o nomenklaturze sda Uruchamiamy narzędzie do partycjonowania dysku:
parted -a optimal /dev/sda
Teraz wykonujemy podział przedstawiony w poniższej tabelce | # | Nazwa | Rozmiar | |---+-----------------+-----------| | 1 | Bios Boot | 3 MiB | | 2 | EFI | 100 MiB | | 3 | ZFS (Boot pool) | 500 MiB | | 4 | ZFS (Main pool) | Pozostałe |
W parted wykonujemy poniższe instrukcje:
unit mib
mklabel gpt
mkpart primary 1 3
mkpart primary 3 103
mkpart primary 103 603
mkpart primary 603 40603
mkpart primary 40603 -1
name 1 grub
name 2 esp
name 3 boot
name 3 rpool
set 1 bios_grub on
set 2 boot on
print
quit
Teraz wykonujemy formatownie EFI
mkfs.fat -F32 /dev/sda2
Tworzenie odpowiednich pool ZFS
zpool create \
-f -d \
-o feature@async_destroy=enabled \
-o feature@empty_bpobj=enabled \
-o feature@lz4_compress=enabled \
-o feature@multi_vdev_crash_dump=enabled \
-o feature@spacemap_histogram=enabled \
-o feature@enabled_txg=enabled \
-o feature@hole_birth=enabled \
-o feature@extensible_dataset=enabled \
-o feature@embedded_data=enabled \
-o feature@bookmarks=enabled \
-o feature@filesystem_limits=enabled \
-o feature@large_blocks=enabled \
-o feature@sha512=enabled \
-o feature@skein=enabled \
-o feature@edonr=enabled \
-o feature@userobj_accounting=enabled \
-o ashift=12 \
-o cachefile=none \
-O compression=lz4 \
-m none \
-R /mnt/gentoo rpool /dev/sda4
zfs create rpool/ROOT
zfs create -o mountpoint=/ rpool/ROOT/gentoo
zfs create -o mountpoint=/home rpool/HOME
zfs create -o mountpoint=/root rpool/HOME/root
zpool create -f -d -o ashift=12 -o cachefile=none -m /boot -R /mnt/gentoo boot /dev/sda3
Możemy także zobaczyć status czy wszytsko zostało wykonane:
zpool status
zfs list
Montowanie dysku do instalacji Gentoo Linux
cd /mnt/gentoo
mkdir boot/efi
mount /dev/sda1 boot/efi
mount /dev/sda2 boot
mount --rbind /dev /mnt/gentoo/dev
mount --rbind /proc /mnt/gentoo/proc
mount --rbind /sys /mnt/gentoo/sys
Pobieranie stage3 oraz jego wypakowanie
cd /mnt/gentoo
wget https://bouncer.gentoo.org/fetch/root/all/releases/amd64/autobuilds/20210526T214502Z/stage3-amd64-20210526T214502Z.tar.xz
tar xpvf stage3-*.tar.xz --xattrs-include='*.*' --numeric-owner
Konfigurowanie ~make.conf~
Przykładowy make.conf [[https://git.yorune.pl/y0rune/portage/src/branch/master/make.conf]] Instrukcja dotyczca make.conf [[https://wiki.gentoo.org/wiki//etc/portage/make.conf]]
nano -w etc/portage/make.conf
Kopiowanie domyślnych drzewa repozytorium z Gentoo
cp /mnt/gentoo/usr/share/portage/config/repos.conf /mnt/gentoo/etc/portage/repos.conf/gentoo.conf
Kopiowanie dns do Gentoo
cp --dereference /etc/resolv.conf /mnt/gentoo/etc/
Wchodzimy do Gentoo
chroot /mnt/gentoo /bin/bash
source /etc/profile
Generowanie ~locale.gen~
Wpisz ~en_US.UTF-8 UTF-8~ do podanego pliku poniżej
nano -w /etc/locale.gen
locale-gen
Konfigurowanie portage
emerge-webrsync
emerge --sync
Wybieramy strefę czasową
ln -sf /usr/share/zoneinfo/Europe/Warsaw /etc/localtime
Wybieramy odpowiednii profil
eselect profile list
eselect profile set 1
Aktualizacja ~@world~
emerge --ask --verbose --update --deep --newuse @world
Instalacja kernela
Kernel (jądro systemu) będziemy instalowali w kilku częściach. Początkowym krokiem jest pobieranie ~kernela~ oraz ~genkernel~.
emerge sys-kernel/gentoo-sources sys-kernel/genkernel
Teraz wybieramy odpowiednie flagi do skompilowania Wybieramy kernel:
eselect kernel list
eselect kernel set 1
cd /usr/src/linux; sudo make ; sudo make; sudo make menuconfig; sleep 2;
genkernel all --makeopts=-j$(nproc --all) --kernel-config=/usr/linux/konfig
Instalacja odpowiednich pakietów do zfs
W pierwszej kolejności musimy włączyć możliwość instalacji pakietów beta pakietów ~sys-fs/zfs~ oraz ~sys-fs/zfs-kmod~ Zedytuj plik /etc/portage/make.conf i dodaj:
GRUB_PLATFORMS="efi-64"
Dodajemy odpowiednie flagi do plików:
echo "sys-fs/zfs ~amd64" >> /etc/portage/package.accept_keywords
echo "sys-fs/zfs-kmod ~amd64" >> /etc/portage/package.accept_keywords
echo "sys-boot/grub ~amd64" >> /etc/portage/package.accept_keywords
echo "sys-boot/grub device-mapper mount libzfs" >> /etc/portage/package.use
Instalacja gruba:
emerge sys-boot/grub
Konfiguracja zfs
Po uruchomieniu poniżej komendy sprawdzamy system plików jaki jest w /boot. Ta komenda powinna zwrócić zfs. Jeżeli komenda zwraca coś innego popełniłeś / popełniłaś błąd!!
grub-probe /boot
Po uruchomieniu poniżej komendy sprawdzamy system plików jaki jest w /boot. Ta komenda powinna zwrócić fat. Jeżeli komenda zwraca coś innego popełniłeś / popełniłaś błąd!!
grub-probe /boot/efi
grub-install --efi-directory=/boot/efi
W pliku ~/etc/default/grub~ musimy dodać w opcji
GRUB_CMDLINE_LINUX="dozfs=force real_root=ZFS=rpool/ROOT/gentoo"
W tym momencie musimy przebudować jądro ponieważ do niego doinstalowaliśmy zfs do systemu
genkernel all --makeopts=-j$(nproc --all) --kernel-config=/usr/linux/.config --zfs
Możemy teraz przeładować listę jąder w grub
grub-mkconfig -o /boot/grub/grub.cfg
Dodanie serwisów ~zfs~ do uruchamiania przy starcie
rc-update add zfs-mount boot
rc-update add zfs-share default
rc-update add zfs-zed default
rc-update delete hwclock boot
Instalacja ~net-misc/networkmanager~
emerge net-misc/networkmanager
rc-update add NetworkManager default
Zmiana hasła & Tworzenie użytkownika
Po wykonaniu wszystkich kroków jesteśmy gotowi do kroków ostatecznych. Zmiana hasła ;) oraz utworzenie użytkownika
passwd
useradd -m -G users,wheel,audio,cdrom,cdrw,usb,video -s /bin/bash yorune
passwd yorune
REBOOT
Możemy teraz ponownie uruchomić komputer powinień pokazać nam się grub z naszym jądrem. Po wyborze powinniśmy być w stanie bootowanie Gentoo Linux.
Instalacja po pierwszym uruchomieniu - moja personalna lista
emerge admin-app/doas app-editors/neovim app-editors/emacs x11-misc/dunst \
x11-misc/compton x11-apps/setxkbmap www-client/firefox-bin sys-apps/ripgrep \
net-vpn/wireguard-tools net-misc/youtube-dl net-irc/quassel net-im/teams \
net-im/discord-bin net-fs/samba net-fs/cifs-utils media-video/mpv \
media-video/ffmpeg media-sound/pulsemixer media-sound/pulseaudio \
media-sound/ponymix media-sound/cmus media-gfx/gnome-screenshot \
media-fonts/nerd-fonts media-fonts/terminus-font lxde-base/lxappearance \
mail-client/neomutt media-fonts/joypixels dev-util/shellcheck-bin \
dev-vcs/lazygit dev-tex/latexmk dev-tex/latex-beamer dev-db/dbeaver-bin \
app-text/wgetpaste app-text/texlive-core app-text/texlive app-text/pandoc-bin \
app-text/mupdf app-text/dos2unix app-text/aspell app-shells/oh-my-zsh \
app-shells/fzf app-portage/repoman app-portage/lto-rebuild app-portage/genlop \
app-office/libreoffice app-misc/ranger app-misc/neofetch app-misc/jq \
app-editors/neovim app-editors/emacs app-dicts/aspell-pl app-dicts/aspell-en \
app-admin/keepassxc x11-base/xorg-server app-emulation/docker x11-apps/xsetroot \
x11-apps/xrandr net-misc/rdate x11-apps/xinput x11-misc/xautolock sys-apps/yarn \
x11-libs/libXft gnome-extra/nm-applet sys-power/suspend sys-process/cronie \
sys-power/acpi mail-client/neomutt app-admin/pass mail-mta/msmtp net-mail/isync \
www-client/lynx app-misc/abook x11-misc/xclip dev-python/notebook \
dev-python/pip net-misc/streamlink app-portage/genlop dev-util/ccls \
app-portage/gentoolkitdev-util/ebuildtester app-admin/ccze \
texlive-langpolish xfreerdp net-news/newsboat sci-calculators/qalculate-gtk
Wybór środowiska graficznego
System Gentoo Linux oferuje bardzo dużą ilość środowisk graficznych większość z nich można znaleźć na stronie [[https://wiki.gentoo.org/wiki/Desktop_environment][Gentoo Desktop Environment]]
Pytania
Jeżeli znalazłeś błąd albo jakąkolwiek niejasność napisz email na [email protected]~. Dziękuje bardzo <3
Dodanie upstream
Dodanie Local CA
root #mkdir -p /usr/local/share/ca-certificates/
root #cp path/to/my.crt /usr/local/share/ca-certificates/
Resolve issue with invalid packages
Update 2> tmptxt
#!/bin/bash
for j in $(cat tmptxt | grep -i invalid | awk -F: '{print $2}' | awk -F/ '{print $2}'); do
CUR=$j
NUMB=$(echo $CUR | grep -oE '[0-9]' | head -n1)
i=$(echo $CUR | sed '0,/'$NUMB'/s//-'$NUMB'/')
set -x
sed -i 's/'$j'/'$i'/g' /etc/portage/package.use
set +x
done
MacOS
Install emacs on MacOs
brew tap railwaycat/emacsmacport
brew install emacs-machine
brew untap railwaycat/emacsmacport
Backup of packages from brew
yorune@MacBook ~ master $ brew leaves | xargs -n1 > ~/brew-packages
cat ~/brew-packages
yorune@MacBook ~ master $ cat ~/brew-packages
ansible
ccls
docker
fzf
gnupg
go
htop
jesseduffield/lazygit/lazygit
mpv
neovim
pinentry-mac
railwaycat/emacsmacport/emacs-mac
ripgrep
shellcheck
telnet
tmux
yarn
Bash
Set default value is null
#To get the assigned value, or default if it's missing:
FOO="${VARIABLE:-default}" # If variable not set or null, use default.
#Or to assign default to VARIABLE at the same time:
FOO="${VARIABLE:=default}" # If variable not set or null, set it to default.
Remove spaces at the begging
sed 's/^[ \t]*//' file
Remove n-th appear
sed '0,/'$NUMB'/s//-'$NUMB'/
Reading
while read line; do echo $line; done
FFMPEG
Cut from 00:00:00 to 00:24:00
fmpeg -ss 00:00:00 -i INPUT.mp4 -c copy -t 00:24:00 OUTPUT.mp4
AWS - Getting a ip range
AWS IP ranges for EC2 in EU-WEST-2
curl --silent https://ip-ranges.amazonaws.com/ip-ranges.json \
| grep -i '"region": "eu-west-2"' -C2 \
| grep -i '"service": "EC2"' -B 3 \
| grep -i ip_pr \
| awk -F ':' '{print "[AWS-EC2-West-2]" $2}' \
| sed 's/"//g;s/,//g' \
| sed 's/; /;/g'
AWS IP Address simple script
#!/bin/bash
export FILETMP='tmpfile'
export REGION='EU-West-2'
export SERVICE='EC2';
grep -i ''$REGION'' -A10 config.conf \
| grep -i 'set member' \
| sed 's/set member//g;s/^[[:space:]]*//g' \
| head -n1 \
| sed 's/" "/\n/g;s/"//g' \
| sort -u > /tmp/${FILETMP}-FG
curl --silent https://ip-ranges.amazonaws.com/ip-ranges.json \
| grep -i '"region": "'$REGION'"' -C2 \
| grep -i '"service": "'$SERVICE'"' -B3 \
| grep -i ip_pr | awk -F ':' '{print "[AWS-'$SERVICE'-'$REGION']" $2}' \
| sed 's/"//g;s/,//g' \
| sed 's/; /;/g' \
| sort -u > /tmp/${FILETMP}
dos2unix /tmp/${FILETMP}-*
diff /tmp/${FILETMP}-FG /tmp/${FILETMP}
OneLine:
export FILETMP='tmpfile'; export REGION='EU-West-2'; export SERVICE='EC2'; grep -i ''$REGION'' -A10 config.conf | grep -i 'set member' | sed 's/set member//g;s/^[[:space:]]*//g' | head -n1 | sed 's/" "/\n/g;s/"//g' | sort -u > /tmp/${FILETMP}-FG ; curl --silent https://ip-ranges.amazonaws.com/ip-ranges.json | grep -i '"region": "'$REGION'"' -C2 | grep -i '"service": "'$SERVICE'"' -B 3 | grep -i ip_pr | awk -F ':' '{print "[AWS-'$SERVICE'-'$REGION']" $2}' | sed 's/"//g;s/,//g' | sed 's/; /;/g' | sort -u > /tmp/${FILETMP}; dos2unix /tmp/${FILETMP}-* ; diff /tmp/${FILETMP}-FG /tmp/${FILETMP}
Sed
Remove the comments in file (inputFile)
sed -e 's/#.#$//' -e '/^$/d' inputFile
Windows
Zmiana priorytetu karty sieciowej na systemie Windows
PS C:\WINDOWS\system32> Get-NetIPInterface
ifIndex InterfaceAlias AddressFamily NlMtu(Bytes) InterfaceMetric Dhcp ConnectionState PolicyStore
------- -------------- ------------- ------------ --------------- ---- --------------- -----------
30 vEthernet (Bridged) IPv4 1500 35 Enabled Connected ActiveStore
14 vEthernet (VMNetwork) IPv4 1500 15 Disabled Connected ActiveStore
31 Ethernet 7 IPv4 1500 35 Enabled Disconnected ActiveStore
96 vEthernet (WiFi) IPv4 1500 15 Disabled Connected ActiveStore
92 vEthernet (vEthernet (Brid) IPv4 1500 15 Disabled Connected ActiveStore
88 vEthernet (vEthernet (VMNe) IPv4 1500 5000 Disabled Connected ActiveStore
5 Ethernet 3 IPv4 1500 35 Enabled Disconnected ActiveStore
27 vEthernet (Ethernet 7) IPv4 1500 5000 Disabled Connected ActiveStore
12 Local Area Connection* 12 IPv4 1500 25 Enabled Disconnected ActiveStore
13 Local Area Connection* 11 IPv4 1500 25 Enabled Disconnected ActiveStore
58 vEthernet (Ethernet 3) IPv4 1500 5000 Disabled Connected ActiveStore
33 vEthernet (Default Switch) IPv4 1500 15 Disabled Connected ActiveStore
20 WiFi IPv4 1500 5 Enabled Connected ActiveStore
1 Loopback Pseudo-Interface 1 IPv4 4294967295 75 Disabled Connected ActiveStore
PS C:\WINDOWS\system32> Set-NetIPInterface -InterfaceIndex "20" -InterfaceMetric "5"
Get user's last password restart
get-aduser -identity <USERNAME> -properties passwordlastset, passwordneverexpires, AccountExpirationDate | sort name | ft Name, passwordlastset, Passwordneverexpires
Zmiana persmisji
Fortigate
Connect into a memeber HA
execute ha manage [ID] [user]
Check Licence
FG301E # get system fortiguard
protocol : https
port : 8888
load-balance-servers: 1
auto-join-forticloud: enable
update-server-location: any
sandbox-region :
fortiguard-anycast : disable
antispam-force-off : disable
antispam-cache : enable
antispam-cache-ttl : 1800
antispam-cache-mpercent: 2
antispam-license : Contract
antispam-expiration : Sun Nov 20 2022
Sprawdzenie czy FortiGate jest w conservative mode
FG # diagnose hardware sysinfo conserve
memory conserve mode: off
total RAM: 7980 MB
memory used: 5419 MB 67% of total RAM
memory freeable: 494 MB 6% of total RAM
memory used + freeable threshold extreme: 7581 MB 95% of total RAM
memory used threshold red: 7022 MB 88% of total RAM
memory used threshold green: 6543 MB 82% of total RAM
Top
Aby wyświetlić wszytskie aktualne procesy uruchomione na urządzeniu wystarczy w trybie konsolowym uruchomić komendę:
diagnose sys top-summary
### CPU [|||||||||| ] 27.4%
### Mem [|||||||||||||||||||||||||| ] 65.0% 5221M/7980M
### Processes: 20 (running=1 sleeping=168)
### PID RSS ^CPU% MEM% FDS TIME+ NAME
### * 202 1G 58.7 22.9 373 00:50.78 ipsmonitor [x5]
### 231 361M 10.6 4.5 14 35:10.98 src-vis
### 221 98M 5.8 1.2 805 25:13.19 wad [x11]
Debug Stop
diagnose debug disable
diagnose debug flow trace stop
diagnose debug flow filter clear
diagnose debug reset
Uruchomienie trybu debugującego dotyczącego wskazanego ruchu
diagnose debug disable
diagnose debug flow trace stop
diagnose debug flow filter clear
diagnose debug reset
diagnose debug flow filter saddr SOURCE-IP-ADDRESS
diagnose debug flow filter daddr DEST-IP-ADDRESS
diagnose debug flow show console enable
diagnose debug flow show function-name enable
diagnose debug console timestamp enable
diagnose debug flow trace start 999
diagnose debug enable
Uruchomienie trybu debugującego dotyczącego tunnelu
diagnose vpn ike gateway list name NAME
diagnose vpn ike log-filter dst-addr4 IPADDRESS
diagnose debug application ike -1
diagnose debug enable
diagnose debug disable
Wyświetlenie aktualnego statusu dotyczącego IPSec tunnels
get vpn ipsec tunnel summary
Uruchomienie trybu debugującego dotyczącego IPSec tunnels
diagnose vpn ike gateway list name NAME
diagnose vpn ike log-filter dst-addr4 SOURCE-IP-ADDRESS
diagnose debug application ike -1
diagnose debug enable
Problem dotyczący tunelu / tuneli IPSec
Jeśli ponowne uruchomienie interfejsu nie przyniesie, może to oznaczać, że problem jest połączony z IPsec SA, istnieją trzy metody:
- Restartowanie jednego tunnelu:
diag vpn ike gateway flush NAME
- Restartowanie wszytskich tuneli:
diag vpn tunnel flush
diag vpn tunnel reset
- Restartowanie modułu IKE:
get system performance top
# W poprzedniej komendy weź numer PID procesu IKED
diagnose system kill 11 NR-PROCESU-IKED
Podstawowa konfiguracja BGP
config router prefix-list
config router route map
config router bgp
Wyświelenie aktualnego statusu dotyczącego protokołu BGP
get router info bgp summary
Wyświetlenie routingu dla odpowiedniego sąsiada (neighbors)
get router info bgp neighbors 10.0.0.5 advertised-routes
get router info bgp neighbors 10.0.0.5 received-routes
get router info bgp neighbors 10.0.0.5 routes
Get address object with name: AZURE-FRONTEND
for i in $(cat <CONFIG-FILE> | grep -iE 'AZURE-FRONTEND-' -a2 | grep -i subnet | awk '{print $3","$4}'); do IP=$(echo $i | awk -F, '{print $1}'); NET=$(echo $i | awk -F, '{print $2}'); NET_MASK=$(netmask-to-mask $NET); echo -e "$IP$NET_MASK"; done | sort > ~/old-ips-azure
Wymuszenie wyczyszczenia routingu protokołu BGP
Dla wszytskich sąsiadów
execute router clear bgp all soft
Dla konkretnego adresu ip
execute router clear bgp ip ADDRESS-IP soft
Wyświetlenie aktualnych zmian po wykonaniu aktualizacji
diagnose debug config-error-log read
Problem with IPSEC
If restarting the interface do not bring it might mean that issue is connected to IPsec SA, there are four methods:
CLI Restart one tunnel
diag vpn ike gateway flush name <name>
CLI Restart ALL tunnels
diag vpn tunnel flush
diag vpn tunnel reset
CLI Restart ipsec module
THIS COMMAND RESET IPSEC AND SHOULD BE USED ONLY AS A LAST RESORT
get system performance top
diagnose system kill 11 <pid of iked>
Change a FortiClient on the WebPortal
config vpn ssl web portal
edit "<YOUR-WEBPORTAL>"
set customize-forticlient-download-url enable
set windows-forticlient-download-url "https://filestore.fortinet.com/forticlient/downloads/FortiClientVPNSetup_6.2.6.0951_x64.exe"
set macos-forticlient-download-url "https://filestore.fortinet.com/forticlient/downloads/FortiClientVPNSetup_6.2.0_macosx.dmg"
next
Aruba
Sprawdzenie wesji oraz uptime
AP# show version
Aruba Operating System Software.
ArubaOS (MODEL: 305), Version 8.6.0.9
Website: http://www.arubanetworks.com
(c) Copyright 2021 Hewlett Packard Enterprise Development LP.
Compiled on 2021-04-07 at 05:24:48 UTC (build 79813) by p4build
FIPS Mode :disabled
AP uptime is 2 days 23 hours 31 minutes 12 seconds
Articles
Install new sudo - 1.9.5p due to CVE
PreBuild version
rpm -iv --force https://github.com/sudo-project/sudo/releases/download/SUDO_1_9_5p2/sudo-1.9.5-3.el7.x86_64.rpm
rpm -iv --force https://github.com/sudo-project/sudo/releases/download/SUDO_1_9_5p2/sudo-1.9.5-3.el8.x86_64.rpm
Build from Source - CentOS
sudo -V | grep -i "Sudo version"
yum install gcc gcc-c++ kernel-devel make git -y
git clone https://github.com/sudo-project/sudo.git
cd sudo
git checkout --track origin/sudo-1.9
./configure
make
sudo make install
/bin/bash
sudo -V | grep -i "Sudo version"
cd ..
rm -rf sudo/
Adding good source for old Debian Wheezy
Edit file /etc/apt/sources.list:
deb http://archive.debian.org/debian wheezy main
Build from Source - Debian
sudo -V | grep -i "Sudo version"
apt install build-essential make git -y
git clone https://github.com/sudo-project/sudo.git
cd sudo; git checkout --track origin/sudo-1.9
./configure
make
sudo make install
/bin/bash
sudo -V | grep -i "Sudo version"
cd ..
rm -rf sudo
Install CSGO Server with Docker
docker run --publish 27015:27015/tcp \
--publish 27015:27015/udp \
--publish 27020:27020/tcp \
--publish 27020:27020/udp -d \
-e SRCDS_PORT=27015 \
-e SRCDS_RCONPW=B0dmUhGQROymQY1vTb0OMTXFy9ZaNFf8 \
-e SRCDS_TICKRATE=128 \
-e SRCDS_PW=$SERVER_PASSWORD \
-e SRCDS_MAXPLAYERS=10 \
-e SRCDS_WORKSHOP_AUTHKEY=$WORKSHOP_KEY \
-e SRCDS_STARTMAP="de_dust2" \
-e SRCDS_TOKEN=$SRCD_TOKEN \
-e ADDITIONAL_ARGS="+net_public_adr "0.0.0.0" -ip "0.0.0.0"" \
--name=csgo-server cm2network/csgo