Apple
Kako zagnati adhoc spletni strežnik
11/09/22 11:03
Včasih želimo zagnati adhoc spletni strežnik, da preizkusimo kako bi določena koda delovala, brez da bi nameščali namenski speltni strežnik.
Če imate nameščen python programski jezik, lahko to naredite kar iz orodne vrstice (CLI)
#python -m http.server "port"
Primer
#python -m http.server 7000
Če imate nameščen PHP lahko podobno naredit iz orodne vrstice (CLI):
#php -S 127.0.0.1 -p "port"
Primer
#php -S 127.0.0.1 -p 7000
Če imate nameščen python programski jezik, lahko to naredite kar iz orodne vrstice (CLI)
#python -m http.server "port"
Primer
#python -m http.server 7000
Če imate nameščen PHP lahko podobno naredit iz orodne vrstice (CLI):
#php -S 127.0.0.1 -p "port"
Primer
#php -S 127.0.0.1 -p 7000
Secure shell povezava javi napako
19/08/22 11:17
Ko se želimo povezati preko secure shell povezave javi napako:
ssh test@test.local
Unable to negotiate with test.localport 22: no matching key exchange method found. Their offer: diffie-hellman-group14-sha1
Kaj storiti?
V novejših različicah ssh konfiguracije so se odstranili naketeri manj varni protokoli. Potrebno jih je dodati. Predlaga se, da za vsako destinacijo posebaj naredite vnos in en v konfiguracijsko datoteko, ki velja za cel sistem, ker s tem manjšate varnost naprave iz katere se povezujete.
V osebnem iemniku je potrebno narediti config datoteho pord .ssh mapo.
nano $user/.ssh/config
v datoteko dodamo naslednji zapis:
Host test.local
KexAlgorithms +diffie-hellman-group1-sha1
Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-cbc,3des-cbc,aes128-cbc,3des-cbc,aes192-cbc,aes256-cbc
S tem se popravi samo povezava do test.local. Če želite narediti za vse, je potrebno v host vrstici namesto test.local dodati *.
ssh test@test.local
Unable to negotiate with test.localport 22: no matching key exchange method found. Their offer: diffie-hellman-group14-sha1
Kaj storiti?
V novejših različicah ssh konfiguracije so se odstranili naketeri manj varni protokoli. Potrebno jih je dodati. Predlaga se, da za vsako destinacijo posebaj naredite vnos in en v konfiguracijsko datoteko, ki velja za cel sistem, ker s tem manjšate varnost naprave iz katere se povezujete.
V osebnem iemniku je potrebno narediti config datoteho pord .ssh mapo.
nano $user/.ssh/config
v datoteko dodamo naslednji zapis:
Host test.local
KexAlgorithms +diffie-hellman-group1-sha1
Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-cbc,3des-cbc,aes128-cbc,3des-cbc,aes192-cbc,aes256-cbc
S tem se popravi samo povezava do test.local. Če želite narediti za vse, je potrebno v host vrstici namesto test.local dodati *.
"no matching cipher found" pri povezovanju s SSH klientom
19/08/22 11:17
Pred nekaj dnvei sem se poskušal priklopiti na eno starejšo napravo preko SSH protokola, a sem dobil nazaj naslednjo napako:
no matching cipher found. Their offer: aes128-cbc,3des-cbc,aes192-cbc,aes256-cbc
Napako, ki jo javi, ni problem klienta ampak odjemalca, ker le ta podpira samo "staro" slabo šifriranje, novejši klienti, pa tega nimajo omogočeno. Če želimo se povezati na to staro napravo lahko uporabimo dva načina. En način je, da omogočimo tudi šibkejše šifriranje ali pa v ukazni vrstici za SSH definiramo kateri šifrirni način bomo uporabili.
1. Omogoči šibke šifrirne načine:
Macos
sudo nano /etc/ssh/ssh_conf
omogoči je potrebno dve vrstici (pobrisati # simbol):
# Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-cbc,3des-cbc
# MACs hmac-md5,hmac-sha1,umac-64@openssh.com
Linux
sudo nano /etc/ssh/ssh_conf
omogočiti je potrebno dve vrstici (pobrisati # simbol) in ponovno zagnati SSH deamon:
# KexAlgorithms diffie-hellman-group1-sha1,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sh>
# Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-cbc,3des-cbc
sudo sudo systemctl restart ssh
2. Uporabiti šibkeši šifrirni način v SSH ukazni vrstici
ssh -c aes256-cbc test@test.local
no matching cipher found. Their offer: aes128-cbc,3des-cbc,aes192-cbc,aes256-cbc
Napako, ki jo javi, ni problem klienta ampak odjemalca, ker le ta podpira samo "staro" slabo šifriranje, novejši klienti, pa tega nimajo omogočeno. Če želimo se povezati na to staro napravo lahko uporabimo dva načina. En način je, da omogočimo tudi šibkejše šifriranje ali pa v ukazni vrstici za SSH definiramo kateri šifrirni način bomo uporabili.
1. Omogoči šibke šifrirne načine:
Macos
sudo nano /etc/ssh/ssh_conf
omogoči je potrebno dve vrstici (pobrisati # simbol):
# Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-cbc,3des-cbc
# MACs hmac-md5,hmac-sha1,umac-64@openssh.com
Linux
sudo nano /etc/ssh/ssh_conf
omogočiti je potrebno dve vrstici (pobrisati # simbol) in ponovno zagnati SSH deamon:
# KexAlgorithms diffie-hellman-group1-sha1,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sh>
# Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-cbc,3des-cbc
sudo sudo systemctl restart ssh
2. Uporabiti šibkeši šifrirni način v SSH ukazni vrstici
ssh -c aes256-cbc test@test.local
sshuttle - VPN preko SSH
19/08/22 11:16
V današnjih domačih omrežjih imamo polno servisov, do katerih bi želeli prihajati od kjerkoli. Najboljša možnost je uporabiti VPN (Virtualno Navidezno Omrežje). Za to moramo imeti usmerjevalnik/požarni zid, ki to zna zaključevati in seveda moramo znati tudi namestiti in nastaviti. Alternativa temu je lahko SSH VPN, preko katerega lahko peljemo ves TCP promet ali pa samo promet, ki je namenjen v naše domače omrežje.
No svojem usmerjevalniku moramo "forwardirati" port do SSH steržnika. Privzeti je 22, a predlaga se, da se uporabi alternativni. Seveda ne pozabimo na zaščito SSH protokola, a to je zgodba za drugi prispevek.
Ko smo namestili in zaščitili SSH protokol na linux strežniku in do njega lahko dostopamo iz kjerkoli, bomo za vzpostavitev SSH VPN-ja potrebovali program SSHUTTLE. Namestimo ga lahko na linux distribucije in macos, z uporabo homebrew-ja.
Nemastitev za linux (debian in derivati)
sudo apt install sshuttle
Namestitev za macos (homebrew je obvezen)
brew install sshuttle
Ko imamo SSHUTTLE nameščen vpišemo naslednji ukaz:
sshuttle -r sshuser@remote-ip:remote-port ip-adresni-naslov/maska —dns —to-ns DNS-ip -v
—dns: pošlji vse DNS zahtevke preko SSH VPNja
—to-ns: definiramo oddaljen DNS strežmik, ki ga bomo uporabljali namesto privzetega
-v: izpiši dogajanje na SSH VPN-ju
Moram naglasiti, da SSH VPN deluje samo s TCP prometom in DNS prometom. Preko te povezav ne morete pošiljati ICMP in UDP prometa (razen DNS).
No svojem usmerjevalniku moramo "forwardirati" port do SSH steržnika. Privzeti je 22, a predlaga se, da se uporabi alternativni. Seveda ne pozabimo na zaščito SSH protokola, a to je zgodba za drugi prispevek.
Ko smo namestili in zaščitili SSH protokol na linux strežniku in do njega lahko dostopamo iz kjerkoli, bomo za vzpostavitev SSH VPN-ja potrebovali program SSHUTTLE. Namestimo ga lahko na linux distribucije in macos, z uporabo homebrew-ja.
Nemastitev za linux (debian in derivati)
sudo apt install sshuttle
Namestitev za macos (homebrew je obvezen)
brew install sshuttle
Ko imamo SSHUTTLE nameščen vpišemo naslednji ukaz:
sshuttle -r sshuser@remote-ip:remote-port ip-adresni-naslov/maska —dns —to-ns DNS-ip -v
—dns: pošlji vse DNS zahtevke preko SSH VPNja
—to-ns: definiramo oddaljen DNS strežmik, ki ga bomo uporabljali namesto privzetega
-v: izpiši dogajanje na SSH VPN-ju
Moram naglasiti, da SSH VPN deluje samo s TCP prometom in DNS prometom. Preko te povezav ne morete pošiljati ICMP in UDP prometa (razen DNS).
Namestitev macos BigSur in Monterey na nepodprte Apple naprave
19/08/22 11:16
Namestitev Apple macos (BigSur in Monterey) na nepodprto Apple strojno opremo. Čeprav je le ta še vedno dovolj zmogljiva, se je Apple odločil, da ne bo več uradno podpru najnovejših različic na tej strojni opremi. Skupina dobrih ljudi je naredila programske spremembe, da se lahko namesti tudi najnovejše različice in ob tem ne zgubite uporabnosti.
Na naslednji povezavi imate dostop do OpenCore Legacy Patcher-ja.
Če lažje sledite navodilom na posnetku si poglejte youtube posnetek.
Pri meni delujeta dva taka mac-a (Macbook air 2012 in Macbook pro 2012).
Podaljšal sem življenje teh naprav vsaj še za nekaj let.
Na naslednji povezavi imate dostop do OpenCore Legacy Patcher-ja.
Če lažje sledite navodilom na posnetku si poglejte youtube posnetek.
Pri meni delujeta dva taka mac-a (Macbook air 2012 in Macbook pro 2012).
Podaljšal sem življenje teh naprav vsaj še za nekaj let.
Homebrew
19/08/22 11:16
Homebrew je "skupek" programov, ki manjkajo v apple operacijskem sistemu.
Za mene osebno nujnih programo. Kot primer so, wget, htop, cask, youtube-dl, imagemagick, itd.
Predno namestimo homebrew, moramo namestiti še xcode.
xcode-select —install
Homebrew se namesti na naslednji način:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Namestitev wget programa:
brew install wget
Za mene osebno nujnih programo. Kot primer so, wget, htop, cask, youtube-dl, imagemagick, itd.
Predno namestimo homebrew, moramo namestiti še xcode.
xcode-select —install
Homebrew se namesti na naslednji način:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Namestitev wget programa:
brew install wget
Nadgradnja macos iz opravilne vrstice
19/08/22 11:16
Macos lahko nadgradimo na več načinov, zato bomo pogledali, kako se naredi nadgradnja v opravilni vrstici (terminalu)
V terminalu zaženemo naslednji ukaz:
softwareupdate -i
S tem ukazom povprašamo apple strežnike, če obstaja kakšen paket nadgradenj.
Če želimo namestiti vse popravke pomen napišemo naslednji ukaz:
softwareupdate -i -a
Če želimo namestiti samo določen paket napišemo naslednji ukaz:
softwareupdate -i 'MacOS Catalina 10.15.7 Update-'
V terminalu zaženemo naslednji ukaz:
softwareupdate -i
S tem ukazom povprašamo apple strežnike, če obstaja kakšen paket nadgradenj.
Če želimo namestiti vse popravke pomen napišemo naslednji ukaz:
softwareupdate -i -a
Če želimo namestiti samo določen paket napišemo naslednji ukaz:
softwareupdate -i 'MacOS Catalina 10.15.7 Update-'