CoovaChilli Kurulumu

../_images/coova-logo.png

Giriş

Bu belge, CoovaChilli yazılımının ayrıntılı kurulum adımlarını içermektedir. CoovaChilli’yi kuracağınız ortamın hazırlanması, CoovaChilli kurulumu ve gerekli ayarların yapılması aşamaları anlatılmaktadır.

Not

CoovaChilli’nin kurulumunu yapacağınız Debian işletim sistemini içeren ortamınız hazırsa “CoovaChilli Kurulumu” adımına geçebilirsiniz. Kullandığınız Linux dağıtımına göre yapacağınız işlemler farklılık gösterebilir. Herhangi bir sorun yaşamamanız için Debian işletim sistemini kullanmanızı tavsiye ediyoruz.

Danger

CoovaChilli’nin kurulacağı cihazın iki adet ethernet girişi olmalıdır. Bir tanesi internet bağlantısını sağlamalı (WAN), diğeri ise karşılama ekranının çalışmasını sağlamalıdır (LAN).

Debian ISO İndirme

CoovaChilli’yi kuracağımız ortamı hazırlayabilmek için bir işletim sistemine ihtiyacımız var. Bu bölümde Debian kurulumu anlatılacaktır. Debian kurulumuna başlamadan önce, resmi Debian web sitesinden “Debian 11 Bullseye” sürümünü indirin. Debian sürümleri genellikle “stable”, “testing” ve “unstable” olarak adlandırılır. Stabil sürümü tercih etmek genellikle en iyi seçenektir.

ISO dosyasını indirirken, kullandığınız donanımın mimarisine uygun olanı seçtiğinizden emin olun. Örneğin, 64-bit bir işlemciniz varsa “amd64” sürümünü indirin.

https://www.debian.org/releases/bullseye/debian-installer/ adresine gidin. Aşağıdaki görselde yer alan butona tıklayarak Debian işletim sisteminin ISO dosyasını indirebilirsiniz.

../_images/13.jpg

ISO Dosyasını Flash Belleğe Yazma

Debian ISO dosyasını USB flash sürücüye yazmak için özel araçlar kullanabilirsiniz. Özel araçlar genellikle daha kullanıcı dostudur ve işlemi daha kolay hale getirebilir. Biz bu işlemi “Balena Etcher” adlı programı indirerek gerçekleştireceğiz.

Important

Kurulum sırasında kullanacağınız USB flash belleğin sıfırlanacağını unutmayın. Gerekliyse kurulumdan önce yedekleme işlemlerini yapabilirsiniz.

  1. Etcher uygulamasını indiremek için öncelikle https://etcher.balena.io/ adresine gidin.

  2. “Download Etcher” butonuna tıklayın.

../_images/21.jpg
  1. Kullandığınız cihaza uygun olan Etcher versiyonunu seçerek uygulama kurulumunu gerçekleştirebilirsiniz.

../_images/31.jpg
  1. Kurulumun ardından Etcher uygulamasını açınız. “Flash from file” butonuna tıklayarak indirmiş olduğunuz Debian ISO dosyasını seçiniz.

  2. “Select Target” butonuna tıklayarak kurulumu yapmak istediğiniz USB Flash belleği seçiniz.

  3. “Flash” butonuna tıklayarak ISO dosyasının seçtiğiniz belleğe yazılmasını gerçekleştirebilirsiniz.

  4. “Flash Completed!” yazısının ardından bir sonraki adım olan Debian işletim sisteminin kurulumuna geçebilirsiniz.

Debian Kurulum Adımları

  1. Bilgisayarınızı başlatın ve boot menüsünü açmak için gerekli tuşa basın. (Boot menüsü tuşu bilgisayar modeline göre farklılık göstermektedir.)

  2. USB flash belleği seçerek Debian kurulum menüsünü açın.

  3. Kurulumun başlamasının ardından açılan ekranda, ikinci sırada bulunan “Install” butonuna basın.

../_images/41.jpg
  1. Dil seçimi yapın.

../_images/51.jpg
  1. Ülke seçimi yapın. Türkiye’yi seçmek için “Other” butonuna tıklayın.

../_images/61.jpg
  1. Bölge olarak “asia” seçin.

../_images/71.jpg
  1. Ülke olarak Türkiye’yi seçin.

../_images/81.jpg
  1. Klavye düzeni için “United States” butonuna tıklayın.

../_images/91.jpg
  1. Açılan ekrandan klavye düzeninizi seçebilirsiniz.

../_images/101.jpg
  1. “Hostname” girin.

../_images/111.jpg
  1. “Domain name” seçeneğini boş bırakarak devam edin.

../_images/121.jpg
  1. Root için şifre belirleyin.

../_images/131.jpg
  1. Şifreyi doğrulamak için tekrar girin.

../_images/14.jpg
  1. Yeni kullanıcı için isim belirleyin.

../_images/15.jpg
  1. Yeni kullanıcı için kullanıcı adı belirleyin.

../_images/16.jpg
  1. Yeni kullanıcı için şifre belirleyin.

../_images/17.jpg
  1. Şifreyi doğrulamak için tekrar girin.

../_images/18.jpg
  1. Cihazın diskini bölmeden, tüm diski kullanabilmek için “Guided - use entire disk” butonuna tıklayın.

../_images/19.jpg
  1. Açılan ekrandan diskinizi seçin.

../_images/20.jpg
  1. Açılan ekrandan “All files in one partition” butonuna tıklayın.

../_images/211.jpg
  1. Açılan ekrandan “Finish partitioning and write changes to disk” butonuna tıklayın.

../_images/22.jpg
  1. Açılan ekrandan diskin üzerine yeni işletim sistemini yazabilmek için “Yes” butonuna tıklayın.

../_images/23.jpg
  1. Aşağıdaki ekranın gelmesi durumunda “Yes” butonuna tıklayın.

../_images/24.jpg
  1. Aşağıdaki ekranın gelmesi durumunda “No” butonuna tıklayın.

../_images/25.jpg
  1. Debian kullanırken indireceğiniz paketlerin hangi bölgeden indirileceğini seçin.

../_images/26.jpg
  1. İndirilecek paketlerin hangi adresten indirileceğini seçin.

../_images/27.jpg
  1. Açılan ekranı boş bırakarak devam edin.

../_images/28.jpg
  1. Aşağıdaki ekranın gelmesi durumunda “No” tuşuna basın.

../_images/29.jpg
  1. Açılan ekrandan sadece “SSH server” ve “standard system utilities” özelliklerini seçin.

../_images/30.jpg
  1. Grub özelliğinin yüklenmesi için “Yes” butonuna tıklayın.

../_images/311.jpg
  1. Grub özelliğinin hangi diske yükleneceğini seçin.

../_images/32.jpg
  1. Yüklemeler bitince Debian’ı kullanmaya hazır hale geliyoruz. Cihazı yeniden başlatmak için “Continue” butonuna tıklayın.

../_images/33.jpg

Debian kullanıma hazır. “CoovaChilli Kurulumu” ile devam edebilirsiniz.

CoovaChilli Kurulumu

  1. Cihaz üzerinde “root” yetkisine sahip olmak için aşağıdaki komutu kullanın. Komutu girdikten sonra şifre bilgisini girerek root yetkisine sahip olun.

su -

2. CoovaChilli kurulumuna başlamadan önce cihazın router görevi görebilmesi için bir düzenleme yapılması gerekiyor. Aşağıdaki komutu kullanarak konfigürasyon dosyasını açın.

nano /etc/sysctl.conf

#net.ipv4.ip_forward=1 yazan satırı bulun ve başındaki # işaretini kaldırın.

öncesi                    sonrası
#net.ipv4.ip_forward=1 -> net.ipv4.ip_forward=1

Değişikliğin ardından dosyanın son hali aşağıda görüldüğü gibi olmalıdır.

../_images/34.jpg

Dosyanın düzen bölümünden çıkmak için “CTRL + X” tuşlarına basın. Ardından “Y + ENTER” ile düzenleme bölümünden çıkın.

  1. Kurulumu gerçekleştirmek için gerekli olan paketleri aşağıdaki kodları kullanarak yükleyebilirsiniz.

apt-get install build-essential libssl-dev libjson-c-dev gengetopt -y
apt install devscripts debhelper -y
  1. Aşağıdaki komutu kullanarak CoovaChilli’yi indirin.

wget https://github.com/coova/coova-chilli/archive/refs/tags/1.6.tar.gz
  1. İnen dosyayı aşağıdaki komutu kullanarak çıkartın.

tar -xzvf 1.6.tar.gz

Ardından dosyanın içerisine girin.

cd coova-chilli-1.6/
  1. Yapılan değişikliklerin geçerli olması için aşağıdaki komutu kullanın.

debuild -i -us -uc -b

Ardından aşağıdaki komut ile bir üst dizine geçin.

cd ..
  1. Şimdi ise CoovaChilli kurulumunu gerçekleştireceğiz. Aşağıdaki komutu sırasıyla kullanarak kurulumu gerçekleştirin.

apt install -f -y
dpkg --install coova-chilli_1.6_amd64.deb
  1. Kurulumun ardından CoovaChilli’nin çalışabilmesi için gerekli ayarların yapılması gerekiyor.

Aşağıdaki komutu çalıştırın.

nano /etc/default/chilli

Dosyanın içeriğini aşağıdaki gibi değiştirin.

START_CHILLI=1
CONFFILE="/etc/chilli.conf"
HS_USER="chilli"

Dosyayı kaydedin ve ardından CoovaChilli’yi aşağıdaki kodu kullanarak çalıştırın.

systemctl enable chilli

WAN ve LAN arayüzlerinin debian tarafından verilen isimlerini öğrenmemiz gerekiyor. Aşağıdaki kodu kullanın.

ip addr

Aşağıdaki örnek çıktıya bakınız;

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
 inet 127.0.0.1/8 scope host lo
    valid_lft forever preferred_lft forever
 inet6 ::1/128 scope host
    valid_lft forever preferred_lft forever
2: enp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
 link/ether 08:00:27:fe:57:09 brd ff:ff:ff:ff:ff:ff
 inet 192.168.1.111/24 brd 192.168.1.255 scope global dynamic enp0s3
    valid_lft 256221sec preferred_lft 256221sec
 inet6 fe80::a00:27ff:fefe:5709/64 scope link
    valid_lft forever preferred_lft forever
3: enp4s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
 link/ether 08:00:27:8c:d3:32 brd ff:ff:ff:ff:ff:ff
 inet6 fe80::a00:27ff:fe8c:d332/64 scope link

Görüldüğü gibi WAN arayüzümüze verilen isim “enp2s0” ve LAN arayüzümüze verilen isim ise “enp4s0” şeklindedir. Bu isimler her cihaza göre farklılık gösterebilmektedir. Bu sebeple kendi arayüzlerinize verilen isimleri not ediniz.

Aşağıdaki komutu kullanarak CoovaChilli’nin kurulduğu dosya dizinine gidin.

cd /etc/chilli

Konfigürasyon dosyasını oluşturmak için bulunduğumuz dizindeki “defaults” adlı dosyayı çoğaltmamız gerekiyor. Aşağıdaki komutu kullanarak dosyayı oluşturun.

cp -v defaults config

Aşağıdaki komutu kullanarak oluşturduğumuz “config” isimli dosyayı açın.

nano config

Aşağıda bulunan dosya içeriğini kaydederek config dosyasının içine yapıştırınız. İlgili yerleri kendi ayarlarınıza göre değiştiriniz.

HS_WANIF=enp2s0
HS_LANIF=enp4s0
HS_NETWORK=10.1.0.0
HS_NETMASK=255.255.255.0
HS_UAMLISTEN=10.1.0.1
HS_UAMPORT=3990
HS_UAMUIPORT=4990
HS_DNS1=10.34.10.28
HS_DNS2=10.34.10.30
HS_NASID=nas01
HS_RADIUS=93.180.132.97
HS_RADIUS2=93.180.132.97
HS_RADSECRET=testing
HS_UAMSECRET=testing
HS_UAMALIASNAME=chilli
HS_UAMDOMAINS=".trcwificloud.com"
HS_UAMSERVER=$HS_UAMLISTEN
HS_UAMFORMAT=http://www.trcwificloud.com/turcom/
HS_MACAUTH=on
HS_TCP_PORTS="80 443 23 8000"
HS_MODE=hotspot
HS_TYPE=coovachilli
HS_WWWDIR=/etc/chilli/www
HS_WWWBIN=/etc/chilli/wwwsh
HS_PROVIDER=Coova
HS_PROVIDER_LINK=http://coova.github.io/
HS_LOC_NAME="My HotSpot"
HS_COAPORT=3799
HS_RAD_PROTO="pap"

Bulunduğunuz dizine aşağıdaki komutu yazarak bir dosya oluşturunuz ve altında bulunan dosya içeriğini oluşturduğunuz dosyanın içine yapıştırarak kaydediniz.

nano ipup.sh
iptables -I INPUT -i tun0 -p tcp -m tcp --dport 80 --dst 10.1.0.1 -j ACCEPT
iptables -I INPUT -i tun0 -p tcp -m tcp --dport 443 --dst 10.1.0.1 -j ACCEPT
iptables -I INPUT -i tun0 -p tcp -m tcp --dport 22 --dst 10.1.0.1 -j ACCEPT
iptables -I INPUT -i tun0 -p tcp -m tcp --dport 8000 --dst 10.1.0.1 -j ACCEPT
iptables -F POSTROUTING -t nat
iptables -I POSTROUTING -t nat -o $HS_WANIF -j MASQUERADE

Aynı şekilde bir dosya daha oluşturacağız. Aşağıdaki komutu yazarak bir dosya oluşturunuz ve altında bulunan dosya içeriğini oluşturduğunuz dosyanın içine yapıştırarak kaydediniz.

nano ipdown.sh
iptables -D INPUT -i tun0 -p tcp -m tcp --dport 80 --dst 10.1.0.1 -j ACCEPT
iptables -D INPUT -i tun0 -p tcp -m tcp --dport 443 --dst 10.1.0.1 -j ACCEPT
iptables -D INPUT -i tun0 -p tcp -m tcp --dport 22 --dst 10.1.0.1 -j ACCEPT
iptables -D INPUT -i tun0 -p tcp -m tcp --dport 8000 --dst 10.1.0.1 -j ACCEPT

Aşağıdaki kodu çalıştırarak “defaults” isimli dosyayı açın.

nano defaults

Aşağıdaki satırı bularak başına # işaretini koyun.

öncesi                                                               sonrası
HS_UAMHOMEPAGE=http://\$HS_UAMLISTEN:\$HS_UAMPORT/www/coova.html ->  #HS_UAMHOMEPAGE=http://\$HS_UAMLISTEN:\$HS_UAMPORT/www/coova.html

Aşağıdaki kodları çalıştırarak kurulumu bitirip CoovaChilli yazılımını test etmeye hazır hale gelebilirsiniz.

systemctl stop chilli
systemctl start chilli

Sonuç

CoovaChilli kurulumu başarıyla tamamlandı. Artık CoovaChilli ile trcWifiCloud hizmetini kullanmaya başlayabilirsiniz.