> For the complete documentation index, see [llms.txt](https://docs.liman.dev/liman-poc/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.liman.dev/liman-poc/etki-alani-denetcisi/samba-ortami.md).

# Samba Ortamı

{% tabs %}
{% tab title="Debian" %}

* Aciklab ekibi tarafından derlenmiş sambahvl paketinin güncel versiyonu<https://github.com/aciklab/samba/releases> adresinden indirilir ve yüklenir

  ```jsx
  version="4.15.2-20211205-164533"
  wget <https://github.com/aciklab/samba/releases/download/debian-samba-$version.deb/debian-samba-$version.deb>
  apt install ./debian-samba-$version.deb
  ```
* Domain provision etmek için aşağıdaki komut kullanılabilir

  * **DOMAIN\_NAME:** Domain adı. Örneğin "acik.lab"
  * **DOMAIN\_IP:** Reverse zone oluşturulabilmesi için domain bilgisayarının ip adresi

  ```jsx
  smb-create-domain -d "acik.lab" -r "10.10.10.5"
  ```

{% endtab %}

{% tab title="Centos" %}
‼️Centos 8 server versiyon kurulmalıdır. Arayüzlü versiyonda daha fazla paket olduğundan, paket çakışması olabilir.

* Selinux kapatılmalıdır. `/etc/selinux/config` dosyası açılarak `SELINUX` seçeneği aşağıdaki gibi `disabled` yapılmalıdır. Bu işlemden sonra makine yeniden başlatılmalıdır.

  ```jsx
  SELINUX=disabled
  ```

  ya da

  ```jsx
  sed -i "/SELINUX/d" /etc/selinux/config
  echo "SELINUX=disabled" >> /etc/selinux/config
  reboot
  ```
* Kurulu samba paketleri var ise aşağıdaki komutla bulunur

  ```jsx
  root@localhost sysadmin]# rpm -qa | grep samba
  samba-client-libs-4.9.1-8.el8.x86_64
  samba-common-4.9.1-8.el8.noarch
  samba-common-libs-4.9.1-8.el8.x86_64
  ```
* Kurulu samba paketleri var ise silinir

  ```jsx
  echo y | yum remove samba-client-libs 
  echo y | yum remove samba-common
  echo y | yum remove samba-common-libs 
  ```
* Bağımlılıkların yükleneceği depolar aktifleştirilir. Bağımlılıklar için aşağıdaki depolar kullanılır

  * epel
  * PowerTools
  * Base
  * AppStream
  * Extras

  Depolar aktifleştirilmek için aşağıdaki komutlar kullanılabilir

  ```bash
  sed -i 's/#baseurl/baseurl/g' /etc/yum.repos.d/*
  sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/*
  sed -i 's/enabled=0/enabled=1/g' /etc/yum.repos.d/*PowerTools*
  yum groups -y install "Development Tools"
  yum -y install epel-release
  ```
* Rpm paketini aşağıdaki linkten indirebilirsiniz.

  yada

  ```jsx
  wget <https://github.com/fthrslntgy/samba/releases/download/release.rpm.4.15.3-9/sambahvl-4.15.3-9.x86_64.rpm>
  ```
* Sambahvl paketi sunucuya atılır ve aşağıdaki şekilde kurulur

  ```jsx
  yum -y install ./sambahvl-4.15.3-9.x86_64.rpm
  ```
* Yeni bir domain oluşturmak için aşağıdaki komut çalıştırılır ve Administrator kullanıcısı için bir parola belirlenir.

  * **-r (reverse domain zone) :** samba sunucusunun ip adresi
  * **-d (domain adı):** oluşturulacak yeni domain adı

  ```jsx
  smb-create-domain -d acik.lab -r X.X.X.3
  Administrator parolası:
  ```

{% endtab %}
{% endtabs %}

{% hint style="info" %}

## NOT D.1: Reverse DNS Zone

Reverse DNS oluşturulmadı ise aşağıdaki komutlar kullanılarak sonradan da oluşturulabilir. Tüm DC’lerin PTR kayıtları aşağıdaki gibi eklenmelidir

> * **REVERSE\_ZONE:** Samba DC IP adresinin ilk 3 oktetinin tersten yazımı
>
>   Örneğin IP adresi 192.168.56.20 ise REVERSE\_ZONE = **56.168.192** olmalı
> * **DOMAIN\_ADMIN**: Domaindeki yetkili kullanıcı
> * **SAMBA\_IP:** Samba DC IP adresinin son okteti
>
>   Örneğin IP adresi 192.168.56.20 ise SAMBA\_IP = **20** olmalı
> * **SAMBA\_FQDN**: Samba DC FQDN adresi
>
>   Örneğin, sambadc01.acik.lab

#### Reverse Zone Ekleme

```
samba-tool dns zonecreate localhost REVERSE_ZONE.in-addr.arpa -U DOMAIN_ADMIN
```

#### Samba DC PTR Kaydı Ekleme

```
samba-tool dns add localhost REVERSE_ZONE.in-addr.arpa SAMBA_IP PTR SAMBA_FQDN -U DOMAIN_ADMIN
```

{% endhint %}
