skip to Main Content

ssh bağlantısında hesap değişim algoritmasının kullanılması

komut satırından ssh kullanmaya yeni başladıysanız aşagıdakine benzer hatalar ile karşılaşırsanız bunun nedeni sunucu tarafından bir hesap değişim algoritmasının aktif eilmiş olmasındandır.

# ssh  -p 3333 sshuser@ferhatcicek.com
Unable to negotiate with 10.66.26.35 port 3333: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1,diffie-hellman-group14-sha1

peki bu durumda ne yapacaksınız. yukarıdaki çıktıda diffie hellman algoritmasının kullanıldığı belirtiliyor. ssh bağlantısında parametre olarak bunu belirmemiz gerekmektedir.

# ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -c 3des-cbc -p 3333 sshuser@ferhatcicek.com 

komutu eksiksiz olarak yazdıysak aşagıdaki şekilde bir çıktı ile karşılacağız..

The authenticity of host '[ferhatcicek.com]:3333 ([10.66.26.35]:3333)' can't be established.
RSA key fingerprint is SHA256:NHXQ1no3z/Z2e/KoqrKyn0vNKlYhKmhvhtsQFXS4rvk.
Are you sure you want to continue connecting (yes/no/[fingerprint])?

yes yazarak kabul ettikten sonra ne bağlantı gerçekleşmiş olacak

Let’s Encrypt sertifikasının silinmesi

Let’s Encrypt dan bir sertifika aldıysanız sertifikaya ait dosyalar

/etc/letsencrypt/archive
/etc/letsencrypt/live
/etc/letsencrypt/renewal

dizinleri altında tutulmaktadır. herhangi bir alanadına ait sertifikayı silmek isterseniz

sudo certbot delete

komutu kullanabilir ve listden alan adı seçilerek işlem yapılabilir veya doğrudan alarn adı belirterek

sudo certbot delete --cert-name alanadi.com

sertifika silinebilir

nginx den alan adının ve sertifikanın silinmesi

öncelikle alan adımı tanımlayalım

alanadi=ferhatcicek.com

alanadına ait konfigürasyon dosyalarını silelim

sudo rm /etc/nginx/sites-available/$alanadi
sudo rm /etc/nginx/sites-enabled/$alanadi

nginx i yeniden başlatalım

sudo nginx -t  
sudo service nginx restart

ve mevcut sertifikaları görüntüleyelim ve alanadına ait sertifikayı certboot ile silelim

certbot certificates

sudo certbot delete --cert-name $alanadi

docker kullanarak zabbix kurulumu

öncelikle kullanacağız image leri docker repository den çekeceğiz. Bu örnekte sunucu olarak nginx ve veritabanı olarak mysql kullanıyorum. daha optmizebir bir yapı taiki kurulabilir.

docker pull mysql
docker pull zabbix/zabbix-server-mysql
docker pull zabbix/zabbix-web-nginx-mysql
docker pull zabbix/zabbix-java-gateway
docker pull zabbix/zabbix-agent

sonrasında

docker images

ile kontrolleri yapabiliriz.

şimdi sıra ile imageleri başlatalım. kullanılan port kullanıcı adı ve şifrenizi mevcut sistemine göre uyarlamanız gerekebilir.

docker run --name mysql-server -t -e MYSQL_DATABASE="zabbix" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="zabbixmysqlsifre" -e MYSQL_ROOT_PASSWORD="mysqlrootsifre" -d mysql --character-set-server=utf8 --collation-server=utf8_bin --default-authentication-plugin=mysql_native_password
docker run --name zabbix-java-gateway -t --restart unless-stopped -d zabbix/zabbix-java-gateway
docker run --name zabbix-server-mysql -t -e DB_SERVER_HOST="mysql-server" -e MYSQL_DATABASE="zabbix" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="zabbixmysqlsifre" -e MYSQL_ROOT_PASSWORD="mysqlrootsifre" -e ZBX_JAVAGATEWAY="zabbix-java-gateway" --link mysql-server:mysql --link zabbix-java-gateway:zabbix-java-gateway -p 10051:10051 --restart unless-stopped -d zabbix/zabbix-server-mysql
docker run --name zabbix-web-nginx-mysql -t -e DB_SERVER_HOST="mysql-server" -e MYSQL_DATABASE="zabbix" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="zabbixmysqlsifre" -e MYSQL_ROOT_PASSWORD="mysqlrootsifre" --link mysql-server:mysql --link zabbix-server-mysql:zabbix-server -p 80:8080 --restart unless-stopped -d zabbix/zabbix-web-nginx-mysql
docker run --name zabbix-agent --link mysql-server:mysql --link zabbix-server-mysql:zabbix-server -e ZBX_HOSTNAME="Zabbix server" -e ZBX_SERVER_HOST="zabbix-server" -d zabbix/zabbix-agent

doğru şekilde çalıştığını kontrol edelim.

docker ps -a

şimi konfigürasyon bilgilerine bakalım… burada bize ip adresi gerekiyor…

docker inspect zabbix-agent

şimfi bir tarayıcı açarak ip adresini yazalım. zabbix kullanıcı giriş sayfası ile karşılaşırsak herşey tamamdır. default kullanıcı ado şifresi

Username: Admin
Password: zabbix

şeklindedir

windows da taskkill ile görev sonlandırma

zorunlu olarak windows kullanıyorsanız linuxdeki görevi oldürmek için ps ve kill kombinasyonlarını sürekli arıyorsunuz. windowsda bunun için bir tool var aslında..

tasklist /v

ile mevcut görev tablosunu görebilirsiniz. bu tabloda pid ile görevi sonlandırmak isterseniz taskkill uygulamasını kullanmamız gerkeiyor.

taskkill /F /PID pid-numarasi

uygulama adı ise görevi sonlandırmak isterseniz

taskkill /F /IM "ferhatcicektest.exe"

parametlerini kullanailirsiniz. uygulama ismi içinde joker karekter kullanımına izin verilmekte.

taskkill /F /IM "ferhat**"

rainloop dizin ve dosya yetki ayarları

kurulumun /var/www/rainloop dizinine yapıldığını varsayarak yetkili kullanıcı ile aşagıdaki komutlar çalıştırılmalıdır

cd /var/www/rainloop
find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;
cd /var/www/rainloop
chown -R www-data:www-data .

Windows Subsystem for Linux – WSL aktif edilmesi

wsl sürümünü ögrenmek yazısında wsl sürümünü ögrenmeyi ve farklarını yazmıştım. peki nasıl aktif edeceğiz sorusu için detaylı bilgi almak isterseniz https://docs.microsoft.com/tr-tr/windows/wsl/install-win10 adresini ziyaret edebilirsiniz.

veya aşagıdaki komutları powershell üzerinde çalıştırarak aktif edebilirsiniz.

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

şimdi wsl in varsayılan sürümünü 2 olarak ayarlayalım.

wsl --set-default-version 2

sonrasında mağazalar uygulamasını açarak mağazada yer alan linux dağıtımlarını yükleyebilirsiniz. benim önerim debian veya ubuntu yüklemenizdir. wsl diye aratırsanız kullanabileceğiniz dağıtımlar çıkacaktır.

herhangi bir dağıtımı seçim kurduktans sonra başlattığınızda biraz beklemeniz gerekiyor. ve sonrasında kullanıcı adı şifresi oluşturarak kullanıma hazır hale geliyorsunuz.

wsl sürümünü ögrenmek

windows son sürümleri ile hayatımıza girenWSL ( Windows Subsystem for Linux ) in hangi versionda çalıtığını ögrenmek için aagıdaki komut yapısı kullanılabilir.. wsl2 kullanabilemek için windowsun bazı güncellemeleri almış olması gerekiyor.

PS C:\Users\fcicek> wsl -l -v
  NAME                   STATE           VERSION
* Debian                 Stopped         1
  docker-desktop-data    Running         2
  Ubuntu-18.04           Running         1
  docker-desktop         Running         2

wsl ile wsl2 arasında ne fark derseniz microsoftun kendi sitesinde aşagıdaki tablo yer alıyor.

FeatureWSL 1WSL 2
Integration between Windows and Linux
Fast boot times
Small resource foot print
Runs with current versions of VMware and VirtualBox
Managed VM
Full Linux Kernel
Full system call compatibility
Performance across OS file systems

Back To Top