Bir Vultr Bulut Sunucusuna pfSense Kurulumu
pfSense, ağlarına geniş bir özellik yelpazesi eklemek isteyen sistem yöneticileri için ideal bir araçtır. Öncelikle açık kaynaklı
Selfoss RSS Reader ücretsiz ve açık kaynak kodlu, kendi kendine barındırılan, web tabanlı çok amaçlı, canlı akış, mashup, haber akışı (RSS / Atom) okuyucu ve evrensel toplayıcıdır. Selfoss RSS Reader, rahat bir JSON API'sı olan OPML içe aktarma özelliğine sahiptir ve açık eklenti sistemi, kendi özel veri bağlayıcılarınızı yazarak varsayılan işlevselliği kolayca genişletmenizi sağlar. Tüm yayınlarınızı, tweet'lerinizi, podcast'lerinizi ve özet akışlarınızı herhangi bir masaüstü veya mobil cihazdan kolayca erişebileceğiniz tek bir merkezi yerde canlı yayınlamak ve toplamak için Selfoss'u kullanabilirsiniz.
Bu yazıda, Apache web sunucusu, PHP 7.1 ve MariaDB veritabanını kullanarak SelfBS RSS Reader 2.17'yi FreeBSD 11 FAMP VPS'ye kuracağız.
Yeni bir sudo
kullanıcı ekleyerek başlayacağız .
İlk olarak sunucunuza şu şekilde giriş yapın root
:
ssh root@YOUR_VULTR_IP_ADDRESS
sudo
Komut Vultr FreeBSD 11 sunucu örneği varsayılan olarak yüklü değildir, bu yüzden ilk kuracaktır sudo
:
pkg install sudo
Şimdi adlı yeni bir kullanıcı user1
(veya tercih ettiğiniz kullanıcı adı) ekleyin:
adduser user1
adduser
Komut bunu yapmak mantıklı ne zaman bu kadar basit çoğu için varsayılan değerleri seçin kullanıcı hesabının birçok ayrıntı için ister. İstendiğinde , gruba eklemek için Invite user1 into any other groups?
girmeniz gerekir .wheel
user1
wheel
Şimdi grubun etkinleştirildiğinden /etc/sudoers
emin olmak için dosyayı kontrol edin sudoers
:
visudo
Bunun gibi bir bölüm arayın:
# %wheel ALL=(ALL) ALL
Bu satır bize wheel
grubun üyesi olan kullanıcıların ayrıcalık sudo
kazanmak için komutu kullanabileceğini söyler root
. Varsayılan olarak yorumlanacaktır, bu yüzden onu açmanız ve ardından dosyayı kaydedip çıkmanız gerekir.
user1
Grup üyeliğini şu groups
komutla doğrulayabiliriz :
groups user1
Eğer user1
üye değildir wheel
grubunda, güncellemek için bu komutu kullanabilirsiniz user1
grup üyeliğini:
pw group mod wheel -m user1
Şimdi su
yeni sudo kullanıcı user1
hesabına geçmek için komutu kullanın :
su - user1
Komut istemi, şimdi user1
hesaba giriş yaptığınızı belirtmek için güncellenir . Bunu şu whoami
komutla doğrulayabilirsiniz :
whoami
Şimdi , yeni oluşturduğunuz kök olmayan sudo kullanıcı hesabıyla sshd
giriş yapabilmeniz için hizmeti yeniden başlatın ssh
:
sudo /etc/rc.d/sshd restart
Hesaptan çık user1
:
exit
Hesaptan çıkın root
( ssh
oturumunuzun bağlantısını keser ):
exit
Artık ssh
kök olmayan sudo kullanıcı user1
hesabını kullanarak yerel ana makinenizden sunucu örneğine girebilirsiniz :
ssh user1@YOUR_VULTR_IP_ADDRESS
Sudo'yu her seferinde bir parola girmek zorunda kalmadan yürütmek istiyorsanız, /etc/sudoers
dosyayı kullanarak tekrar açın visudo
:
sudo visudo
wheel
Grubun bölümünü aşağıdaki gibi görünecek şekilde düzenleyin :
%wheel ALL=(ALL) NOPASSWD: ALL
Lütfen dikkat: Sudo kullanıcısı için parola gereksiniminin devre dışı bırakılması önerilen bir uygulama değildir, ancak özellikle uzun sistem yönetim oturumlarında sunucu yapılandırmasını çok daha rahat ve daha az sinir bozucu hale getirebileceği için buraya dahil edilmiştir. Güvenlik sonuçlarıyla ilgili endişeleriniz varsa, yönetim görevlerinizi tamamladıktan sonra yapılandırma değişikliğini her zaman orijinal haline geri döndürebilirsiniz.
root
Kullanıcı hesabından kullanıcı hesabına her giriş yapmak istediğinizde sudo
, aşağıdaki komutlardan birini kullanabilirsiniz:
sudo -i
sudo su -
Hesaptan çıkıp istediğiniz zaman kullanıcı hesabınıza root
geri dönebilirsiniz sudo
:
exit
FreeBSD sunucusu örneğine herhangi bir paket kurmadan önce sistemi güncelleyeceğiz.
Kök olmayan bir sudo kullanıcısı kullanarak sunucuda oturum açtığınızdan emin olun ve aşağıdaki komutları çalıştırın:
sudo freebsd-update fetch
sudo freebsd-update install
sudo pkg update
sudo pkg upgrade
Apache web sunucusunu kurun:
sudo pkg install apache24
y
İstendiğinde girin .
Şimdi sysrc
, Apache hizmetinin önyükleme sırasında otomatik olarak çalışmasını sağlamak için komutu kullanın:
sudo sysrc apache24_enable=yes
sysrc
Komut günceller /etc/rc.conf
el yapılandırma güncelleştirmesini doğrulamak istiyorsanız basitçe açabilmeniz için yapılandırma dosyasını /etc/rc.conf
favori terminali editörü ile dosyayı:
vi /etc/rc.conf
Şimdi Apache hizmetini başlatın:
sudo service apache24 start
Tarayıcınızdaki sunucu örneğinin IP adresini veya etki alanını ziyaret ederek apache'nin çalışıp çalışmadığını hızlı bir şekilde kontrol edebilirsiniz:
http://YOUR_VULTR_IP_ADDRESS/
Metni gösteren varsayılan FreeBSD Apache sayfasını göreceksiniz:
It works!
DocumentRoot
Yönergenin doğru dizini gösterdiğinden emin olmak için Apache varsayılan yapılandırma dosyanızı kontrol edin :
sudo vi /usr/local/etc/apache24/httpd.conf
DocumentRoot
Yapılandırma seçeneği aşağıdaki gibi görünecektir:
DocumentRoot "/usr/local/www/apache24/data"
Şimdi mod_rewrite
Apache modülünü etkinleştirmemiz gerekiyor . Bunu, terim için varsayılan Apache yapılandırma dosyasında arayarak yapabiliriz mod_rewrite
.
Varsayılan olarak mod_rewrite
Apache modülü yorumlanır (yani devre dışı bırakılır). Temiz bir Vultr FreeBSD 11 örneğindeki yapılandırma satırı şöyle görünür:
#LoadModule rewrite_module libexec/apache24/mod_rewrite.so
Çizgiyi açmak için karma sembolünü kaldırın ve modülü yükleyin. Bu, elbette, diğer gerekli Apache modülleri için de geçerlidir:
LoadModule rewrite_module libexec/apache24/mod_rewrite.so
Ayrıca mod_authz_code
ve mod_headers
modüllerini de etkinleştirmemiz gerekiyor , bu yüzden her ikisinin de önerilmediklerinden emin olun:
LoadModule authz_core_module libexec/apache24/mod_authz_core.so
LoadModule headers_module libexec/apache24/mod_headers.so
Selfoss RSS Reader ile düzgün çalışması için Directory
Apache yönergesini aynı yapılandırma dosyasında düzenlememiz gerekiyor mod_rewrite
.
İle başlayan yapılandırma dosyasının bölümünü bulun <Directory "/usr/local/www/apache24/data">
ve değişim AllowOverride none
için AllowOverride All
. Sonuç (tüm yorumlar kaldırıldığında) şöyle görünecektir:
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Şimdi Apache yapılandırma dosyasını kaydedip çıkın.
Bu eğitimin sonunda Apache'yi yeniden başlatacağız, ancak kurulum ve yapılandırma sırasında Apache'yi düzenli olarak yeniden başlatmak kesinlikle iyi bir alışkanlık, bu yüzden şimdi yapalım:
sudo service apache24 restart
Artık PHP 7.1'i Selfoss RSS Reader için gerekli olan tüm PHP modüllerini kurabiliriz:
sudo pkg install php71 mod_php71 php71-gd php71-mbstring php71-mysqli php71-xml php71-curl php71-ctype php71-tokenizer php71-simplexml php71-dom php71-session php71-iconv php71-hash php71-json php71-fileinfo php71-pdo php71-pdo_mysql php71-zlib php71-openssl php71-zip php71-phar
FreeBSD 11 bize bir geliştirme php.ini
veya üretim kullanma seçeneği sunar php.ini
. Selfoss'u herkese açık bir web sunucusuna kuracağımız için üretim sürümünü kullanacağız. İlk olarak, yedekleyin php.ini-production
:
sudo cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini-production.backup
Sonra yumuşak-link php.ini-production
için php.ini
:
sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini
Apache'yi aslında PHP kullanacak şekilde yapılandırmamız gerekiyor, bu yüzden php.conf
Apache Includes
dizininde yeni bir dosya oluşturalım :
sudo vi /usr/local/etc/apache24/Includes/php.conf
Yeni oluşturulan dosyaya aşağıdaki metni girin:
<IfModule dir_module>
DirectoryIndex index.php index.html
<FilesMatch "\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
</IfModule>
Dosyayı kaydedip çıkın.
Şimdi yapılandırma değişikliklerini yeniden yükleyebilmesi için Apache'yi yeniden başlatalım:
sudo service apache24 restart
FreeBSD 11, MySQL sunucusu için geliştirilmiş, tamamen açık kaynaklı, topluluk tarafından geliştirilen, bırakılan bir yedek olan MariaDB veritabanı sunucusunu kullanmaktadır.
MariaDB veritabanı sunucusunun en son sürümünü yükleyin:
sudo pkg install mariadb102-server mariadb102-client
MariaDB sunucusunun önyükleme zamanında otomatik olarak çalışmasını başlatın ve etkinleştirin:
sudo sysrc mysql_enable="yes"
sudo service mysql-server start
MariaDB sunucu kurulumunuzu güvenli hale getirin:
sudo mysql_secure_installation
Bir MariaDB / MySQL root
kullanıcısı yaratmanız istendiğinde , "Y" yi (evet için) seçin ve güvenli bir root
şifre girin. Varsayılan öneriler en güvenli seçenekler olduğundan diğer evet / hayır sorularının tümüne "Y" yanıtını vermeniz yeterlidir.
root
Aşağıdaki komutu çalıştırarak MariaDB kabuğuna MariaDB kullanıcısı olarak oturum açın:
sudo mysql -u root -p
MariaDB komut istemine erişmek için root
istendiğinde MariaDB şifresini girmeniz yeterlidir .
Selfoss RSS Reader için bir MariaDB veritabanı ve veritabanı kullanıcısı oluşturmak için aşağıdaki sorguları çalıştırın:
CREATE DATABASE selfoss_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'selfoss_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON selfoss_db.* TO 'selfoss_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
İsterseniz, veritabanı adını selfoss_db
ve kullanıcı adını istediğiniz selfoss_user
gibi bir şeyle değiştirebilirsiniz . Ayrıca, "UltraSecurePassword" ü gerçekten güvenli bir parola ile değiştirdiğinizden emin olun.
Geçerli çalışma dizininizi varsayılan web dizinine değiştirin:
cd /usr/local/www/apache24/data
Geçerli çalışma dizini şimdi olacak: /usr/local/www/apache24/data
. Bunu pwd
(çalışma dizini yazdır) komutuyla kontrol edebilirsiniz :
pwd
Şimdi wget
Selfoss RSS Reader kurulum paketini indirmek için kullanın :
sudo wget --content-disposition https://github.com/SSilence/selfoss/archive/2.17.zip
Lütfen dikkat: Selfoss RSS Reader indirme sayfasını ziyaret ederek en son sürümü mutlaka kontrol etmelisiniz .
Dosyayı başarıyla indirip indirmediğinizi kontrol etmek için geçerli dizini listeleyin:
ls -la
Kaldır index.html
:
sudo rm index.html
Şimdi zip arşivini açın:
sudo unzip selfoss-2.17.zip
Tüm kurulum dosyalarını web kök dizinine taşıyın:
sudo mv -v selfoss-2.17/* selfoss-2.17/.* /usr/local/www/apache24/data 2>/dev/null
İzin sorunlarından kaçınmak için web dosyalarının sahipliğini değiştirin:
sudo chown -R www:www * ./
Apache'yi tekrar başlatın:
sudo service apache24 restart
Selfoss RSS Reader, composer
bazı eklentileri indirmek için kullanmamızı gerektirir, bu yüzden yükleyelim composer
. Ne yazık ki, FreeBSD paket depolarındaki bestecinin önceden oluşturulmuş ikili sürümünün sürümü PHP 7.1 ile uyumlu değildir. Bunun yerine yükleme composer
ile pkg
komuta, bunun yerine kaynaktan derlemeyi yapacaktır.
İlk olarak, FreeBSD 11 sistemini PHP yazılımını varsayılan 5.6 yerine PHP 7.1 kullanarak derleyecek şekilde yapılandıralım.
Yeni bir dosya oluşturun /etc/
denilen dizine make.conf
:
sudo vi /etc/make.conf
Dosyaya aşağıdaki metni girin:
DEFAULT_VERSIONS+= php=7.1
Şimdi dosyayı kaydedin ve kapatın.
Sonra FreeBSD bağlantı noktaları koleksiyonunu aşağıdaki portsnap
komutu kullanarak indirmemiz gerekiyor :
sudo portsnap fetch extract update
Bir kez portsnap
komut tamamlanıncaya, içine değiştirmek php-composer
kaynak kod dizinine:
cd /usr/ports/devel/php-composer/
Şimdi php-composer
şu make
komutu kullanarak derlemeyi ve kurulumu başlatın :
sudo make install clean BATCH=yes
Derleme tamamlandığında webroot dizinine geçin:
cd /usr/local/www/apache24/data
Composer'ı www
kullanıcıyı kullanarak çalıştırın :
sudo -u www composer install
composer
Önbelleğe yazamama konusunda bazı uyarı mesajları göreceksiniz , ancak her şey hala iyi yükleneceğinden endişelenmeyin.
Şimdi son adıma geçmeye hazırız.
Biz Selfoss RSS Okuyucu yapılandırma dosyasını güncelleştirmek için ilk ihtiyaç config.ini
kadar emin sen Webroot'un dizinde hala ve kopyalama doğru veritabanı ayarları ile yapmak defaults.ini
için config.ini
:
sudo cp -iv defaults.ini config.ini
Ardından, config.ini
yapılandırma dosyasını açın ve aşağıdaki veritabanı değerlerini ekleyin:
[globals]
db_type=mysql
db_host=localhost
db_database=selfoss_db
db_username=selfoss_user
db_password=UltraSecurePassword
db_port=3306
Şimdi bir şifre karması eklememiz gerekiyor config.ini
, ancak önce onu oluşturmamız gerekiyor, bu yüzden tarayıcınızda aşağıdaki URL'yi ziyaret edin:
http://YOUR_VULTR_IP_ADDRESS/password
Ardından Password
alana istediğiniz şifreyi girin ve tıklayın Generate
.
Elde edilen karma değerini config.ini
dosyadaki şifre seçeneğine kopyalayın, böylece şifre bölümü şimdi şuna benzer:
username=admin
password=b729a37c34ff9648c33d67de3b289b58b7486dd71236343a6c2c275c2cc0477bd1d254eb92248bfa753169547d4bd2e81c2c9e460ba5bba822af1e87722dd12a
salt=<long string of random chracters>
Not: Şifre karmanız açıkça yukarıda gösterilen karmadan farklı olacaktır ve farklı bir kullanıcı adı seçebilirsiniz.
Tüm config.ini
yapılandırma dosyanızın aşağıdakine benzer olması için diğer düzenlenmemiş seçeneklerin tümünü dosyadan kaldırın:
[globals]
db_type=mysql
db_host=localhost
db_database=db1
db_username=u1
db_password=usecpass1
db_port=3306
username=admin
password=b729a37c34ff9648c33d67de3b289b58b7486dd71236343a6c2c275c2cc0477bd1d254eb92248bfa753169547d4bd2e81c2c9e460ba5bba822af1e87722dd12a
salt=<long string of random chracters>
Not: Seçeneklerden herhangi birini değiştirmek defaults.ini
isterseniz, bunları yukarıdaki seçenekler listesine ekleyebilirsiniz.
Yapılandırma dosyasını düzenlemeyi bitirdiğinizde dosyayı kaydedip çıkabilirsiniz.
Artık ana sayfayı ziyaret edip kullanıcı adınızı ve şifrenizi girerek Selfoss RSS Reader'a giriş yapabilirsiniz:
http://YOUR_VULTR_IP_ADDRESS/
Okuyucunun feed'lerinizi otomatik olarak güncellemesini istiyorsanız (ve neredeyse kesinlikle yaparsanız) crontab'ınızı düzenlemeniz gerekir:
sudo crontab -e
Özet akışlarınızı saatlik olarak yenilemek için aşağıdaki satırı ekleyin:
0 * * * * www cd /usr/local/www/apache24/data && php cliupdate.php
Vultr DNS ayarlarınızı henüz yapılandırmadıysanız, Vultr DNS kontrol panelini kullanarak bunu yapabilirsiniz.
Çoğu modern tarayıcı, sitelerin SSL etkin olmadığı ve SSL sertifikalarının artık ücretsiz olarak kullanılabileceği durumlarda uyarı vereceği için sitenizi SSL kullanacak şekilde yapılandırmanız da önerilir.
Her durumda, artık yayınlarınızı eklemeye ve isterseniz okuyucunuzu daha da özelleştirmeye başlayabilirsiniz.
pfSense, ağlarına geniş bir özellik yelpazesi eklemek isteyen sistem yöneticileri için ideal bir araçtır. Öncelikle açık kaynaklı
Farklı Bir Sistem mi Kullanıyorsunuz? LimeSurvey PHP ile yazılmış açık kaynaklı bir anket yazılımıdır. LimeSurvey kaynak kodu GitHubda barındırılıyor. Bu kılavuz size
Gereksinimler UNIX hakkında temel bilgiler. Nginx yüklü FreeBSD x64. Araçları Yükleme FreeBSD ile birlikte gönderilmeyen birkaç programa ihtiyacınız olacaktır. Ru
Farklı Bir Sistem mi Kullanıyorsunuz? Automad, PHPde yazılmış açık kaynaklı bir dosya tabanlı içerik yönetim sistemidir (CMS) ve şablon motorudur. Automad kaynak kodu i
Farklı Bir Sistem mi Kullanıyorsunuz? X-Cart, tonlarca özellik ve entegrasyona sahip son derece esnek bir açık kaynaklı e-ticaret platformudur. X-Cart kaynak kodu aceleci
Giriş WordPress, internet üzerindeki baskın içerik yönetim sistemidir. Bloglardan dinamik içeriğe sahip karmaşık web sitelerine kadar her şeyi güçlendirir
Murmur, Mumble sesli iletişim protokolü için resmi sunucu yazılımıdır. Bu resmi uygulama istikrarlı ve etkilidir. Bu kılavuz
Linuxtaki bir LEMP yığını ile karşılaştırılabilir bir FEMP yığını, bir FreeBSyi etkinleştirmek için genellikle birlikte yüklenen bir açık kaynaklı yazılım koleksiyonudur
Bu eğitici, FreeBSD sunucunuzu OpenBSD PF güvenlik duvarını kullanarak nasıl koruyacağınızı gösterecektir. Dağıtılmış temiz bir FreeBSD kurulumunuz olduğunu varsayacağız b
Farklı Bir Sistem mi Kullanıyorsunuz? Cachet PHP ile yazılmış açık kaynaklı bir durum sayfası sistemidir. Cachet için kaynak kodu GitHubda barındırılıyor. Bu kılavuzda,
Farklı Bir Sistem mi Kullanıyorsunuz? WonderCMS, PHPde yazılmış açık kaynaklı, hızlı ve küçük bir düz dosya CMSdir. WonderCMS kaynak kodu Githubda barındırılmaktadır. Bu kılavuz
Farklı Bir Sistem mi Kullanıyorsunuz? TLS 1.3, 2018de RFC 8446da önerilen bir standart olarak yayınlanan Taşıma Katmanı Güvenliği (TLS) protokolünün bir sürümüdür
Vernik, bir web sunucusundan içerik depolayan açık kaynaklı bir önbellek sunucusudur. Apache veya Nginx gibi bir web sunucusunun önüne kurulur. Cachin
Farklı Bir Sistem mi Kullanıyorsunuz? Dolibarr, işletmeler için açık kaynaklı bir kurumsal kaynak planlaması (ERP) ve müşteri ilişkileri yönetimi (CRM). Dolibarr
Farklı Bir Sistem mi Kullanıyorsunuz? ProcessWire CMS 3.0 basit, esnek ve güçlü, ücretsiz ve açık kaynaklı bir İçerik Yönetim Sistemidir (CMS). ProcessWire CMS 3.
Farklı Bir Sistem mi Kullanıyorsunuz? Matomo (eski adıyla Piwik), Google Analyticse açık bir alternatif olan açık kaynaklı bir analiz platformudur. Matomo kaynağı o barındırılıyor o
Farklı Bir Sistem mi Kullanıyorsunuz? TLS 1.3, 2018de RFC 8446da önerilen bir standart olarak yayınlanan Taşıma Katmanı Güvenliği (TLS) protokolünün bir sürümüdür
Giriş Bu eğitici, OpenSMTPD, Dovecot, Rspamd ve RainLoop kullanarak OpenBSD üzerinde çalışan tam özellikli bir e-posta sunucusunu gösterir. OpenSMTPD th
Farklı Bir Sistem mi Kullanıyorsunuz? Mailtrain, Node.js ve MySQL / MariaDB üzerine kurulmuş açık kaynaklı, kendi kendine barındırılan bir bülten uygulamasıdır. Mailtrains kaynağı GitHubda. Thi
Ghost, WordPresse rakip olan en yeni ve en büyük başlangıç. Tema geliştirme hızlı ve kolaydır, çünkü Ghost geliştiricileri
CentOS 7 üzerinde LibreNMS kullanarak ağ cihazlarınızı etkili bir şekilde izleyin. Ağ izleme için gerekli adımları ve yapılandırmaları öğrenin.
Counter-Strike: Global Offensive sunucusu kurmak için gerekli adımlar. Gerekli araçlar ve yükleme süreci hakkında bilgi.
OpenNMS, çok sayıda cihazı izlemek ve yönetmek için kullanılabilen bir açık kaynak ağ yönetim platformudur. Ubuntu 16.04 LTS üzerinde OpenNMS kurulumu için tüm adımları keşfedin.
Farklı Bir Sistem mi Kullanıyorsunuz? LibreNMS tam özellikli bir açık kaynak ağ izleme sistemidir.
26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.
Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.
Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.
Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.
CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?