Giter VIP home page Giter VIP logo

valf's Introduction

Hi, I'm Zeki, a Backend Developer 🚀 from Turkey.

Linkedin X Gmail

 

Talking about Personal Stuffs:

Github

Languages and Tools:

Zeki Ahmet Bayar's github stats




ViewCount

valf's People

Contributors

aliorhun avatar duyguolmez avatar zekiahmetbayar avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

valf's Issues

Shh Connection

  • Ssh bağlantısı ile terminal görüntüsü sağlanabilmesi için paramiko ve vte kütüphanelerinin incelenmesi
    vte.terminal ile örnek bir terminal açma:
    https://github.com/ZDuygu/basic-terminal
  • Bağlantıya sağ tıkladığında menüde bağlan seçeneğinin çıkması
  • Bağlan seçeneğine tıklandığında parola istenen bir diyalog açılması
  • Parola girildikten sonra diyalogun kapanması, parola yanlışsa hata diyalogu açılması,
  • Parola doğruysa yeni bir sekmede ssh bağlantısının açılması

Ssh config dosyasına giriş

  • Mevcut Kullanıcının ev dizinindeki .ssh/config dosyasının incelenmesi
  • Liste alanında(1/3lik alan) config dosyasındaki bağlantı isimlerinin listelenmesi
  • Liste alanının sağ alt köşesinde Bağlantı ekle butonunu oluşturulması
  • Config dosyasına bağlantı eklemek için gerekli minimal parametreleri alarak yeni bir config dosyasının düzenlenmesi, eklenen yeni bağlantının liste alanında listelenmesi

Certificate 2

  • SSH Keygen ile sertifika üretme
  • Sertifika ismini kullanıcının belirlemesi
  • ssh-copy-id ile sunucuya gönderme
  • Auth-keys içindeki sertifikaları listeleme
  • Dışardan gelen sertifikayı import etme
  • Yeni host eklerken en az 2 değer aynı ise program hata versin (bug)

Certificate

  • daha önce ssh kullanılmamış makinede .ssh, config gibi dosyalar eksik olabilir. valf'ı ilk defa kullanırken bunların kontrolü ve oluşturulması
  • Linux sertifika yapısının incelenmesi (ssh-keygen, ssh-copy-id, ~/.ssh/known_hosts, ~/.ssh/authorized_keys)
  • bir makineye ilk defa bağlanılıyorsa fingerrpint ekleme sorusunun yakalanması, yeni bir dialog üzerinde yes/no seçeneğinin sorulması
  • bağlanmak istenen ip adresini farklı bir makine aldıysa known değiştiğiyle ilgili uyarı verilmes, known_hosts düzenlenmesinin sorulması

Hata ve Yenilikler

  • SCP ile SSH bağlantısı (Yenilik)
  • Manuel ssh bağlantısı denetleme (Hata)

Sftp Ağaç yapısında dinamik hareket etme

Örneğin kullanıcının /home altında başlanan ağaç yapısında /opt altına dosya atılmak istendiğinde ne yapılacak

Seçenk 1:
Ağaç yapısının en üst elemanına ".." elemanı konmalı
Bu elemana çift tıklandığında artık kok /home/username değil bir üst düzün olacak çekilde ağaç yeniden oluşturulmalı
Objeye çift tıklandığında o objenin içine girerek kok artık o obje olacak şekilde ağaç yeniden yapılandırılmalı


Seçenek 2:
Ağaçların üstlerine search path eklenerek kökün hangi dizinden itibaren olduğu belirtilmeli. Entera basıldığında kök burada belirtilen dizine göre yeniden oluşturulmalı. Belirtilen dizin bulunamazsa değişiklik yapılmamalı

Basic Config Parser

  • baglantilar adındad boş bir dict oluşturma
  • Dosyayı satır satır okuma
  • satırda host nanımlaması varsa yeni_baglanti adında bir boş dict oluşturma
  • satırda attributelar varsa bunu yeni_baglantıya ekleme
  • dosya sonunda ya da yeni host tanımlamasında yeni_baglantıyı baglantilar'a ekleyerek, yeni_baglanti'yı sıfırlama
  • baglantılar dict'ini print etme

Sağ Click, Menu ve Yeni Sekme

  • Sol taraftaki liste 2d array (ya da dictionary) olarak tutulsun.
  • array elemanlarının ilk indexleri ya da dictionary'nin key değeri listelensin
    myArray = [ [ "Hello", "Hi" ], [ "Exapmle", String ] ]
    listede gözüklmei gerekenler
  • Hello
  • Example
  • sol taraftaki listedeki bir elemana sağ tıklandığında menu açılsın
  • Menude yeni sekme seçeneğine tıklandığında yeni bir sekme açılsın
  • Açılan sekmede ilgili elemanın ikinci indexindeki değer yazsın
    Örneğin "Hello" ya tıklanarak açıldıysa sayfada "Hi" yazmalı
  • ilgili sekmeyi çarpı işaretine basarak kapatabilelim

Certificate 2 - Arayüze başlanması

  • uygulamalardaki File sekmesi gibi bir sekmede sertifikalar olmalı
  • Sertifikalar'a tıklanınca küçük bir menü çıkmalı sertifikalarım seçeneği olmalı
  • Sertifikalarım'a tıklanınca 2/3lik alanda .ssh altındaki sertifika ikililerim listelenmeli (sertifika, sertifika.pub) sadece public olanlar listelenebilir.
  • sertifika listesindeki bir elemana tıklandığındığında ekrana ya da yana sertifika içeriği yazdırılmalı (public olan sertifika ekrana yazdırılmalı kopyalanabilmesi için)
  • Sertifikalar'a tıklanınca menüye sertifika oluştur seçeneği eklenmeli
  • Sertifika üret'e tıklanınca diyalog açılarak .ssh alrına yeni bir sertifika ikilis oluşturulmalı (ssh-keygen). İsim belirtilmedi isemevcut default sertifikanın üzerine yazılacağı uyarısı verilmeli (yes/no)
  • Listedeki sertifika silinirken yalnızca public silinsin.

Config Dosyası İçeriği Düzenleme

  • button_left_click fonksiyonu static home folder bugfix
  • bağlantı detaylarınında atribute adları label, attribute değeri düzenlenebilir şekilde olmalı
  • detay sayfasının sağ alt köşesinde kaydetme butoun yapılan değişikliği ilgili bağlantının attributelarını kaydetmeli
  • ilgili bağlantıya mevcut atributelar dışında attributelar eklenebilmeli (ConnectTimeout, Port gibi)

Last bugs

  • Host eklerken 2 isim aynı olmamalı

  • Host eklerken value kısımlar boş kalmamalı

  • SCP ile bağlanırken ssh cert varsa ona göre davranmalı

  • cert sil butonunda hide() çalışmıyor

  • cert atama ekranında sunucu seçme penceresi kapanmıyor

  • Yeni sunucuda zaten ssh dizini var hatası veriyor

  • SSH sertifikası gönderdikten sonra SSH bağlantısı yaptığı terminali açmıyor

Arayüz Görevleri

  • Soldaki listeleme alanını scrollable olsun
  • listeleme alanına search özelliği eklensin
  • Bağlantı menüsüne yeni bir buton eklensin (Dosya Aktarma)
  • Dosya aktarmaya tıklandığında yeni bir notebook açsın
  • bu sayfa ikiye ayrılsın
  • İki farklı dictionary bu alanlarda tree yapısıyla listelensin

Conf Dosyasını Düzenleme

  • Port ayarı zorunlu alan değil new host yaratırken bu satıra gerek yok varsayılan 22 portu kullanılıyor
  • Listeleme alandaki elemana sağ tıklandığında menude sil seçeneğinin çıkması ve o host ile ilgili ayarların silinmesi
  • uygulama başladığında açılan ilk notebookun static olması (close ile kapatılamasın)
  • Listedeki bir elemana sol click ile tıklandığında ilk notebook sayfasında hostun attributeları listelensin

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.