OpenCTI nedir?
OpenCTI, istihbarat datalarını topladığımız ve bu dataları depolayıp yönetebildiğimiz bir tehdit istihbaratı platformudur. Bu yazılım;Grakn, GraphQL, Elastic, RabbitMQ, Redis and React gibi modern teknolojilerin üstüne kurulmuştur.Analistler için göstergeler ve tehdit aktörleri arasında bağlantı kurmamızı sağlar.Kurulumu docker ile daha kolay olduğu için onu tercih ettim.Kurulum için birbiriyle haberleşebilen iki adet linux makinesi ve bunlara kurulmuş dockerlar gerekmetedir. Sanallaştırma teknolojisi ile 2 tane ubuntu kurdum ve bunları nat ağına aldım.Ardından izlememiz gereken adımlar şu şekikde olmalıdır:
-Docker yükleme
-Docker swarm kurulumu
-Yönetim içn portainer kurulumu
-Opencti stack oluşturma
Apt-get update repositörleri güncelledik
Ön Koşulları Yükleme
*apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
Gpg key ekledik
*curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add –
Anahtar izini kontrol etmeliyiz.
*sudo apt-key fingerprint 0EBFCD88
Stabil repositör eklemeliyiz.
*sudo add-apt-repository \
“deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable”
Docker Kurma ve Oluşturma
*sudo apt-get update
*sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose
Buraya kadar yapılan işlemleri worker node olarak kabul ettiğimiz 2. makinede de yapıyoruz.1. makinemiz ise kurduğumuz docker swarm da manager node olacaktır.
Docker Swarm Oluşturma
*docker swarm init –advertise-addr <MANAGER-IP>
Bu komuttan bize bir token çıktısı gelecek. Bunu worker node da docker bağlantısını kurmak için kullanacağız.
*docker swarm join –token <LONG-TOKEN-ID> <IP-ADDRESS-OF-MANAGER:PORT>
Container yönetebilmek için portainer uygulamasını kuracağız.
*mkdir -p /opt/portainer && cd /opt/portainer
*curl -L https://downloads.portainer.io/portainer-agent-stack.yml -o portainer-agent-stack.yml
Portainer uygulamasını ayağa kaldırmadan önce çakışma olmaması adına portları değiştirmeliyiz. nano ile portainer-agent-stack.yml dosyasını açıp portları “19000:9000“ ve “18:000:8000” şeklinde güncelleriz.
Ana makinemizin browserında manager ip:19000 girerek portainer arayüzüne ulaşırız.
Şimdi portainer ı ayağa kaldırabiliriz.
*docker stack deploy –compose-file=portainer-agent-stack.yml portainer
Ana makinemizin browserında manager ip:19000 girerek portainer arayüzüne ulaşırız.
Arayüze girdikten sonra opencti stack oluşturmalıyız.
Editör ile https://github.com/OpenCTI-Platform/docker/blob/master/docker-compose.yml
içerikleri ekleyebiliriz.
docker-compose.yml ${VARIABLE} Ardından çevresel değişkenleri oluşturmalıyız. https://github.com/OpenCTI-Platform/docker/blob/master/.env.sample buradaki bilgileri txt dosyasında düzeltip txt uzantısını env haline getirdikten sonra load kısmından bu dosyayı yüklüyoruz.
Yeni Uudi değerlerini https://www.uuidgenerator.net/version4 bu adresten düzenleyebiliriz.
Son olarak manager makinemizde 8080 portunu açıyoruz ve arayüzden Deploy the Stack tıklayıp çalıştırmaya başlarız.Browserdan login sayfasına erişmek için biraz beklememiz gerekebilir.Artık girişimizi envoirment dosyasında yazdığımız kullanıcı ile yapabiliriz.