Takip et

FreeBSD 12.0 Sunucular İçin Önerilen İlk Kurulum Adımları

FreeBSD 12.0 Sunucular İçin Önerilen İlk Kurulum Adımları FreeBSD, sunucu ortamlarında kararlılığı, güvenliği ve yüksek performansıyla

FreeBSD 12.0 Sunucular İçin Önerilen İlk Kurulum Adımları

FreeBSD, sunucu ortamlarında kararlılığı, güvenliği ve yüksek performansıyla öne çıkan güçlü bir açık kaynak işletim sistemidir. Özellikle web sunucuları, veritabanı sunucuları, dosya sunucuları ve ağ geçitleri gibi kritik altyapılarda tercih edilen FreeBSD, doğru bir başlangıç yapılandırması ile uzun vadede sorunsuz ve güvenli bir çalışma ortamı sunar. Yeni bir FreeBSD 12.0 sunucusunu devreye alırken atılacak ilk adımlar, sistemin genel güvenliğini, performansını ve yönetilebilirliğini doğrudan etkiler. Bu makale, yeni bir FreeBSD 12.0 sunucusunu sıfırdan kurarken izlenmesi gereken kritik adımları, güvenlikten performansa, sistem yönetiminden temel servislerin kurulumuna kadar detaylı bir şekilde ele almaktadır. Amacımız, sunucunuzun temelini en iyi uygulamalara uygun bir şekilde atarak, gelecekteki operasyonlarınız için sağlam, güvenli ve verimli bir zemin oluşturmaktır. FreeBSD 12.0’ın sunduğu yenilikler ve kararlılıkla birleşen bu adımlar, sunucunuzun potansiyelini tam olarak kullanmanızı sağlayacaktır.

Temel Sistem Güncelleme ve Yükseltme

Yeni bir FreeBSD sunucusu kurulduğunda yapılması gereken ilk ve en önemli adımlardan biri, sistemin güncel olduğundan emin olmaktır. Bu, hem güvenlik açıklarının kapatılması hem de en son özellik ve iyileştirmelerden faydalanmak için hayati öneme sahiptir. FreeBSD’de bu süreç iki ana bileşenden oluşur: temel sistemin (kernel ve kullanıcı alanı araçları) güncellenmesi ve kurulu paketlerin güncellenmesi.

Sistem Temelinin Güncellenmesi

FreeBSD’nin çekirdeği ve temel kullanıcı alanı araçları, freebsd-update komutu ile güncellenir. Bu komut, resmi FreeBSD güvenlik ve hata düzeltmeleri için kullanılır.
İlk olarak, mevcut güncellemeleri kontrol etmek için:

freebsd-update fetch

Bu komut, indirilebilecek tüm güncellemeleri listeler. Ardından, bu güncellemeleri sisteme uygulamak için:

freebsd-update install

Çekirdek güncellemeleri yapıldığında, sistemin yeniden başlatılması gerekebilir. freebsd-update komutu size bu konuda bilgi verecektir. Genellikle, sistem güncellemeleri tamamlandıktan sonra bir yeniden başlatma işlemi önerilir.

Paketlerin Güncellenmesi

FreeBSD, yazılımları yönetmek için güçlü bir paket yönetim sistemi olan pkg‘yi kullanır. Yeni bir kurulumda pkg genellikle otomatik olarak kurulmamış olabilir. Eğer kurulu değilse, ilk olarak pkg‘yi bootstrap etmeniz gerekir:

pkg bootstrap

Ardından, paket veritabanını güncellemek ve kurulu tüm paketleri yükseltmek için aşağıdaki komutları kullanın:

pkg update
pkg upgrade

Bu komutlar, kurulu olan tüm üçüncü taraf yazılımlarınızın en son ve güvenli sürümlerine güncellenmesini sağlar. Bu adımların düzenli olarak tekrarlanması, sisteminizin güvenli ve stabil kalmasını sağlar.

Çekirdek Kaynaklarının Güncellenmesi (İsteğe Bağlı ama Önerilen)

Özelleştirilmiş bir çekirdek derlemeniz veya sistem kaynak kodları üzerinde çalışmanız gerekiyorsa, /usr/src dizinindeki çekirdek kaynaklarını da güncel tutmanız önemlidir. FreeBSD 12.0 için kaynak kodlarını svnlite veya git ile edinebilirsiniz.
Eğer kaynak kodları kurulu değilse:

svnlite checkout https://svn.freebsd.org/base/stable/12 /usr/src

Eğer kaynak kodları zaten kuruluysa, güncellemek için /usr/src dizinine gidip:

svnlite update

Bu, sisteminizin temel kaynak kodlarını güncel tutar. Özelleştirilmiş bir çekirdek derlemeniz gerekmiyorsa, bu adım çoğu sunucu için zorunlu değildir, ancak bazı özel durumlarda veya geliştirme ortamlarında faydalıdır.

Temel Güvenlik Önlemleri

Bir sunucunun güvenliği, kurulumun ilk aşamalarından itibaren ele alınması gereken en kritik konulardan biridir. Yanlış yapılandırılmış bir sistem, potansiyel saldırılara açık kapı bırakabilir. İşte yeni bir FreeBSD sunucusunda alınması gereken temel güvenlik önlemleri:

Root Şifresi ve Kullanıcı Yönetimi

* Root Şifresini Değiştirme: Kurulum sırasında belirlenmiş olsa bile, root kullanıcısının şifresini hemen değiştirmek iyi bir uygulamadır. Güçlü, karmaşık bir şifre seçtiğinizden emin olun.

passwd root

* Yeni Bir Yönetici Kullanıcısı Oluşturma: root kullanıcısı ile doğrudan günlük işlemler yapmak yerine, sudo yetkilerine sahip yeni bir kullanıcı oluşturmak daha güvenlidir.

adduser

Bu komut sizi interaktif bir süreçten geçirerek yeni bir kullanıcı oluşturmanızı sağlar. Yeni kullanıcıyı wheel grubuna eklediğinizden emin olun. Bu, kullanıcının sudo ile root yetkileri alabilmesini sağlar.

pw group mod wheel -m yeni_kullanici_adiniz

SSH Yapılandırması

SSH (Secure Shell), sunucuya uzaktan güvenli erişim sağlamanın birincil yoludur. SSH yapılandırmasını güçlendirmek, yetkisiz erişimi engellemek için hayati öneme sahiptir. /etc/ssh/sshd_config dosyasını düzenleyin:
* Root Girişini Devre Dışı Bırakma: root kullanıcısının SSH üzerinden doğrudan giriş yapmasını engelleyin. Bu, bir saldırganın yalnızca root şifresini tahmin etmesi durumunda sisteme girememesini sağlar.

PermitRootLogin no

* Parola Kimlik Doğrulamasını Devre Dışı Bırakma (Anahtar Tabanlı Kimlik Doğrulama Kullanın): Parola tabanlı kimlik doğrulama, kaba kuvvet saldırılarına karşı savunmasızdır. Bunun yerine, SSH anahtarları kullanarak daha güvenli bir yöntem tercih edin.

PasswordAuthentication no

Anahtar tabanlı kimlik doğrulama için, istemcinizde bir SSH anahtar çifti oluşturun (ssh-keygen) ve genel anahtarınızı (~/.ssh/id_rsa.pub) sunucudaki yeni oluşturduğunuz kullanıcının ~/.ssh/authorized_keys dosyasına kopyalayın.
* Varsayılan SSH Portunu Değiştirme: Çoğu kaba kuvvet saldırısı varsayılan SSH portu olan 22’yi hedefler. Portu bilinmeyen bir porta değiştirmek, otomatik saldırıların büyük bir kısmını engeller.

Port 2222 # Örnek olarak 2222 kullanıldı, farklı bir port seçebilirsiniz.

* Belirli Kullanıcılara İzin Verme: Yalnızca belirli kullanıcıların SSH ile bağlanmasına izin verin.

AllowUsers yeni_kullanici_adiniz

Yapılandırma değişikliklerinden sonra SSH servisini yeniden başlatın:

service sshd restart

Güvenlik Duvarı (pf) Yapılandırması

FreeBSD, güçlü bir durum bilgisi olan güvenlik duvarı olan pf (Packet Filter) ile birlikte gelir. pf‘yi etkinleştirmek ve yapılandırmak, sunucunuza gelen ve giden trafiği kontrol etmenizi sağlar.
pf‘yi etkinleştirmek için /etc/rc.conf dosyasına aşağıdaki satırları ekleyin:

pf_enable="YES"
pf_rules="/etc/pf.conf"

Ardından, /etc/pf.conf dosyasını oluşturun veya düzenleyin. İşte basit bir pf.conf örneği:

# Harici ağ arayüzünüzü tanımlayın
ext_if="vtnet0" # Sunucunuzun ağ arayüzüne göre değiştirin (örneğin: em0, igb0)

Gelen ve giden tüm trafiği varsayılan olarak engelle

block all

Loopback trafiğine izin ver

pass out quick on lo0 all pass in quick on lo0 all

Durum bilgisi olan (stateful) bağlantılara izin ver

set skip on lo0 pass out quick on $ext_if proto tcp all keep state pass out quick on $ext_if proto udp all keep state pass out quick on $ext_if proto icmp all keep state

Gelen SSH bağlantılarına izin ver (varsayılan 22 veya değiştirdiğiniz port)

Portu değiştirdiyseniz, buradaki 22'yi yeni port numaranızla değiştirin

pass in on $ext_if proto tcp to any port 2222 flags S/SA keep state

pf.conf dosyasını kaydettikten sonra, yapılandırmayı kontrol edin ve pf servisini başlatın:

pfctl -nf /etc/pf.conf # Yapılandırma dosyasını test et
service pf start      # pf servisini başlat

ipfw da bir diğer seçenektir, ancak pf genellikle daha modern ve esnek kabul edilir.

sudo Kurulumu ve Yapılandırması

root kullanıcısı yerine yeni oluşturduğunuz kullanıcı ile işlem yapmak için sudo‘yu kurmanız gerekir.

pkg install sudo

Ardından, sudo‘yu yapılandırmak için visudo komutunu kullanın. Bu komut, /etc/sudoers dosyasını güvenli bir şekilde düzenlemenizi sağlar.

visudo

Aşağıdaki satırı bularak veya ekleyerek wheel grubundaki kullanıcıların sudo kullanmasına izin verin (genellikle yorum satırı olarak bulunur):

%wheel ALL=(ALL) ALL

Bu, wheel grubundaki kullanıcıların, kendi şifrelerini girdikten sonra sudo komutuyla root yetkilerini kullanabilmesini sağlar.

sysctl Ayarlamaları

FreeBSD’nin çekirdek davranışını kontrol eden bazı sysctl ayarları, güvenliği artırmak için değiştirilebilir. Bu ayarlar /etc/sysctl.conf dosyasına eklenir.
Örneğin:

kern.randompid=1         # PID atamada rastgelelik
net.inet.ip.random_id=1  # IP kimliklerini rastgele yap
net.inet.tcp.drop_synfin=1 # SYN+FIN paketlerini düşür (bazı tarayıcılarda sorun yaratabilir)
net.inet.icmp.maskrepl=0 # ICMP maske yanıtlarını devre dışı bırak
net.inet.icmp.log_redirect=0 # ICMP yönlendirmelerini günlüğe kaydetme

Bu değişikliklerin etkili olması için sistemi yeniden başlatmanız veya sysctl -p komutunu çalıştırmanız gerekir.

Sistem Yapılandırması ve Optimizasyon

Güvenlik adımlarının ardından, sunucunuzun temel yapılandırmasını ve performansını optimize etmek için bazı önemli adımlar atılmalıdır.

Ana Bilgisayar Adı ve Ağ Ayarları

Sunucunuzun ana bilgisayar adını (hostname) ayarlamak ve ağ arayüzü yapılandırmasını kontrol etmek önemlidir. /etc/rc.conf dosyasına aşağıdaki satırları ekleyin veya düzenleyin:

hostname="sunucu.alanadiniz.com"
ifconfig_vtnet0="DHCP" # DHCP kullanıyorsanız

veya statik IP için:

ifconfig_vtnet0="inet 192.168.1.10 netmask 255.255.255.0"

defaultrouter="192.168.1.1"

DNS çözümlemesi için /etc/resolv.conf dosyasını kontrol edin ve doğru DNS sunucularını içerdiğinden emin olun.

Zaman Senkronizasyonu (NTP)

Sistem saatinin doğru olması, günlük dosyalarının tutarlılığı, güvenlik sertifikalarının geçerliliği ve genel sistem operasyonları için kritiktir. NTP (Network Time Protocol) servisini etkinleştirerek sistem saatinizi otomatik olarak senkronize edebilirsiniz.
/etc/rc.conf dosyasına aşağıdaki satırı ekleyin:

ntpd_enable="YES"
ntpd_sync_on_start="YES"

Ardından ntpd servisini başlatın:

service ntpd start

Yerel Ayarlar (Locale) ve Klavye Düzeni

Sisteminizin dil ve karakter setini doğru ayarlamak, özellikle farklı dillerde içerik işleyen uygulamalar için önemlidir. /etc/login.conf dosyasını düzenleyerek varsayılan yerel ayarları değiştirebilirsiniz. Örneğin, Türkçe yerel ayarları için:

default:\
    :charset=UTF-8:\
    :lang=tr_TR.UTF-8:\
    ...

cap_mkdb /etc/login.conf komutunu çalıştırarak değişiklikleri etkinleştirin.
Klavye düzeni için /etc/rc.conf dosyasına:

keymap="tr.kbd"

ekleyebilirsiniz.

Disk Yapılandırması (ZFS/UFS)

FreeBSD, hem UFS (Unix File System) hem de ZFS (Zettabyte File System) dosya sistemlerini destekler.
* ZFS: Modern sunucular için ZFS şiddetle tavsiye edilir. Veri bütünlüğü, anlık görüntüler (snapshots), veri sıkıştırma, birim yönetimi ve RAID-Z gibi gelişmiş özellikler sunar. Eğer kurulum sırasında ZFS seçmediyseniz, sonradan yapılandırmak daha karmaşık olabilir, ancak sağladığı avantajlar genellikle buna değerdir. ZFS havuzlarınızın sağlığını düzenli olarak zpool status ile kontrol edin.
* UFS: Daha basit bir dosya sistemi gereksinimleriniz varsa veya eski sistemlerle uyumluluk önemliyse UFS yeterli olabilir. UFS kullanıyorsanız, fsck ile düzenli dosya sistemi kontrolü ve tunefs ile bazı optimizasyonlar düşünebilirsiniz.

Takas Alanı (Swap) Kontrolü

Sisteminizin yeterli takas alanına sahip olduğundan emin olun. Genellikle fiziksel RAM’in 1-2 katı kadar takas alanı önerilir, ancak bu, sunucunun kullanım amacına göre değişebilir. swapinfo komutu ile mevcut takas alanını görebilirsiniz. Eğer yetersizse, ek bir takas dosyası veya bölümü oluşturabilirsiniz.
Takas dosyası oluşturma örneği:

truncate -s 4G /usr/swap0 # 4GB'lık bir takas dosyası oluştur
chmod 0600 /usr/swap0
mdconfig -a -t vnode -f /usr/swap0 -u 0
swapon /dev/md0

Bu ayarı kalıcı hale getirmek için /etc/fstab dosyasına aşağıdaki satırı ekleyin:

/usr/swap0  none  swap  sw  0  0

Kaynak Limitleri (ulimit)

Bazı uygulamalar veya servisler, dosya açma limiti (file descriptors), işlem sayısı gibi kaynak limitlerinin artırılmasını gerektirebilir. Bu limitler /etc/login.conf dosyasında default veya belirli kullanıcı sınıfları için ayarlanabilir.
Örneğin, dosya açma limitini artırmak için:

default:\
    ...
    :openfiles=2048:\
    ...

Değişikliklerden sonra cap_mkdb /etc/login.conf komutunu çalıştırmayı unutmayın.

İzleme ve Günlükleme

Bir sunucunun sağlıklı çalıştığından emin olmak ve potansiyel sorunları erkenden tespit etmek için düzenli izleme ve günlük kayıtlarının incelenmesi çok önemlidir.

Temel İzleme Araçları

FreeBSD, sistem kaynaklarını izlemek için bir dizi komut satırı aracı sunar:
* top: İşlemci, bellek ve çalışan süreçlerin genel durumunu gösterir.
* vmstat: Sanal bellek istatistiklerini, disk ve CPU kullanımını raporlar.
* iostat: Disk G/Ç istatistiklerini gösterir. Özellikle disk performansı sorunlarını teşhis etmek için kullanışlıdır.
* netstat: Ağ bağlantıları, yönlendirme tabloları ve ağ arayüzü istatistikleri hakkında bilgi verir.
* systat: Çeşitli sistem istatistiklerini dinamik olarak gösteren bir araçtır.

Sistem Günlükleri

Tüm sistem olayları, hata mesajları ve servis günlükleri /var/log dizininde bulunur.
* /var/log/messages: Genel sistem mesajları.
* /var/log/auth.log: Kimlik doğrulama ile ilgili olaylar (SSH girişleri vb.).
* /var/log/maillog: Posta sunucusu günlükleri.
* dmesg: Çekirdek boot mesajlarını gösterir.
Günlükleri düzenli olarak kontrol etmek, sisteminizdeki anormallikleri veya güvenlik ihlallerini tespit etmenize yardımcı olur. grep, awk, sed gibi araçlarla günlükleri filtreleyebilir ve analiz edebilirsiniz.

Günlük Rotasyonu (newsyslog)

Günlük dosyalarının çok büyümesini ve disk alanını tüketmesini önlemek için FreeBSD, newsyslog servisini kullanır. Bu servis, günlük dosyalarını belirli aralıklarla döndürür, sıkıştırır ve eski kopyalarını siler. /etc/newsyslog.conf dosyasını düzenleyerek rotasyon politikalarını özelleştirebilirsiniz. Varsayılan ayarlar çoğu zaman yeterlidir, ancak yüksek trafikli sunucularda veya belirli servisler için özel ayarlamalar gerekebilir.

Temel Servislerin Kurulumu ve Yönetimi (Örnekler)

Sunucunuzun kullanım amacına bağlı olarak çeşitli servisler kurmanız gerekebilir. pkg paket yöneticisi bu süreçte ana aracınız olacaktır.

Paket Yönetimi (pkg)

Daha önce de belirtildiği gibi, pkg üçüncü taraf yazılımları kurmak, güncellemek ve kaldırmak için kullanılır.
* Bir paket aramak: pkg search paket_adi
* Bir paket kurmak: pkg install paket_adi
* Bir paketi kaldırmak: pkg delete paket_adi
* Kurulu paketleri listelemek: pkg info

Web Sunucusu (Nginx/Apache)

Bir web sitesi veya web uygulaması barındıracaksanız, bir web sunucusu kurmanız gerekir. Nginx ve Apache en popüler seçeneklerdir.
* Nginx Kurulumu:

pkg install nginx
    sysrc nginx_enable="YES"
    service nginx start

* Apache Kurulumu:

pkg install apache24
    sysrc apache24_enable="YES"
    service apache24 start

Yapılandırma dosyaları genellikle /usr/local/etc/nginx/ veya /usr/local/etc/apache24/ dizinlerinde bulunur.

Veritabanı Sunucusu (PostgreSQL/MySQL)

Veri depolamak için bir veritabanı sunucusuna ihtiyacınız olabilir.
* PostgreSQL Kurulumu:

pkg install postgresql12-server
    sysrc postgresql_enable="YES"
    service postgresql initdb
    service postgresql start

* MySQL Kurulumu:

pkg install mysql80-server
    sysrc mysql_enable="YES"
    service mysql-server start

Kurulumdan sonra veritabanı güvenliğini sağlamak için mysql_secure_installation gibi komutları çalıştırmayı unutmayın (MySQL için).

Versiyon Kontrol Sistemi (Git)

Kod geliştiriyorsanız veya yapılandırma dosyalarını yönetiyorsanız Git vazgeçilmez bir araçtır.

pkg install git

Yedekleme Stratejileri

Veri kaybı, bir sunucu yöneticisinin karşılaşabileceği en kötü senaryolardan biridir. Bu nedenle, kapsamlı bir yedekleme stratejisi oluşturmak hayati öneme sahiptir.
* Yedeklemenin Önemi: Donanım arızaları, yazılım hataları, yanlış yapılandırmalar veya siber saldırılar nedeniyle veri kaybı yaşanabilir. Düzenli ve güvenilir yedeklemeler, bu tür felaketlerden kurtulmanızı sağlar.
* Kullanılacak Araçlar:
* tar: Dosya ve dizinleri arşivlemek için klasik bir Unix aracıdır.
* rsync: Dosyaları yerel olarak veya ağ üzerinden senkronize etmek için etkilidir. Yalnızca değişen dosyaları kopyalayarak bant genişliğinden tasarruf sağlar.
* ZFS Anlık Görüntüleri (Snapshots): Eğer ZFS kullanıyorsanız, anlık görüntüler belirli bir zamandaki dosya sisteminin durumunu kaydetmek için inanılmaz derecede hızlı ve verimli bir yoldur. Felaket durumunda hızlı geri dönüş sağlar.

zfs snapshot zpool_adı/filesystem_adı@yedek_adı

* Yedekleme Hedefleri: Yedeklemelerinizi farklı bir diske, farklı bir sunucuya veya bulut depolama hizmetlerine (AWS S3, Google Cloud Storage vb.) kopyalayın. “3-2-1 kuralı”nı uygulamak iyi bir yaklaşımdır: verilerinizin 3 kopyasını tutun, 2 farklı ortamda ve 1 kopyası off-site (uzak konumda) olsun.
* Otomatik Yedeklemeler: cron kullanarak yedekleme işlemlerini otomatikleştirin.
* Yedeklemeleri Test Etme: Yedeklemelerinizin gerçekten çalışıp çalışmadığını düzenli olarak test edin. Bir yedekleme stratejisi, ancak geri yükleme yapabildiğinizde değerlidir.

Düzenli Bakım ve Yönetim

Sunucunuzu kurduktan sonra işiniz bitmez. Optimal performans, güvenlik ve kararlılık için düzenli bakım ve yönetim faaliyetleri gereklidir.
* Sürekli Güncellemeler: Temel sistem (freebsd-update) ve paketlerin (pkg update && pkg upgrade) düzenli olarak güncel tutulduğundan emin olun. Otomatik güncellemeler, belirli riskleri olsa da, bazı ortamlar için düşünülebilir.
* Log Kontrolü: Sistem günlüklerini (/var/log) düzenli olarak inceleyin. Anormal girişler, hata mesajları veya güvenlik uyarıları olup olmadığını kontrol edin. Log analizi araçları (örneğin logcheck) bu süreci otomatikleştirebilir.
* Performans İzleme: Sunucunuzun CPU, bellek, disk G/Ç ve ağ kullanımını sürekli izleyin. Yüksek kaynak tüketimi, performans sorunlarının veya potansiyel saldırıların belirtisi olabilir. top, vmstat, iostat gibi araçlar veya daha gelişmiş izleme çözümleri (Netdata, Prometheus, Grafana) kullanabilirsiniz.
* Güvenlik Denetimleri: Güvenlik duvarı kurallarınızı, SSH yapılandırmanızı ve kullanıcı izinlerini düzenli olarak gözden geçirin. Yeni yazılımlar kurduğunuzda, bunların güvenlik etkilerini değerlendirin.
Disk Alanı Yönetimi: Disk kullanımını izleyin ve gereksiz dosyaları temizleyin. df -h ve du -sh gibi komutlar disk alanı kullanımını anlamanıza yardımcı olur.

Sonuç

Yeni bir FreeBSD 12.0 sunucusunun kurulumu, dikkatli ve metodik bir yaklaşım gerektiren önemli bir süreçtir. Bu makalede özetlenen adımlar – temel sistem ve paket güncellemeleri, kapsamlı güvenlik önlemleri, sistem yapılandırması ve optimizasyonu, izleme ve günlükleme, temel servislerin kurulumu ve düzenli bakım – sunucunuzun temelini sağlam bir şekilde atmanızı sağlar. Güvenli bir SSH erişimi yapılandırmaktan, bir güvenlik duvarı kurmaya ve düzenli yedekleme stratejileri oluşturmaya kadar her adım, sunucunuzun uzun vadeli kararlılığı ve güvenliği için kritik öneme sahiptir.

Bu ilk adımları titizlikle uygulayarak, hem potansiyel güvenlik açıklarını en aza indirir hem de sunucunuzun performansını maksimize edersiniz. Unutmayın ki, sunucu yönetimi sürekli bir öğrenme ve adaptasyon sürecidir. Teknolojiler geliştikçe ve tehditler değiştikçe, sisteminizi güncel tutmak ve en iyi uygulamaları takip etmek hayati önem taşır. Bu makale, FreeBSD sunucu maceranızda size yol gösterici bir başlangıç noktası sunmayı amaçlamaktadır.

Yorumlar
İçeriği beğendiniz mi? Bir tartışma başlatın veya görüşlerinizi paylaşın.
Yorum Yaz

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

E-posta Bülteni
Yazılım Topluluğuna Katılın
En son güncellemeleri, yaratıcı ipuçlarını ve özel kaynakları doğrudan e-posta kutunuza alın. Tasarım ve inovasyonun geleceğini birlikte keşfedelim.