VPS'im güvenli mi? Elimden gelenleri yaptım.

- Root logini devre dışı bıraktım.
- Sudo yetkili ayrı bir kullanıcı oluşturdum. Sadece bu kullanıcı giriş yapabiliyor.
- Şifreyle girişi kapattım. Sadece bilgisayarımdaki SSH key ile girilebiliyor.
- SSH girişi için fail2ban kurdum. 3 yanlış denemeden sonra 1 günlüğüne denemeyi yapan IP banlanıyor.
- UFW firewall ayarlarında varsayılan olarak tüm gelen istekleri reddettim, sadece kendi ayarladığım ve ihtiyacım olan trafiğe izin veriyorum (SSH ve Caprover için gereken minimum izinler verildi sadece).

Yalnız varsayılan SSH portunu (22) değiştirmedim, bunu değiştirmeli miyim? Bir de SSH girişine 2 faktörlü doğrulama eklenebiliyormuş ama yapmadım onu, gerek var mı bilmiyorum.

BeğenFavori PaylaşYorum yap
Önceki yorumları gör 55 / 57
  • Mamba @blackmamba

    Sabit IP ücretleri kaç para bilmiyorum ama, değecek bir iş yapıyorsanız IP'nizi sabitleyip iptables ile kısıtlama yapabilirsiniz.

    • Outrun @outrun

      Kablonet kullanıyorum, statik IP aylık 50 liraymış. Şundan korktum ama, şimdi bunlar statik IP'yi tanımlar, ben de server'ıma sadece ondan bağlanacak şekilde ayarlarım, 1 yıl kullanırım ve birden kablonet hata yapıp IP'yi değiştirir ve server'ıma erişemez hale gelirim 😀 Böyle bir hata olma ihtimali var mı acaba?

  • Player 1 @player-1

    Portu da değiştirsen iyi olur. ssh programında bir açık varsa ilk denenen port varsayılan port olur.

  • Robin @robin

    Portu değiştirmek kesin çözüm değildir. Eğer siteniz üzerinden veya başka şekilde ip adresiniz tespit edildiyse nmap gibi araçlarla portlar taranıp açık olan port bulunur. o yüzden kaçış olarak pek güvenli değil portu değiştirmek. Hatta bazı siteler bu tarz default port olarak yakalanan ip adreslerini liste olarak sunuyor 😀 hangi versiyon apache veya iss var ssh var, ip adresi ve konum vs her şeyi gösteriyor 🙂

    Gerekli çoğu şeyi zaten yapmışsınız ilave olarak belki vps satın aldığınız yerin kendi firewall çözümü varsa içerisinden sadece sizin ip adresinden ssh portuna erişim vermeniz iyi olur. ip adresiniz değiştiğinde sadece panelden ip yi değiştirmeniz yeterli ama sunucu içerisinde bu kısıtlamayı yaparsanız sıkıntı olur 🙂 hemde ip tespit etseler de porta erişemezler daha garanti bir çözüm olur

    Ayrıca sunucu içerisindeki dosyaları, en son hatalı ssh denemelerini ve login işlemlerini ve sunucu yükünü takip etmeniz de faydalı olabilir olası sızıntıyı tespit etmek için.

    Daha öncesinde bir müşterimin vps ine ssh üzerinden erişilip kendi yazdıkları botu çalıştırıp hem diğer sunuculara brute force yapan hemde mining yapan bir virüs denk gelmişti. Müşterim eticaret sitesini kendi sunucularında barındırıyordu site açılmadığını söyleyince sunucuyu kontrol edip 100% yük görünce o şekilde fark etmiştik.

    Ayrıca ssh key ile giriş yapmanız ek bir zaafiyete neden oluyor çünkü bilgisayarınıza bulaşan bazı botlar direkt kullanıcı dizinindeki .ssh klasörünü tarayıp oradaki keyleri kendisine gönderebiliyor hatta geçen de bununla ilgili bir botu siber güvenlik uzmanı chatgpt ye yaptırmıştı

    https://www.youtube.com/watch?v=muDJH8voTXI

    • Outrun @outrun

      SSH key ile girmek en güvenli yöntem değil mi? İki faktörlü doğrulamayı da kurayım bari SSH girişine. Hetzner'den aldım bu arada VPS'i.

    • Robin @robin

      @outrun Ssh key en güvenli yöntem diyemem. Onun da getirdiği avantaj ve dezavantaj var. sshi key bilgisayarınızdan kopyaladıklarında çok kolay şekilde erişim elde ediliyor. Bu sefer sadece sunucuyu korumak dışında kendi bilgisayarınızdaki key i de korumak gerekiyor. Başka sunucuya göndermek yerine sizin bilgisayarınzdaki key i kullanarak direkt erişim de elde etmiş oluyorlar ip engeline de takılmıyor zaten aynı makineden ve ip den istek gelmiş oluyor

      2FA sms ile de 100% güvenli bir yöntem değil ona da tam olarak güvenmeyin. Telefonunuza gelen sms i okuyup gönderebilen virüsler de var.

      Demek istediğim şu bu yöntemlerden mümkün olanları yapabildiğiniz kadar yapın ama asıl olay sunucuyu takip edip saldırıların farkında olmak. Bu konuştuğumuz her çözümün + ve - si mevcut.

    • Robin @robin

      @outrun Mesela bu key çalınmasına önlem olarak ssh da hem ssh key + password yapabilirsiniz. Yani key i girdikten sonra parola da sorar doğrulama için. bu sefer keye erişseler de parolayı bilmedikleri için o key aktif olmaz. Bu yukarıda dediğiniz parola doğrulaması ile aynı şey değil. Key i oluştururken parola istiyor onu boş geçmemeniz lazım.

    • Outrun @outrun

      @robin SMS ile değil de 2 faktörlü doğrulama uygulamasıyla mesela. SSH keyde ekstra şifre yok, boş bırakmıştım. O zaman şu an:

      - Varsayılan SSH portunu değiştirmek.
      - Yeni SSH key oluşturup şifre kısmını boş bırakmayıp, bu SSH key ile giriş yapmak. Şifresini de şifre yöneticisiyle rastgele oluşturup saklamak.
      - SSH girişe bir de 2 faktörlü doğrulama eklemek.
      - Hetzner ayarlarından sadece kendi IP adresim için SSH portuna erişim izni vermek. Kablonet'in verdiği IP değiştikçe web arayüzünden bu IP'yi güncellemek.

      Bunları yaparsam bayağı güvenli olur herhalde. Hetzner'e login olurken de 2FA açık tabii ki.

      Kullandığım 2 faktörlü doğrulama uygulaması özgür ve açık kaynaklı (GPL 3 lisanslı) ve sadece offline çalışıyor, açılırken pin ya da parmak izi girmem gerekiyor.

      Şifre yöneticisi olarak da Bitwarden kullanıyorum yıllardır.

      Her zaman uBlock Origin kullanıyorum, yasa dışı şeyler indirmiyorum (torrent vb). Bilgisayarıma virüs bulaşma ihtimali çok düşük olmalı. Diyelim ki bulaştı, SSH şifresi ve 2FA ile zaten bayağı güvende olur sunucum.

      Uygulamalarımı deploy etmek amacım sadece, VPS'i o yüzden kullanıyorum. Uygulamalarımı docker konteyner haline getirip deploy ediyorum, Caprover bu işe yarıyor.

      Bunları yapmaya çalışırken sysadmin oldum çıktım nerdeyse 😀

    • Robin @robin

      @outrun Şu ana kadar yaptıklarınızın 10% unu bile çoğu kişi yapmıyor. Bence böyle çok iyi oldu gayet yeterince güvenli çokta endişe etmenize gerek yok 🙂

      Bu arada docker candır çok seviyorum bende 🙂 Ayrıca genel olarak sunucuda neyin nasıl çalıştığının mantığını anlamanız çok iyi oluyor. Caprover olmadan kendiniz deploy etmeyi deneyin mesela o da size farklı şeyler katacaktır 🙂

    • Outrun @outrun

      @robin Şu ayarların hepsini yapayım kafam rahat olacak 😀

      Docker çok güzelmiş gerçekten. Github Actions ile birlikte çok güzel bir sistem kurdum. Projede bir Dockerfile var (Docker mantığını ve Dockerfile yazmayı kısa sürede öğrendim, linux kullanıcısı olunca ekstra kolay ve mantıklı geldi zaten), bir de .github/workflows/deploy.yml diye bir dosya var. Workflow dosyasında main branch'e push yapıldığında sırasıyla ne yapması gerektiği yazılıyor. Bu action çalıştığında projedeki Dockerfile ile build edip imajı oluşturuyor, sonra da bu imajı benim sunucuya yüklüyor. Push yaptıktan 45 saniye sonra güncel haliyle deploy edilmiş oluyor yani. Ağır işi de github'a yaptırmış oluyorum, kendi sunucumda build yapmamış oluyorum 😀 Github Actions gizli olmayan repolar için tamamen ücretsiz bu arada.

    • Robin @robin

      @outrun

      Bence şu an bile kafanız rahat edebilir. Sadece login olmak için şu an istek atarlar ama hatalı dönüş olur 🙂 Ssh login loglarına bi bakın hatta 🙂 Ama ip kısıtlaması ve parola + key de olursa çok daha rahat edersiniz güzel olur 🙂

      O zaman bir sonraki hedef docker compose u öğrenmek 🙂

      Docker compose baya kolaylaştırıyor projedeki birden fazla servisi ayağa kaldırmak için o yüzden tavsiye ederim.

      Evet evet github actions da çok güzel baya kolaylaştıran hazır templateleri de var

      Hangi dağıtımı kullanıyorsunuz ? 🙂 Uzunca süre Arch kullandım bu aralar OpenSuse deyim 😀 İkisini de tavsiye edebilirim. İlk Pardus çıktığı zamanlar başlamıştım linux dağıtımları kullanmaya. Linux dağıtımlarını kullanmak çok şey katıyor gerçekten. Sunucuda hiç yabancılık çekmiyorsunuz ve lazım olan çoğu şeyi nasıl yapacağınızı öğrenmiş oluyorsunuz.

      Peki projede client api db web server vs için neler kullanıyorsunuz ?

    • Outrun @outrun

      @robin Zaten fail2ban loglarında görüyorum, deneyip banlanan bir sürü IP var 😀 SS'de görünüyor 😀 Bunlar otomatik tarayıp giriş yapmaya çalışan botlar herhalde. IP'lerin konumlarına baktım dünyanın her yerinden var maşallah 😀

      Docker'ı etraflıca öğreneceğim. Aslında benim mesleğim yazılım değil ama meslek değiştirmeye çalışıyorum. İnşaat müh. mezunuyum hatta yüksek lisansım da var ama inşaatta doğru düzgün iş bulamadığım için ve çalıştığım işlerde hiç mutlu olmadığım için büyük bir karar verip bu işe koyuldum. Zaten İTÜ'de yüksek lisansımı bir yazılım projesi üzerinden yapmıştım, matlab kullandım ve hiç hazır yazılım kullanmadan tezim için kendi programımı yazdım ve onu kullandım. Hatta sonra hocamla makale yayınladık bunun üzerine.

      Neyse onlar geçti, şu an çok iyi bir müfredatı takip ediyorum ( https://www.theodinproject.com/ ) ve bitmek üzere. The Odin Project'in amacı job-ready full-stack yazılımcı yetiştirmek. Bayağı zor ve diğer eğitimlere hiç benzemiyor. İlk olarak linux kurdurup git öğretiyor, sonra başlıyor diğer konular. Gerçek ve işe girince kullanacağın araçlara balıklama atlatıyor yani. Konuları da detaylı öğretmiyor, internetteki en iyi kaynaklara yönlendiriyor, eğer internette yoksa o kısımları kendileri yazıyorlar. Proje ödevleri her zaman zor oluyor ve sadece birkaç maddeyle ne yapman gerektiğini açıklıyorlar, bildiklerini kullanıp bilmediklerini araya araya öğrenip projeyi tamamlıyorsun. Dokümantasyon okumaya alıştırıyor, zaten şunu fark ettim artık, internetteki her "tutorial" ve kurs aslında dokümantasyonun öğretilmesi. Bilmediğim her teknolojiyi okuyup öğrenebilir hale geldiğimi düşünüyorum.

      Şu an hem front-end hem back-end yazabiliyorum ve temellerini çok iyi öğrendim. Gerçek projeler yazabiliyorum. En son projem bir Blog CMS'di. Back-end olarak Node.js ve Express kullandım, db olarak MongoDB ve mongoose (ORM) kullandım. Hem session based hem de JWT auth implement ettim (Authentication / Authorization öğrenirken biraz fazla girdim tavşan deliğine). Kullanıcı rolleri de ekledim admin, user tarzı. Şu anda kendi blogum olarak kullanabileceğim bir sistemim olmuş oldu. Şuradan canlı olarak görebilirsiniz about sayfasında da github linkleri var: https://blog.ulus.uk/ Henüz yayınlamayacaktım ama şimdilik açtım, içinde test için attığım postlar var sadece 😀 Github sayfalarının readme kısımlarını falan yazacağım daha. Bu arada front-end olarak da react kullanıyorm typescript ile.

      Bundan sonra 1 tane cloud mesajlaşma uygulaması yazacağım, websockets falan kullanacağım onda ekstra olarak. Ondan sonra da teknoseyir tarzı bir sosyal medya uygulaması yazacağım. Ondan sonra da iş aramaya koyulacağım. İş ararken de leetcode kasıp ekstra projeler de yazarım. İş bulmak zor olabilir ama napalım oturup ağlamak yerine mücadeleye devam edeceğim mecburen.

      Dağıtım olarak da EndeavourOS kullanıyorum ama Windows ile dual boot ediyorum. Windows'a normalde sadece lazım olduğunda giriyorum, itüden hocam bazen bir şeyler isteyebiliyor onun için windows gerekiyor şu an, o sebeple tutuyorum. Ama bir gün tamamen kaldıracağım windowsu. Şu an endeavour'ın kurulu olduğu ssd'yi değiştirme aşamasındayım o yüzden tek windowsla kaldım ama yeni ssd takınca endeavour yerine nixos kurmak istiyorum. Çok mantıklı geldi nixos, vakit olunca yapacağım.

    • Outrun @outrun

      @ozturka Güzelmiş, ilk bölümü izledim devamını da izlerim. Mehmet İnce'yi liseden tanıyorum bu arada ben. Lise arkadaşım diyemem benden büyük yaş olarak ve çok konuşmadık ama görüyordum arada. Rehberimde de kayıtlıymış ama ne zaman nasıl kaydettim onu hiç hatırlamıyorum, yıllar geçti tabi.

    • ozturka @ozturka

      @outrun şuan biraz uzaklarda kendisi 😀 kanalda yakın zamanda bu arkadaşla başka bir bölüm daha çektiler. 2010 dan beri yazılımla uğraşan biri olarak güvenlik kısmına bu kadar önem vermen çok iyi ve işini ciddiye aldığını gösteriyor. Tabi aynı özveriyi kodlarla da sağlamak lazım. 1 milyon yazılımcı tarzıyla pc kullanan herkesi yazılımcı yapmaya çalışıp sektörü daha da aşağı çektiler. Linux kısmında uzman değilim ama genel olarak yardımcı olabilirim istersen.

    • Outrun @outrun

      @ozturka Güvenlik konularına ilgim var kesinlikle ama şu an çok irdeleyemiyorum. Müfredattan sapmak istemiyorum, şu projelerimi bitirdikten sonra minimal bir kişisel site ve CV hazırlayıp iş arama sürecine geçeceğim. Bu aşamaya geçtiğimde Teknoseyir'den yardım isteyecektim. Her türlü öneriye ve hatta mentorluğa açığım. Yalnız şu an biri bana "nodejs ve mongodb olmaz, .NET ve bir relational db öğrenmelisin" dese şu an için bunu yapamam, bu aşamayı daha fazla uzatmayıp bir an önce müfredatı tamamlamak ve gerçek 2-3 projeyle kendimi işverenlere sunabilir hale getirmek amacıyla. Relational databaselerle de öğrenme amaçlı etkileşimlerim oldu ama bir projede kullanmadım. Her türlü teknolojiyi merak ediyorum zaten, hepsini öğrenmeye açığım. Şimdilik javascript ekosisteminden devam ediyorum, hem front-end hem de back-end için javascript (typescript) kullanıyorum. Şu an gerçek projeleri kendi başıma yapabildiğim için farklı teknolojilere geçerken de sorun yaşamayacağımı düşünüyorum.

      1 milyon yazılımcı projesine bakmıştım, galiba udemy tarzı video kursların ve yol haritalarının olduğu bir platform. Yalnız bu iş sadece video izlemeyle olacak bir şey değil. Problem çözebiliyor musun? Gerçek projeler üretebiliyor musun? Bir projenin gereksinimlerini ve yapılacakları başından sonuna kafanda görebiliyor musun? Her zaman bu konularda iyi olma gayretindeyim. Kod kalitemin de proje yaptıkça, bol bol kod yazdıkça gelişeceğini düşünüyorum. Üniversite eğitimim farklı alanda olsa da ben de mühendisim ve mühendislik problem çözmek demek aslında.

      Şu an spesifik bir sorum yok ama her türlü önerinize ve tavsiyenize açığım.

    • ozturka @ozturka

      @outrun tr de her işte olduğu gibi burada da "kompleci" aranıyor. Kendi işini yapıp freelance olarak anahtar teslim çalışmanı tavsiye ederim. Tüm sorumluluk ve yönetim sende olur. Tabi 1 kaç yere girip pişmek de isteyebilirsin ama istediğin şeyler karsilasmayabilirsin. Yeni teknoloji takip etmek güzel ama projeler eski olduğu için orada çok vakit kaybedebilirsin. Yani .net ve rdms öğrenmek sana elbet bir şey katar ama dediğin gibi önce başladığın yolu bitirmek lazım. Mobil alanda daha çok iş var piyasanın hareketi orada şuan.

    • Outrun @outrun

      @ozturka Doğru, şimdi yeni teknolojileri öğreniyorum ama atıyorum bir işe girdim, belki 10 yıllık bir codebase olacak orada. Freelance ilk olarak düşünmüyorum, dediğiniz gibi önce bir şirkette çalışsam daha iyi olur sanki. Mobil alanda da react native ile çalışan yerler varsa oralara girmeye çalışabilirim.

    • Robin @robin

      @ozturka Evet bende ikisinin yayınlarını izliyorum çok güzel kafa açıyorlar aydınlatıyorlar bazen 🙂

    • Robin @robin

      @outrun Evet bu şekilde ssh portlarını deneyen bir sürü bot var. böyle istek devamlı gelecek buna yapılacak şeyi yaptınız zaten 🙂 Bi tek ip kısıtlaması kaldı geriye bunu engellemek için.

      Aslında docker ın nasıl çalıştığını da bilirseniz faydası olabilir. Virtual machine ile docker neden farklı, neden docker daha avantajlı veya niye bu kadar çok seviliyor o çok önemli. Bitirme tezimi de docker üzerine yapmıştım çok güzel bir şey bu docker 🙂

      Odin Project i bende gördüm ama adam akıllı başlayıp bitirmemiştim ama hep listemde duruyor yakında bende bakayım ona da

      Zaten dokümantasyon okumak ve o tarz projenin direkt kendi hazırladığı sitelerden öğrenmek daha doğru oluyor genelde. Bir kütüphaneyi kullanmak için bakabileceğiniz en doğru kaynak yapanın hazırladığı doküman oluyor genelde istisnalar dışında 🙂 hatta direkt oradan alıp kullanınca daha güven veriyor niye en doğru kaynaktan aldın çünkü 🙂

      Evet yazılım gereği okuma ve araştırma, sorun çözme yeteneği gelişiyor ve daha farklı düşünmeye başlıyorsunuz. Bu yüzden analitik muhakeme mi neydi o tarz ders vardı bizim 1. sınıfta yanlış hatırlamıyorsam

      Bende node.js express ve mongodb ile blog projesi yaptım ama mongoose yerine direkt mongodb node driver kullandım arkada mongoose da onu kullanıyor. 🙂 Zevkli güzel proje ilk aşamada crud ve frontend i oluşturma kısmında temel mantığı iyice oturtabilirsiniz

      Jwt güzel ama onun için bazı değişik senaryolar var tokenin korunmasıyla ilgili o aşamaları da düşünmek gerekiyor.

      Node.js ve security demişken bunu da buraya bırakayım. 🙂
      https://www.youtube.com/watch?v=jbMuwu7jicI

      İş bulmak için önemli olan ingilizce ve github profiliniz. Cv nin pek bir önemi yok yazılım alanında. önemli olan ne kadar dişe dokunur proje yaptığınız ve bu projeleri, bilginizi karşı tarafa ne kadar iyi pazarlayabildiğiniz veya aktarabildiğinize bakıyor.

      Endeavour os u bende denedim ama artık ona gerek yok. Arch linux için archinstall diye bi paket var onunla defalarca arch linux kurmuştum
      https://github.com/archlinux/archinstall

      Ayrıca Arch linuxtan vazgeçme sebebim package maintainer diye geçen kişilerin canı istediğinde ben bunu kullanmıyorum bırakıyorum bu paket ile ilgilenmeyi diyip ana repodan aur a paketleri atıyorlar örneğin en son bunu opera da yaptılar ve aynısı zsh için gerekli plugin için de konuşuluyordu. kendi iç mail liste kayıtlıydım orada bu konuşmalarını görüyordum. ekte resmini attım

      Nixos u da bende merak edip denemiştim ama topluluk tarafında bi tık gariplikler var deniyordu.
      https://www.youtube.com/watch?v=yqZVtkW_J3k

      Şu an bende mecburen windowsa geçiyorum çünkü nvidia pek verimli değil şu an. Waylanda da nvidia 4k 60hz veremiyor benim ekran kartı şu an. veya x11 e geçersem night light açınca ekran yem yeşil oluyor ama işlemci dahili intel ekran kartı ile 4k 60hz veriyor ve hiç bir sorun olmuyor. Intelin yenisi çıkınca geçeyim diyordum oda belli değil kararsız kaldım 😀

    • Robin @robin

      @robin resim yüklenemiyor garip 😀

    • Robin @robin

      @outrun
      "Yalnız şu an biri bana "nodejs ve mongodb olmaz, .NET ve bir relational db öğrenmelisin" dese şu an için bunu yapamam"

      Bence asla böyle bir hata yapma 🙂

      Bence node.js, express, mongodb gayet doğru bir tercih ve başlangıç aşamasında bu şekilde girmek çok daha kolaylaştıracak. Api yazarken kullandığın şeyleri site tarafında da kullanabilirsin ilave olarak frontend için js yazıyorken bir de üstüne .net e hiç gerek yok bence. C# java vs derlemeli dilleri sevmiyorum ama yine de yanlış bir karar bence şu aşamada js ile ilerlemek daha doğru 🙂

    • Robin @robin

      @ozturka Benim genellikle yaptığım o şekildeydi. Üniversite okurken de öyleydi sitenin frontend, backend bendeydi, db vs sunucuya deploy etmesi, siteye ilave mobil istendi oda bendeydi öyle okurken 6 yıl orada devam ettim. 🙂

    • Robin @robin

      @outrun Evet başlangıç aşamasında bir şirkette proje yaparken birilerinin size yol göstermesi, yardımcı olması çok daha hızlandırabilir ama verim alamadığınız bir yerde de uzun yıllar kalıp zaman harcamamaya dikkat etmek lazım

    • Outrun @outrun

      @robin Yaptım IP kısıtlamasını 😀 Bir de kablonetin verdiği IP değişmiş mi diye kontrol eden bir bash script yazdım SSH yapmadan önce bakıyorum 😀 ekran görüntüsünü atarım

      Docker hakkında bildiğim high level bilgiler şunlar: VM'de donanım simüle ediliyor, o yüzden her VM kendi işletim sistemini çalıştırıyor, o yüzden yavaş oluyor. Docker ise işletim sistemini simüle ediyor bu sayede uygulamalar tek kernelden çalıştırılmış oluyor ve uygulamalara gereken kaynaklar dinamik olarak dağıtılmış oluyor. Bir de konteynerları neredeyse her yerde deploy edebiliyoruz. Aynı imajdan birden fazla konteyner yaratıp dağıtık bir şekilde deploy edebiliyoruz. Dockerfile yazıp kullanmayı da biliyorum. Docker compose'a da baktım o da işleri çok kolaylaştıran bir şey gibi geldi, "fronted: şu imajı build edeceksin, şu portları kullanacaksın, backed için de şunları yapacaksın, database için de şunları yapacaksın" tarzında yönergeler veriyoruz ve hooop tüm aşamaları yapıp hepsini çalıştırıyor. Henüz kullanmadım ama ne olduğuna baktım sadece. Bu docker bir kere kullandın mı bir daha vazgeçemeyeceğin bir şey gibi geldi 😀 Instant mesajlaşma ve sosyal medya projelerimde kullanmayı düşünüyorum docker compose. Docker ile ilgili bildiklerim şu an bunlarla sınırlı 😀 Bir an önce şu müfredatı bitirmeye gayret ediyorum. Şu an nodejs uygulamalarını test etmeyi öğrenme aşamasındayım (supertest ile).

      Odin Project size bir şey katmaz ya. Newbieler için 😀 O yüzden sizin denemenize gerek yok.

      Dokümantasyon konusuna katılıyorum, zaten artık rutin oldu benim için. Okuyup araştırıp öğrenme konusunda Odin Project efsane. Tüm felsefesi bunun üzerine kurulu. O yüzden herkese göre değil, çoğu kişi bitiremiyor. Bu mindsette olmayanlar.

      Blog projesi çok faydalı oldu benim için. Github sayfası şu: https://github.com/veotaar/blog-api readme'ye özelliklerini yazdım, 2 tane de front-end yazdım onların linkleri de readme'ye koydum. Front-end'lerin readme'lerine video klipler koydum 😀 Tamamen potansiyel işverenler için. Girip bakarlarsa live sayfalara bile gitmeden ne olduğunu görebilmeleri için 😀

      JWT auth öğrenirken çok araştırma yaptım. Tokenin client tarafında saklanması bayağı sorunlu. Doğru şifre girildiğinde server "httpOnly, sameSite, secure" özellikli cookie ile cevap verirse javascript ile erişilemediği için güvenli olabiliyor. Baktım güvenli şekilde saklamak çok zor, ben de bu projede hiç saklamıyorum tokeni. Admin paneli sonuçta, sadece giriş yapıldığında cevap olarak tokeni veriyorum ve sadece tarayıcı hafızasında saklanıyor (react state). Sayfa yenilenirse falan gidiyor, persistent değil yani. Bir de sisteme kayıt olmayı kapattım, benden başka kullanıcı yok. Bundan sonraki projelerimde kayıt olma açık olacak ve tokenin saklanması işini de yapacağım. Bu auth konusu acayip derinlere iniyor, in in bitmiyor hatta. Bununla hiç uğraşmayıp, 3. parti auth servislerini kullanın geçin diye bir tavsiye de var 😀

      Attığınız videoya bakacağım ama 3.5 saat 😀 Faydalı diyorsanız izleyeceğim ama zaman ayırıp 🙂

      İngilizcem gayet iyi çok şükür. İTÜ yüksek lisansım tamamen ingilizceydi ve tezimi de ingilizce yazdım, üstüne ingilizce makalem de yayınlandı saygın bir dergide. IELTS'ten yüksek puanım da var. Zaten artık hayatımız ingilizce oldu. Github'ı da başından beri kullanıyorum zaten. Gerçek projelerim bittiğinde güzel bir profil readme'si yazacağım, o repoları pinleyeceğim. İşverenler için hazır hale getireceğim yani. Sadece github sayfama girmeleri yeterli olacak ama dişe dokunur projelerimin kısa tanıtımlarının ve linklerinin olduğu ve kendimi çok kısa tanıttığım minimal bir kişisel sitem de olacak. Linkedin profilimi de ayağa kaldıracağım aynı şekilde. CV de zaten github profilinin kopyası tarzı bir şey olur diye düşünüyorum. Halen CV gönder diyenler var ya, onları da cevapsız bırakmamak için. Kişisel sitemin linkini verdiğimde benimle ilgili her şeye çok hızlı bir şekilde ulaşabilecekler.

      Javascript'ten şaşmadan devam ediyorum 😀 Bu arada iş verenleri etkileyebilecek "dişe dokunur" proje önerileriniz varsa çok mutlu olurum. Odin müfredatında olduğu için instant mesajlaşma (telegram, whatsapp tarzı) ve sosyal medya (twitter, teknoseyir tarzı) iki proje yapacağım. Bayağı özelliği olacak bunların. Sosyal medya projesiyle odin müfredatı son buluyor. Bunlara ek olarak ne tür bir proje yapmamı önerirsiniz? Bu arada bütün projelerimde tek tıkla "guest login" özelliği olacak. İşveren test etmek isterse tek tıkla girip tüm özellikleri canlı olarak görebilecek. Test etmek istemezse de hem github sayfasında hem kişisel sitemde bu uygulamaların kullanıldığı video klipler olacak. 5 saniyede kim olduğumu ve hangi projeleri yaptığımı görmeleri için elimden geleni yapacağım yani.

    • Outrun @outrun

      @robin şu tarz bir script yazdım 😀

    • Outrun @outrun

      @robin Hetzner firewall çalışıyor 😀 Şu an hiç yanlış deneme kalmamış ve fail2ban hapishanesinde engelli bir IP kalmamış 😀 Yeni deneme olmuyor 😀

    • Robin @robin

      @outrun Bash script ile böyle tool yazmayı bende çok seviyorum 😀 Ip değişikliğini nasıl algılıyor? en son ip yi mi kaydediyorsun ?

    • Outrun @outrun

      @robin aynen scriptin içinde son IP'yi kaydediyorum, değiştiğinde onu da değiştiririm.

    • Robin @robin

      @outrun
      "Docker ise işletim sistemini simüle ediyor" Tam olarak böyle değil aslında. Container adı üstünde kernel seviyesinde yetki kısıtlaması yaparak bir alan oluşturuyor aslında en basit haliyle. Docker bir virtualization değil vmware, kvm, virtualbox gibi bir şey değil yani. bu 3 lü arasında da peformans vs farkı mevcut kvm nin yapısı da daha farklı oda kernel seviyesinde sanallaştırma sağlıyor vs 🙂

    • Outrun @outrun

      @robin en az 2 haftadır kendi IP adresimi görüyorum ve bu sürede hiç değişmedi

    • Robin @robin

      @outrun Docker compose candır 🙂

      Mesela sunucuda 2 tane api, 2 tane react frontend, 1 mongodb db, 1 nginx aynı anda ayağa kaldırabilmek için docker compose ile 1 tane dosyada bunları tanımlayıp docker compose up demen yeterli 🙂 o ilgili portlarda bu servisleri ayağa kaldırıyor nginx ile de port ve domainleri virtualhost ile tanımlayıp tek sunucuda birden fazla siteyi barındırabiliyorsun 🙂 Ssl için de script ile yenileme yapıp docker servislerini yeniden başlatınca oda hallediliyor çiçek gibi sistem bence 😀

    • Robin @robin

      @outrun IP adresi değiştiğinde script sorsa yeni ip yi hetzner e kaydettin mi diye evet dediğinde kendisi o txt ye yeni ip yi yazsa 🙂 manuel bir işlem olmasın mümkün olduğunca 🙂

    • Robin @robin

      @outrun
      Node goat videosu evet faydalı ama bende oturup 3.5 saat izlemedim henüz. Videodaki siteyi inceledim ama oturup bende izleyeceğim videoyu. Ama atlaya atlaya olabilir 😀 Oradaki mantık şu size açık barındıran patlatılabilir bir projeyi veriyorlar bildiğiniz açıkları kapatıp nerelerden gol yiyorsunuz onu görmüş oluyorsunuz
      Video dışında OWASP Top 10 mutlaka bakılıp mümkün olduğunca öğrenilmesi gereken bir şey

    • Robin @robin

      @outrun
      Yukarıda konusu geçmişti

      Unutmadan bu playlisti de atayım 🙂 Mutlaka izlenmesi gerekenlerden 🙂
      https://www.youtube.com/playlist?list=PLwP4ObPL5GY940XhCtAykxLxLEOKCu0nT

    • Robin @robin

      @robin Böyle bir şey yapmıştım

    • Outrun @outrun

      @robin script daha da ileri götürülebilir gibi 😀 hetzner API varmış. Firewall kuralını hetznerden çeker, sonra mevcut IP ile karşılaştırır. Farklıysa hetzner kuralını günceller 😀 Hatta önce bu scripti çalıştırıp gerekirse firewall kuralını düzenleyen, gerekmiyorsa login yapan custom ssh script de yazılabilir 😀
      https://docs.hetzner.cloud/#firewalls-update-a-firewall

    • Outrun @outrun

      @outrun yalnız bu script çalınırsa isteyen herkes ssh yapabilir onu fark ettim şimdi 😀

    • Robin @robin

      @outrun Bu şekilde daha mantıklı 🙂 Ip yi direkt hetznere yazmak güzel olur uğraştırmaz panele gir ip değiştir falan diye. Evet son dediğiniz kısım çok mantıklı 😀 ssh login olmak yerine script çalışır ilk ip yi kontrol edip firewall günceller sonra ssh logini çalıştırır kendisi direkt halleder 😀

    • Robin @robin

      @outrun Güvenlik kontrolü ekleyip kolaylaştırmak isterken başka açık oluşturmuş olunuyor işte 😀

    • Outrun @outrun

      @robin sizin bash programınız bayağı gelişmiş yalnız, o seviyede bir şey şu an yapamam 😀 önce bunları manuel olarak yaparım, sürekli aynı şeyi yapmaktan sıkılınca otomatik hale getirmeye çalışırım 😀

    • Robin @robin

      @outrun Zaten linux dağıtımı kullanmaya başlayınca bir sürü tekrar eden şey karşınıza çıkıyor sonra bunları otomatik hale getirince ayrı bir zevk alıyorsunuz sonra her şeyi otomatik hale getireyim derken dipsiz kuyuda buluyorsunuz 😀

      En son kaybolduğum yer burası 🙂

    • Robin @robin

      @robin ve burası gibi bir kaç yer daha

    • Robin @robin

      Format attıktan sonra Post menu den sistemi kur diyorum bu en son attığım resimlerdeki kısımlar çalışıyor. Gerekli programları ayarları vs yapıyor 🙂

    • Outrun @outrun

      @robin Çok güzel, çok emek vermişsiniz belli. NixOS de bu sorunu çözmeye çalışmıyor mu? Konfigürasyon dosyasına her şey eklenebiliyor. Sizin scriptlerin yaptığı gibi her şeyi ayarlayabiliyorsunuz. Şu videodan sonra denemeye karar vermiştim ben: https://www.youtube.com/watch?v=CwfKlX3rA6E
      Nix community'de neler dönüyor bakacağım ona.

    • Outrun @outrun

      @robin bu arada varsa proje önerilerinizi bekliyorum 😀

    • Robin @robin

      @outrun

      Evet nixos bu amaç ile yapıldı doğru. 1 config ile yüzlerce makineyi ayağa kaldırmak için var ama bi türlü alışıp geçememiştim 😀 Aynen bende bir kaç video izleyip nixos u çok beğenmiştim

      https://www.youtube.com/watch?v=DMQWirkx5EY
      https://www.youtube.com/watch?v=fuWPuJZ9NcU

      nixos için bu vardı. hyprland ın başındaki kişi de konuşmalarından dolayı hyrplandın freedesktop dan kovulmasına sebep olmuştu 😀

      https://www.youtube.com/@vimjoyer/videos 🙂

    • Robin @robin

      @outrun
      Proje seçimi için 🙂

      https://www.youtube.com/shorts/XpGGio-A494

      Bu adam da çok iyi netflix de çalışıyordu. Canlı yayınlarını ve videolarını severim 😀

    • Outrun @outrun

      @robin Primeagen'i takip ediyorum ben de 😀 Ortak takip ettiğimiz bir çok kişi vardır tahminen 😀

    • Robin @robin

      @outrun
      Proje seçimi için aslında sizin yaparken zevk alıp gösterebileceğiniz en iş yarayan fikirlerinizi seçmeniz iyi oluyor genelde. Sırf yapmış olmak için başlangıç aşamasında herkesin yaptığını gibi to-do app de yapabilirsiniz yada günlük hayatta kullanacağınız bir şey de yapabilirsiniz. Mesela docker ı öğrenmek için docker ile ilgili bir şey yapabilirsiniz

      Bitirme projesinde docker ı kullanarak seçtiğim linux dağıtımı ve ram miktarı gibi bilgilere göre ilgili container ı mevcut bulunan atıyorum 10 sunucudan yük dağılımına göre en uygun olana kuran bir şey yapmıştım. Gibi buradaki asıl nokta sevdiğim bir şey üzerine işime yarayacak bir şey.
      Veya mevcut hazır projelere katkıda sağlayabilirsiniz. Archinstall scriptinde bug vardı onunla ilgili pr açmıştım sonra adam onu düzeltmişti gibi. Alakasız şeylere zaman harcamak yerine size zaman kazandıracak, işinize yarayacak bir tool yapmayı düşünebilirsiniz.

      twitter clone yerine kendi günlük kullanımınız için parola yöneticisi yapabilirsiniz. Şahsen bunu yakında yapmayı düşünüyorum. Normal projelerde symmetric algoritmalar ile tekrar okunabilir halde parola tutmayı vs yapmıştım. bunun kendi kişisel parola yöneticimi yapıp kullanmayı düşünüyorum

    • Robin @robin

      @outrun Muhtemelen youtube da bir sürü güzel video paylaşan yazılımcı vs takip ediyorum 🙂 Twitchde de takip ettiklerim var
      mesela
      https://www.twitch.tv/usirin

    • Outrun @outrun

      @robin Todo app basit kalır ya. Offline çalışan bi tane yapmıştım zaten, sadece client side çalışan. Hatta onu PWA olarak yaptım 😀 Düz vanilla javascript öğrenirken yapmıştım, o zaman henüz ne react ne de backend öğrenmiştim. Temelden öğrendim yani javascripti, vanilla js ile bir sürü ufak proje yaptım. https://veotaar.github.io/simple-todo/

      Şunlar da bazı diğer vanilya html css javascript projelerim 😀
      Amiral battı - https://veotaar.github.io/battleship/
      Tic Tac Toe - https://veotaar.github.io/tic-tac-toe/

      Şunlar da react öğrenirken yaptıklarım, offline tabi hepsi.
      CV yapma - https://veotaar.github.io/cv-app/
      Hafıza oyunu - https://veotaar.github.io/memory-game/
      Alışveriş sepeti - https://veotaar.github.io/shopping-cart/

      Bunları kimseye göstermeyeceğim tabi. Öğrenmeye ilk başladığımda yaptığım şeyler sadece. Hepsi Odin müfredatından. Bunları işveren ancak github sayfamı didik didik ederse görebilir, ben hiçbir yere proje diye koymayacağım. Şu an tek "gerçek" projem blog projesi diyebilirim.

      Aslında backend öğrenmeden önce bi tane hackernews'a çok benzeyen "link aggregator" uygulaması yapmıştım. Onda kendi backendim yoktu ama Firebase kullandım, Firebase'i öğrendim diyebilirim yani.

      Odin müfredatında olduğu için instant mesaj ve sosyal medyayı yapacağım kesin. Üzerine belki içinde todo list, not alma ve kanban board özelliği olan, end-to-end encrypted olan bir verimlilik uygulaması yapabilirim. Benim 4 GB ramli VPS bunları kaldırır umarım 😀 Gerçi realistik olarak aktif kullanıcısı olmayacağından bir sorun olmaz diye düşünüyorum. VPS'in şu an tek amacı işverenlerin girip live demoları hızlıca kullanabilmesi.

    • Outrun @outrun

      @robin bi tane daha firebase uygulamam vardı onu buldum, hala ayaktaymış 😀
      https://odin-waldo-4feb7.web.app/
      siyah bi resim var üstünde harfler var, A, B ve C harflerini bulup taglemeye çalışıyorsun, hepsini bulduktan sonra süreni leaderboard'a kaydedebiliyorsun 😀

  • Ronnie James Dio @ronniejamesdio

    22 no lu portu sadece Türkiye ip bloğuna açık tutarsın. Rusya, çin vb gibi ip leri otomatik olarak engellemiş olursun. Hatta bir level ileri gidip kendi iss inin ip blok listesini tanimlarsin riski daha da azaltmış olursun.

Monitöre takılan çubuk şeklindeki ışıklardan almak istiyorum, var mı tavsiyesi olan? Işığı sarı olmalı, ya da sarı olarak ayarlanabilir olmalı. F/P bir ürün olsa iyi olur, değilse de takibe alırım indirim yakalamaya çalışırım.

BeğenFavori PaylaşYorum yap

WordPress Domain servisinde wildcard subdomain ekleme yokmuş. Örneğin *.subdomain.site.com şeklinde A record eklenemiyor. Google Domains'de bir tane .uk uzantılı domainim kalmıştı mecburen onu kullandım (squarespace'e geçti ama yönetimini halen domains.google üzerinden yapıyoruz). 2 domainim daha vardı onları geçirdim wordpress'e, o yüzden onları kullanamadım.

Wildcard subdomain kaydını VPS'ime "caprover" kurmak için kullanmam gerekti. https://caprover.com/

Bu arada .uk ile ilgili birkaç şey öğrendim onları da yazayım. Bu domainlerde whois gizliliği ayarı yapılamıyor ama .uk domainini yöneten kurum otomatik olarak bilgilerinizi whois'te gizliyor. Eskiden böyle değilmiş ama şimdi GDPR'a uymak için böyleymiş, varsayılan olarak bilgileriniz gizleniyor yani. WHOIS lookup yaptığınızda "redacted for privacy" ibaresi geliyor.

.uk domain almamın sebebi de en ucuzlardan olmasıydı ve kısa olan soyadım.uk alan adının alınabilir olmasıydı, ben de aldım.

BeğenFavori PaylaşYorum yap

Undervolt riskli mi? Yapan var mı?

7800X3D işlemcimi undervolt yapıp, güç limitini (PPT) düşürüp daha serin çalıştırmak istiyorum. Birkaç tane bunu yapan video gördüm.

Anladığım kadarıyla eğer şanslıysak undervolt yapınca işlemci daha yüksek frekanslara çıkabiliyor (ama asıl istediğimiz bu değil), bunun üzerine bir de PPT limitini düşürünce stok performansı daha düşük güç ve sıcaklıkla alabiliyoruz.

Overclock daha önce hiç yapmadım ama bu undervolt çok ilgimi çekti. Aynı performansı daha düşük sıcaklıklarla almak çok iyi olur.

BeğenFavori PaylaşYorum yap
Önceki yorumları gör 4 / 7
  • Mesut Kahraman @vigilante

    Undervolt ile OC ayni anda olur. Serin daha hizli calisir.

  • Ekrem @huseyinekrem

    R5 3600, 1.18v sabit, üstüne 4.2ghz o.c yapılı. Atock ayarlar 1.33v 3.9ghz 😀 Undervolt her türlü yapılmalı bence. Ama dikkat etmek lazım stabilite olayına, yeni işlemcilerin yapısı biraz daha farklı olduğu için öyle eski işlemciler gibi kolay değil sanki.

  • N Ziya Çeliksu @ziya-celiksu

    İlk çıktığı zamanlarda X3D versiyonlarda daha çetrefilliydi şu an nasıl bilmiyorum ama normal işlemcilerde yapmak bayağı basit, örnek olarak 3600-5600 genelde stok 1.35v ile çalışıyor. Detay ile uğraşmadan 1.2-1.15 civarlarına indirsen yüzde 99 hatasız devam edersin ama işte x3d versiyonlarda rehber falan bakmak lazım.

  • boakoms @boakoms

    5800X3D işlemciyi MSI B450 Tomahawk Max anakartındaki Kombo Strike ön ayarlarından Kombo Strike 3 ile kullanıyorum. Manası Curve Optimizer -30 gibi düşünebiliriz. Max hıza ulaşabiliyorum ve işlemci daha serin çalışıyor.

PSU fanından çok sinir bozucu bir ses geliyor.

NZXT C1200 güç kaynağım var. Fanı sesli dönmeye başladı. Zero fan modu var, dönmezken PSU'dan asla ses gelmiyor, ama oyuna giriyorum fan dönmeye başlıyor ve "vik vik vik" diye düşük desilbelli ama tiz bir ses geliyor. Bir de şöyle bir saçmalık var, oyundan çıkıyorum ama fan dönmeye devam ediyor, yük azalınca fan durmuyor yani, çok saçma. Fan sesi olduğundan %100 eminim, PC'yi kapattığımda fanın yavaşlayıp durduğu çok belli çünkü.

Servise göndersem bunu kabul edip tamir ederler mi? Sinerji'den almıştım.

BeğenFavori PaylaşYorum yap

Google Play'de bir abonelik için (yıllık) alternatif ödeme yöntemi girdim. Ödeme tarihi yarın olmasına rağmen hemen çekti parayı alternatif girdiğim karttan. Ama şöyle bir sorun var, hiçbir yerde bu ödemenin yapıldığı gözükmüyor, google'dan onay maili falan da gelmemiş. Yarın bir daha çeker mi bu şimdi?

BeğenFavori PaylaşYorum yap

Browser sekmelerini dikey olarak kullanmak çok daha mantıklı. Birkaç haftadır kullanıyorum ve asla eski moda yatay sekmelere dönmeyi düşünmüyorum.

Neredeyse bütün internet sitelerinde içerik yatayda ortalanmış oluyor ve zaten rahat okuyabilmemiz için belli bir genişliğin geçilmemesi gerekiyor. En çok kullandığınız sitelere bakın, yatay olarak browser'ı küçültseniz bile içerik belli bir yere kadar küçülmüyor. Teknoseyir'de de bunu net bir şekilde görebilirsiniz. Yani sekme penceresinin dikey olarak yerleştirilmesiyle aslında bir alan kaybı yaşamış olmuyorsunuz.

Bir de geleneksel olan (ve büyük ihtimalle şu an kullandığınız) adres barının üstünde yatay olarak sıralanmış sekmeleri düşünün. Asıl alan kaybı bu durumda oluyor. Dikey sekme paneli kullansaydınız daha fazla içerik görecektiniz. Yatay tabların kapladığı alan çok daha değerli ve bu alanda bir de sekmeleriniz duruyorsa daha az içerik görmüş oluyorsunuz. Monitörlerimizde de yatay olarak çok fazla alanımız var ama dikeyde o kadar alanımız yok.

Bu nedenlerle dikey sekmeleri denemenizi şiddetle tavsiye ediyorum. İlk başta yılların kas hafızasını değiştirmek gerektiği için zorlanabilirsiniz ama kısa zamanda alışılıyor.

Dikey sekmeleri Brave, Edge ve Vivaldi'de native olarak, Firefox'ta ise efsane eklenti "sidebery" ile kullanabilirsiniz. Brave'dekinin tasarımını pek beğenmedim, Vivaldi'de iyi ve Edge'de ise çoook iyi olduğunu duydum (edge kullanmıyorum ama yorumlardan söylüyorum).

BeğenFavori PaylaşYorum yap
Önceki yorumları gör 12 / 16

4080 Süper çıkmış. 4080'den %1-3 arası daha iyiymiş. Listelenmeye başlanmış Türkiye'de de. Yalnız bunun 4080'den bayağı ucuz olması gerekiyordu ama değil, eski 4080 fiyatlarına koymuşlar hep 🤦🏻4080'ler gitmiş süperler gelmiş ama fiyat aynı.

BeğenFavori PaylaşYorum yap
Önceki yorumları gör 21 / 24

İzlanda'da volkan patladı. Ülkenin güneybatısında Grindavik kasabasına yakın yerde. Zaten bu ay bin küsür deprem olmuş ve uzmanlar patlama riskinin çok yüksek olduğunu söylemişler yakın zamanda.

Haber:
https://www.nytimes.com/2023/12/18/world/europe/iceland-volcano-eruption-earthquakes.html

Canlı yayınlar:
https://www.youtube.com/watch?v=hvcP4kVVOnk
https://www.youtube.com/watch?v=VIs83vmfZCk

BeğenFavori PaylaşYorum yap