# Sertifikalar

> Sertifika deposu platformun sertifika yetkilisidir. Sertifikaları yenileyin, güvenilir yapın, kurumsal CA'nızı ve HTTPS sertifikasını ayarlayın.

Kaynak: https://proxus.io/tr/docs/administer/certificates

Bu kılavuzda Proxus kurulumunuzdaki her sertifikanın nereden geldiğini, tarayıcıların ve cihazların bu
sertifikalara nasıl güveneceğini ve sertifikaların nasıl yenilenip değiştirileceğini öğreneceksiniz. **Sertifika
deposu**, tüm sertifikaları merkez sunucunun veritabanında tutar ve platformun kendi sertifika yetkilisi (CA) olarak
çalışır. Böylece merkez sunucu, tüm Edge Gateway'ler, OPC UA bağlantılarınız ve veri hedefleriniz aynı sertifikaları
kullanır.

## Başlamadan önce

- **Administrators** rolündeki bir kullanıcıyla oturum açın.
- Kuruluşunuzun CA'sını kullanacaksanız CA sertifikası ve özel anahtarı `.pfx` ya da `.p12` dosyası olarak elinizde
  olmalıdır. Dosya parolalı olabilir.
- Kendi sertifika yetkilinizden aldığınız tek bir sertifikayı kullanacaksanız sertifika ve özel anahtarı şu
  biçimlerden birinde olmalıdır: parolasız `.pfx` ya da `.p12` dosyası veya `.key` dosyasıyla birlikte `.pem`, `.crt`
  ya da `.cer` dosyası.

## Platform CA'sı

Merkez sunucu ilk açılışında 20 yıl geçerli **Proxus Platform CA** sertifika yetkilisini oluşturur. Platformun
kendisi için gereken tüm sertifikaları bu CA verir:

- merkez sunucunun HTTPS sertifikası (yeni kurulumlarda);
- merkez sunucu ile Edge Gateway'ler arasındaki tüm trafiği taşıyan NATS sunucusunun sertifikası;
- her Edge Gateway'in HTTPS bağlantı noktası ve MQTT sunucusu için kullandığı sertifika.

Bu sertifikaların tamamı aynı CA'ya bağlı olduğu için tarayıcıların, SCADA sistemlerinin ya da MQTT cihazlarının
yalnızca bu CA'ya güvenmesi yeterlidir. CA sertifikasını almak için **CA'yı indir** düğmesine tıklayın (bkz.
[Tarayıcıların ve cihazların platforma güvenmesini sağlayın](#tarayıcıların-ve-cihazların-platforma-güvenmesini-sağlayın)).

## Sertifikaların kullanım yerleri

| Kullanım | Sertifikanın kaynağı |
| --- | --- |
| Merkez sunucunun web arayüzü için HTTPS (`8443` numaralı bağlantı noktası) | **Varsayılan** olarak işaretli sertifika. Yeni kurulumlarda bu sertifikayı platform CA'sı verir. |
| Merkez sunucunun NATS sunucusu (`4222`, `7422` ve Kubernetes HA kurulumunda `6222` numaralı bağlantı noktaları) | **Proxus Hub NATS**. Otomatik olarak verilir ve yenilenir. |
| Her Edge Gateway'in HTTPS bağlantı noktası ve MQTT sunucusu (`8883` numaralı bağlantı noktası) | "*Edge Gateway adı* (gateway *N*)". Edge Gateway istediğinde merkez sunucu verir. |
| Proxus'un OPC UA sunucusuna bağlanırken kullandığı kendi sertifikası ve güvendiği OPC UA sunucuları | Cihaz profilinin OPC UA bağlantı ayarları ve deponun güven listesi. Bkz. [OPC UA](https://proxus.io/tr/docs/connect/devices/opc-ua). |
| Veri hedeflerinin istemci sertifikaları ve güvenilen sunucu sertifikaları | Hedefteki **İstemci sertifikası** ve **Güvenilen sunucu sertifikası** alanları. Bkz. [Veri hedefleri](https://proxus.io/tr/docs/connect/outbound-targets). |

## Sertifika deposu

**Güvenlik > Sertifika deposu** ekranını açın.

*Ekran görüntüsü: Yükle, Kendinden imzalı, Varsayılan yap, Güven ve Reddet düğmeleri işaretli Sertifika deposu listesi*

1. **Yükle**, bir sertifika dosyasını içe aktarır.
2. **Kendinden imzalı**, yeni bir kendinden imzalı sertifika oluşturur.
3. **Varsayılan yap**, seçili sertifikayı merkez sunucunun HTTPS sertifikası yapar. Yalnızca özel anahtarı olan
   bir sunucu sertifikası varsayılan olabilir; diğerlerinde düğme kullanılamaz.
4. **Güven**, seçili sertifikayı OPC UA için güvenilir olarak işaretler.
5. **Reddet**, sertifikayı reddedildi olarak işaretler. Reddedilen sertifika artık kullanılmaz.

**Güven** ve **Reddet** yalnızca OPC UA sunucularının sertifikalarında çalışır: özel anahtarı depoda olmayan ve
platformun kendisinin kullanmadığı sertifikalar. Platform CA'sında, merkez sunucunun HTTPS ve NATS sertifikalarında,
Edge Gateway sertifikalarında ve oturum anahtarı sertifikasında bu düğmeler kullanılamaz; bir Edge Gateway'in OPC UA sunucusu
raporu da bu sertifikaları değiştiremez.

Depoda şu eylemler de bulunur:

| Eylem | Yaptığı iş |
| --- | --- |
| **Kurumsal CA kullan** | Bundan sonra platformun sertifikalarını kuruluşunuzun CA'sının imzalamasını sağlar. Bkz. [Kurumsal CA'nızı kullanın](#kurumsal-canızı-kullanın). |
| **CA'yı indir** | CA sertifikalarını, başka sistemlerde güvenilir olarak kurmanız için indirir. Dosyada yalnızca ortak sertifikalar bulunur (PEM biçiminde, özel anahtar olmadan). |
| **Yenile** | Seçili sertifikanın yerine platform CA'sından alınan yeni bir sertifika koyar. Bkz. [Sertifikayı yenileyin](#sertifikayı-yenileyin). |
| **Durumu güncelle** | Sertifikaların bitiş tarihlerini hemen kontrol eder. |
| **Sil** | Onayınızdan sonra seçili sertifikayı siler. Bkz. [Silinemeyen sertifikalar](#silinemeyen-sertifikalar). |

**Güven durumu** alanında **Tümü**, **Güvenilenler** ya da **Reddedilenler** seçeneğiyle listeyi
daraltabilirsiniz. **Durum** sütununda **Etkin**, **Süresi yakında doluyor** (30 günden az kaldı), **Süresi doldu**
ya da **Devre dışı** (reddedildi) yazar. Proxus bitiş tarihlerini günde bir kez kontrol eder. Süresi 30 gün içinde
dolacak her sertifika için [sistem günlüklerine](https://proxus.io/tr/docs/administer/system-logs) uyarı yazar.

**Kullanım** sütunu sertifikanın kullanıldığı her işi yazar; örneğin **MQTT sunucusu, Edge Gateway HTTPS**.

### Yeni kurulumdaki sertifikalar

Yeni bir merkez sunucu ilk açılışta şu sertifikaları oluşturur. Hiçbirini sizin eklemeniz gerekmez:

| Sertifika | Ne için |
| --- | --- |
| **Proxus Platform CA** | Platformun sertifikalarını imzalar. |
| **Proxus Data Protection** | Merkez sunucunun oturum anahtarlarını korur. |
| **Proxus Hub HTTPS** | `8443` portundaki web arayüzü. |
| **Proxus Hub NATS** | Merkez sunucunun mesaj sunucusu. |
| **SYSTEM (gateway 1)** | Yerleşik Edge Gateway'in HTTPS'i ve MQTT sunucusu. Kurduğunuz her Edge Gateway da böyle bir sertifika alır. |

### Yenilenen sertifikaların eski sürümleri

Liste kullanımdaki sertifikaları gösterir. Bir sertifika yenilendiğinde eski sürümü 30 gün saklanır, sonra kendiliğinden
silinir; bir veri hedefi ya da cihaz profili hâlâ kullanıyorsa silinmez. Bir Edge Gateway'i silmek onun sertifikalarını da
siler.

### Sertifikayı kullanan nesneler

Ayrıntılarını görmek için sertifikayı açın. Şu alanlar, sertifikaya nelerin bağlı olduğunu gösterir:

| Alan | Gösterdiği |
| --- | --- |
| **Kullanıldığı yerler** | Bu sertifikayı kullanan her şey. Örneğin "Platformun sertifikalarını imzalıyor", "Tüm platform hizmetleri bu CA'ya güveniyor", "Merkez sunucu HTTPS", "Merkez sunucunun oturum anahtarlarını koruyor", "Merkez sunucu NATS sunucusu", "Edge Gateway 2: merkez sunucu bağlantısı", "Edge Gateway 2: HTTPS", "Edge Gateway 2: MQTT sunucusu", "OPC UA istemci kimliği", "Güvenilen OPC UA sunucusu", "Reddedilen OPC UA sunucusu" ya da sertifikayı istemci sertifikası veya güvenilen sunucu sertifikası olarak kullanan veri hedeflerinin adları. |
| **Platform sertifikalarını imzalar** | Platformun sertifikalarını veren CA'da seçilidir. |
| **Otomatik yenilenir** | Platformun verdiği ve kendiliğinden yenilediği sertifikalarda seçilidir. |
| **Kullanım** | Sertifikanın kullanım amacı. Örneğin **Platform**, **NATS sunucusu**, **NATS istemcisi**, **MQTT sunucusu**, **Edge Gateway HTTPS**, **Sertifika yetkilisi** ya da **Oturum anahtarı koruması**. |

Bir sertifikayı reddetmeden ya da değiştirmeden önce **Kullanıldığı yerler** alanını kontrol edin.

### Silinemeyen sertifikalar

Depoda şu sertifikalar silinemez:

- platformun sertifikalarını imzalayan CA;
- merkez sunucunun oturum anahtarlarını koruyan sertifika;
- verdiği sertifikalar hâlâ kullanılan CA;
- bir veri hedefinin ya da cihaz profilinin kullandığı sertifikalar.

Varsayılan HTTPS sertifikası da silinemez. Silmek için önce başka bir sertifikayı varsayılan yapın.

## Tarayıcıların ve cihazların platforma güvenmesini sağlayın

1. **Güvenlik > Sertifika deposu** ekranında **CA'yı indir** düğmesine tıklayın. CA sertifikalarını içeren bir PEM
   dosyası iner. Dosyada özel anahtar bulunmadığı için dosyayı serbestçe dağıtabilirsiniz.
2. Dosyayı gereken her yerde güvenilir kök sertifika olarak kurun: kullanıcıların bilgisayarları (ya da şirketinizin
   cihaz yönetim sistemi), merkez sunucuya bağlanan SCADA sistemleri ve diğer araçlar, Edge Gateway'in MQTT sunucusuna
   `8883` numaralı bağlantı noktasından bağlanan MQTT cihazları.

Bundan sonra tarayıcılar merkez sunucuyu HTTPS üzerinden uyarı vermeden açar. Bunun için tarayıcıda kullanılan
adresin merkez sunucunun sertifikasındaki adlardan biri olması gerekir (bkz.
[Merkez sunucunun HTTPS sertifikası](#merkez-sunucunun-https-sertifikası)).

## Kurumsal CA'nızı kullanın

Kuruluşunuzun kendi sertifika yetkilisi varsa platformun sertifikalarını bu CA'ya imzalatabilirsiniz. Böylece
kurumsal CA'nıza zaten güvenen istemciler, ek bir işlem yapmadan Proxus'a da güvenir.

1. **Kurumsal CA kullan** düğmesine tıklayın.
2. CA dosyasını seçin: CA sertifikasını ve özel anahtarını içeren `.pfx` ya da `.p12` dosyası. Dosya parolalıysa
   parolayı girin.
3. İşlemi onaylayın.

Bu andan itibaren platformun verdiği tüm sertifikaları sizin CA'nız imzalar. Proxus Platform CA, verdiği sertifikalar
yenilenene kadar güvenilir kalır. Bu sayede geçiş sırasında hiçbir bağlantı kopmaz. Tüm sertifikaları tek seferde
kendi CA'nıza geçirmek için mevcut sertifikaları yenileyin.

Depo şu dosyaları kabul etmez: CA olmayan, özel anahtarı bulunmayan ya da süresi 30 gün içinde dolacak sertifikalar.

## Sertifikayı yenileyin

1. Bir sertifika seçin.
2. **Yenile** düğmesine tıklayın ve işlemi onaylayın.

Yeni sertifikayı platform CA'sı verir. Yeni sertifika, eskisiyle aynı adları ve kullanım amacını taşır, yeni bir
anahtarla oluşturulur ve iki yıl geçerlidir. Eski sertifikayı kullanan her şey yeni sertifikaya geçer: merkez
sunucunun HTTPS bağlantısı, veri hedefleri ve OPC UA bağlantıları.

- Kendinden imzalı sertifika yenilendiğinde yerine platform CA'sının verdiği bir sertifika gelir.
- Proxus dışında verilmiş sertifikalar burada yenilenemez. Bu sertifikaları veren yerde yenileyin ve yeniden
  yükleyin.
- CA sertifikaları burada yenilenmez.

### Otomatik yenileme

Platformun kendi verdiği sertifikalar (merkez sunucunun NATS sertifikası, Edge Gateway'lerin sertifikaları ve **Otomatik
yenilenir** olarak işaretli diğer sertifikalar), süreleri dolmadan 30 gün önce yenilenir. Merkez sunucu bu kontrolü
günde bir kez yapar. Hiçbir şeyi yeniden başlatmanız gerekmez. Merkez sunucunun NATS sunucusu, Edge Gateway'ler bağlı
kalırken yeni sertifikasını yükler. Her Edge Gateway da yeni sertifikasını bir sonraki isteğinde alır.

## Merkez sunucunun HTTPS sertifikası

Merkez sunucu varsayılan olarak `8443` numaralı bağlantı noktasında, **Varsayılan** olarak işaretli sertifikayla HTTPS
hizmeti verir.

Yeni kurulumlarda merkez sunucunun sertifikasını platform CA'sı verir. Sertifika şu adları kapsar:

- makinenin adı ve IP adresleri;
- `localhost`;
- `Proxus-config.toml` dosyasında `[Service]` bölümündeki `PublicHostNames` anahtarına virgülle ayırarak
  yazdığınız adlar. Örneğin kullanıcıların tarayıcıya yazdığı DNS adı ya da NAT adresi.

```toml
[Service]
PublicHostNames = "proxus.lyonfoods.local, 203.0.113.10"
```

Önceki bir sürümden yükseltilen kurulumlar kendinden imzalı **Proxus (Self-Signed)** sertifikasını kullanmaya devam
eder. Platform CA'sına güvenen tarayıcıların güveneceği bir sertifikaya geçmek için bu sertifikayı seçin ve **Yenile**
düğmesine tıklayın. Yenilenen sertifika merkez sunucunun adlarını kapsar.

### Merkez sunucunun HTTPS sertifikasını değiştirin

1. Yeni sertifikayı oluşturun, yükleyin ya da yenileyin. Sertifika, özel anahtarı olan bir sunucu sertifikası
   olmalıdır. CA'lar, istemci sertifikaları ve platformun kendi NATS, Edge Gateway ve oturum sertifikaları varsayılan
   olamaz.
2. Sertifikayı seçin, **Varsayılan yap** düğmesine tıklayın ve **Varsayılan yap** ile onaylayın.

Merkez sunucu bir dakika içinde yeni sertifikayı kullanmaya başlar. Hiçbir şeyi yeniden başlatmanız gerekmez ve
kimsenin oturumu kapanmaz. Çünkü oturumları koruyan anahtarlar HTTPS sertifikasıyla değil, ayrı bir sertifikayla
(kullanım amacı **Oturum anahtarı koruması**) korunur. Yükseltilen kurulumlarda bu iş için mevcut varsayılan sertifika
kullanılmaya devam eder.

HTTPS'i kapatmak, tüm HTTP trafiğini HTTPS'e yönlendirmek ya da HTTPS'i başka bir bağlantı noktasından yayınlamak
için bkz. [Güvenlik](https://proxus.io/tr/docs/operate/security#https).

## Deponun özel anahtarlarını koruyun

Depodaki özel anahtarlar şifrelenmiş olarak saklanır. Bu anahtarları şifreleyen ve çözen depo anahtarı veritabanında
bulunmaz:

| Kurulum | Depo anahtarının yeri |
| --- | --- |
| Docker | Yapılandırma klasöründeki (`config` birimi) `keys/STORE/certificate-store.key` dosyası. |
| Kubernetes HA | Merkez sunucunun paylaşılan yapılandırma diskindeki `keys/STORE/certificate-store.key` dosyası. |
| Tüm kurulumlar | Alternatif olarak, sizin yönettiğiniz `PROXUS_CERTIFICATE_STORE_KEY` ortam değişkeni (32 baytlık base64 değer). |

> **Tehlike:**
Depo anahtarını yapılandırma klasörü ve veritabanıyla birlikte yedekleyin. Bu anahtar olmadan, geri yüklenen veritabanındaki sertifikalar okunamaz ve tüm sertifikaların yeniden oluşturulması ya da yüklenmesi gerekir. Bkz. [Yedekleme ve geri yükleme](https://proxus.io/tr/docs/operate/backup-and-restore).

Önceki sürümlerde saklanan sertifikalar, 2.0.0 sürümü ilk kez açıldıktan birkaç dakika sonra otomatik olarak
şifrelenir.

## Kendinden imzalı sertifika oluşturun

Kendinden imzalı sertifikayı testlerde ya da tüm istemcilerin bu sertifikaya güvenecek şekilde ayarlandığı
ortamlarda kullanın. Tarayıcılar kendinden imzalı sertifikalarda uyarı gösterir. Çoğu durumda platform CA'sının
verdiği bir sertifika daha iyi bir seçimdir.

1. **Kendinden imzalı** düğmesine tıklayın.
2. Penceredeki alanları doldurun ve **Oluştur** düğmesine tıklayın.

*Ekran görüntüsü: Konu, Konu alternatif adları, Geçerlilik ve Kullanım işaretli Kendinden imzalı sertifika oluştur penceresi*

1. **Konu (CN)**: sertifikanın adı. Örnek: `proxus.lyonfoods.local`.
2. **Konu alternatif adları**: istemcilerin merkez sunucuya erişirken kullandığı tüm adlar ve IP adresleri, virgülle
   ayrılmış olarak. Örnek: `proxus.lyonfoods.local, 10.20.0.15`. Konu adı ve `localhost` her zaman eklenir.
3. **Geçerlilik (yıl)**: 1 ile 10 arası. Varsayılan değer 2'dir.
4. **Kullanım**: sertifikanın kullanım amacı. **Platform**, merkez sunucunun kendi kullanımı içindir.

Sertifika 2048 bitlik RSA anahtarıyla oluşturulur ve listede "*konu* (Self-Signed)" adıyla görünür. Bu sertifikayı
daha sonra platform CA'sının verdiği bir sertifikaya çevirmek için sertifikayı seçin ve **Yenile** düğmesine tıklayın.

## Sertifika yetkilinizden aldığınız sertifikayı yükleyin

Şirketinizin sertifika yetkilisinden aldığınız tek bir sertifikayı (örneğin merkez sunucunun HTTPS bağlantısı için)
depoya yükleyin. Merkez sunucunun DNS adının sertifikanın konu alternatif adları arasında olduğundan
emin olun.

1. **Yükle** düğmesine tıklayın.
2. Dosyaları seçin: tek bir `.pfx` ya da `.p12` dosyası veya `.key` dosyasıyla birlikte `.pem`, `.crt` ya da `.cer`
   sertifikası. Adında `ca` geçen dosya, sertifika yetkilisinin zinciri olarak okunur.
3. Sertifika listede görünür. Depoda zaten bulunan bir sertifika "Sertifika zaten var" iletisiyle reddedilir.

Anahtarı olmayan `.pem`, `.crt` ya da `.cer` dosyası yalnızca ortak sertifika olarak içe aktarılır. Bu sertifikayı
güvenilir yapabilir ya da bir veri hedefinde **Güvenilen sunucu sertifikası** olarak seçebilirsiniz, ancak varsayılan
sertifika yapamazsınız.

> **Not:**
Parolayla korunan `.pfx` ya da `.p12` dosyaları **Yükle** ile yüklenemez. Dosyayı parolasız olarak yeniden dışa aktarın ya da sertifikayı ve anahtarı `.pem` ve `.key` dosyaları olarak yükleyin. (**Kurumsal CA kullan** parolalı dosyaları kabul eder.)

## Bir OPC UA sunucu sertifikasına güvenin ya da reddedin

Proxus yalnızca sertifikası güvenilir olan OPC UA sunucularına bağlanır. Güven listesi Sertifika deposunda tutulur ve
tüm Edge Gateway'ler için geçerlidir. Her Edge Gateway listeyi dakikada bir kopyalar. Bu yüzden burada yaptığınız **Güven** ya
da **Reddet** işlemi bir dakika içinde tüm Edge Gateway'lerde geçerli olur.

### Reddedilen bir sunucuyu güvenilir yapın

Edge Gateway, güvenmediği bir OPC UA sunucu sertifikasıyla karşılaştığında bağlantıyı reddeder ve sertifikayı merkez
sunucuya bildirir.

1. **Güvenlik > Sertifika deposu** ekranında **Güven durumu** alanını **Reddedilenler** olarak ayarlayın.
2. Sertifikayı bulun. Sertifikanın adı "OPC UA server *ad* (*adres*)" biçimindedir.
3. Sunucuyu tanıdığınızdan emin olun. Ardından sertifikayı seçin ve **Güven** düğmesine tıklayın.

Bağlantısı reddedilen cihazlar bir sonraki yeniden denemede bağlanır.

Sunucu sertifikası şu yollarla da güvenilir hâle gelir:

- Cihaz bağlantı sihirbazındaki **Güven** adımı, sunucunun sertifikasını depoya tüm Edge Gateway'ler için güvenilir olarak
  kaydeder.
- Cihazdaki **Sunucu sertifikasına güven** seçeneği, sunucunun sertifikasını ilk bağlantıda kabul eder ve depoya
  güvenilir olarak kaydeder. Sertifikayı listede görebilir ve **Reddet** ile güveni geri alabilirsiniz. Bu seçenek,
  depoda reddedilmiş bir sertifikayı yeniden güvenilir yapmaz.

2.0.0'dan önce Edge Gateway'lerde yerel olarak verilen güven kararları artık geçerli değildir. Güvenlik modu **Yok**
olan cihazlar sertifika kullanmaz, bu yüzden bu değişiklikten etkilenmez.

### Cihaz profiline sunucu sertifikası sabitleyin

Bir profili yalnızca belirli bir sunucu sertifikasıyla çalışacak şekilde ayarlamak için sertifikayı depoya yükleyin
ve profilde seçin.

1. Sunucunun sertifika dosyasını alın (genellikle sunucunun kendi sertifika klasöründeki `.der`, `.cer` ya da `.pem`
   dosyası). Gerekirse dosyayı `.pem`, `.crt` ya da `.cer` biçimine dönüştürün.
2. **Yükle** düğmesine tıklayın ve dosyayı seçin. Dosya ortak sertifika olarak içe aktarılır.
3. Sertifikayı seçin ve **Güven** düğmesine tıklayın.
4. Cihaz profilinin OPC UA bağlantı ayarlarında bu sertifikayı güvenilen sunucu sertifikası olarak seçin. Bkz.
   [OPC UA](https://proxus.io/tr/docs/connect/devices/opc-ua).

### Sertifikanın güvenilirliğini kaldırın

Sertifikayı seçin ve **Reddet** düğmesine tıklayın. Reddedilen sertifikaların durumu **Devre dışı** olur ve bu
sertifikalar artık kullanılmaz. Reddedilen sertifikaları listelemek için **Güven durumu** alanını kullanın.

## Sonraki adımlar

- [Kurulumu güvenli hâle getirin](https://proxus.io/tr/docs/operate/security): HTTPS, TLS ve erişim ayarlarını gözden geçirin.
- [Merkez sunucuyu ve depo anahtarını yedekleyin](https://proxus.io/tr/docs/operate/backup-and-restore): sertifikaların geri yüklemeden sonra da okunabilmesini sağlayın.
- [Veri hedefleri](https://proxus.io/tr/docs/connect/outbound-targets): istemci ve sunucu sertifikalarını hedeflerde kullanın.
