26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
Internet Relay Chat (IRC), internetin ilk günlerinden beri var olan bir şeydir. Bu kılavuzda, ek IRC hizmetleri için Atheme ile InspIRCd ile bir IRC sunucusunun nasıl kurulacağını göstereceğim. InspIRCd, sıfırdan yazılan birkaç IRC sunucusundan ve gelişmiş bir modül sistemi kullanılarak ayarlanabilir sayıda özellik sağlayan birkaç IRC sunucusundan biridir.
InspIRCd herhangi bir örnek boyutu ile çalışmalıdır. Minimum sistem gereksinimleri 700MHz CPU ve 300MB RAM'dir.
Bir sudo kullanıcısı olarak oturum açarken, sistemi aşağıdaki gibi en son kararlı duruma güncelleyebilirsiniz:
apt-get update && apt-get upgrade
Önce VPS'yi biraz sertleştirelim. ufw
Birkaç kuralı etkinleştirip ekleyeceğiz. Bağlantı noktalarını yapılandırmaya başlayalım:
ufw allow 22/tcp
ufw allow 6667/tcp
ufw enable
Güvenlik duvarı, iletişim kutusundan değişiklikleri kabul etmesini ister. Sadece Yevet için basın .
Command may disrupt existing ssh connections. Proceed with operation (y|n)?
Sonra InspIRCd'yi kurabiliriz, Ubuntu 16.04 için bu paket ana depodan temin edilebilir.
apt-get install inspircd
Yükleme tamamlandıktan sonra hizmeti yapılandırmaya başlayabiliriz. Ana yapılandırma /etc/inspircd/inspircd.conf
dosyada bulunabilir ve bir XML dosyası düzenine sahiptir.
nano /etc/inspircd/inspircd.conf
İlk olarak server
etiketi arayın . Bu etiket, sunucunuzun / ağınızın ayrıntılarını girdiğiniz yerdir, bu ayarların çoğu kullanıcılarınız tarafından görülebilir.
name
: Sunucunuzun ana bilgisayar adı. Çözülmesi gerekmez, ancak doğru sözdizimi olması gerekir (örneğin:) sub.example.net
.description
: Sunucu açıklaması. id
: Bu sunucu için kullanılacak SID. SID çakışması olmadığı sürece bu önerilmemelidir. Bu üç karakter uzunluğunda olmalıdır. İlk karakter bir rakam [0-9], kalan iki karakter harf [AZ] veya rakam olabilir.network
: İstemcilere bağlanıldığında verilen ağ adı. Ağdaki tüm sunucularda aynı olmalı ve boşluk içermemelidir.Rehberimizde aşağıdakileri kullanacağız:
<server name="irc.example.net"
description="My EXAMPLE.NET server"
id="5AA"
network="ExampleNET">
Orijinal etiketi yukarıdaki etiketle değiştirin.
Ardından, admin
etiketi arayın . Bu ayarlar sunucunuzun yönetim detaylarıdır. /ADMIN
Komutu yazdığınızda gösterilirler .
name
: Gerçek adnick
: Takma ad (tercihen ağda kullandıklarınız).email
: e. Geçerli olması gerekmez, ancak bu adres sorunlarınız olması durumunda kullanıcılarınızın sizinle iletişim kurması gereken adres olacaktır.Yöneticiyi kullanalım Xenial
:
<admin name="Xenial Xerius"
nick="xenial"
email="[email protected]">
Şimdi bind address
. Bu etiket hizmeti açmak için kullanılır. Varsayılan olarak localhost IP'sini ( 127.0.0.1
) görürsünüz . Bu, hizmete dış dünya tarafından ulaşılamayacağı anlamına gelir. Hiç adres kullanmadan hizmetimizi açalım. Bu, hizmetin makinenin sahip olduğu herhangi bir ethernet arabirimine bağlanmasına neden olur:
<bind address="" port="6667" type="clients">
Bir sonraki etiket etiket olacaktır power
. Bu etiket iki şifre tanımlar.
diepass
: Bir sunucuyu kapatmak istedikleri takdirde operatörlerin kullanacağı parola.restartpass
: Bir sunucuyu yeniden başlatmaları gerekiyorsa operatörlerin kullanması için parola.Bu varsayılan şifreleri değiştirmek en iyisidir:
<power diepass="die123" restartpass="restart123" pause="2">
Değiştireceğimiz son ayarlar oper
ayarlar. Bunlar operatör girişlerini tanımlar.
name
: işlem yapmak için kullanılan operatör girişi (Örnek:) /oper name password
.password
: tüysüz ve düz metinhost
: Hangi ana bilgisayar adlarının / IP'lerinin çalışmasına izin verilir. Birden çok seçenek boşluklarla ayrılabilir ve CIDR'lere izin verilir. Bu bölüm için *
veya öğesini kullanabilirsiniz @
.type
: Bu ne tür bir iştir. Blok yukarıdaki üç sınıfları zaten tanımlanmış olmalıdır: NetAdmin
, GlobalOp
ve Helper
. NetAdmin
Kullanacağımız biridir.oper
Aşağıdaki içeriği kullanarak etiketi değiştirin . Örneğimiz @
için ana bilgisayar için " " kullanacağımızı unutmayın . Bir üretim ortamında, bunun kullanılması arzu edilmez:
<oper name="xenial"
password="mypassword"
host="*@*"
type="NetAdmin">
Hizmeti yeniden başlatmadan önce motd
ve rules
dosyalarını düzenleyin :
nano /etc/inspircd/inspircd.motd
Bunu kendinizle değiştirin, örneğin:
This is the motd of example.net. Here you can list planned outages or information your users need to know about this IRC server.
Son olarak kural dosyalarını düzenleyin.
nano /etc/inspircd/inspircd.rules
Kendi kurallarınızı ekleyin, örneğin:
The first rule of Fight Club is: You do not talk about Fight Club. The second rule of Fight Club is: You DO NOT TALK ABOUT FIGHT CLUB!
Artık her şey ayarlandı, IRC hizmetini yeniden başlatın:
service inspircd restart
Her şeyin çalıştığını doğrulamak için netstat
aracı sorgulayın :
netstat -tulpn | grep -i inspircd
inspircd
Port üzerinden dinleyerek programı listelemelidir 6666
:
tcp6 0 0 :::6667 :::* LISTEN 31313/inspircd
udp 0 0 0.0.0.0:39335 0.0.0.0:* 31313/inspircd
Sunucuyu test etmek için bir terminal IRC istemcisi kurabiliriz. Windows'ta mIRC gibi bir program kullanabilirsiniz. Örneğimizde weechat kullanacağız. Bu, terminal oturumunda kullanılabilen metin tabanlı bir IRC istemcisidir.
Weechat uygulamasını depolardan yükleyin:
apt-get install weechat
Bu uygulama yüklendikten sonra, şu IRC istemcisini çalıştırın:
weechat
Sunduğumuz tüm komutları görüntülemek için yardım komutunu isteyebilirsiniz:
/help
Weechat'tan çıkmak için aşağıdaki komutu yazabilirsiniz:
/quit
Yerel sunucumuzu weechat'taki bir bağlantıya ekleyin:
/server add local localhost
Şimdi 'local' adlı bağlantı profiline bağlanabiliriz:
/connect local
Terminal penceresinde motd ve kurallarımızın açıldığını göreceksiniz.
Kendinizi bir operatöre tanıtmak için aşağıdakileri yazın:
/oper xenial mypassword
Bu bize başarı hakkında bir onay gösterecektir:
22:40:34 local -- | User mode [+o] by irc.example.net
22:40:34 local -- | You are now a NetAdmin
IRC sunucumuz için bu kadar.
Atheme, yüksek ölçeklenebilirlik gereksinimleri olan büyük IRC ağları için tasarlanmış IRC ağları için bir dizi hizmettir. IRC ağınıza NickServ (Takma Ad Kaydı) gibi ek hizmetler ekler.
Atheme, Ubuntu deposunda bulunabilir:
apt-get install atheme-services
İkili dosyalar yüklendikten sonra, örnek yapılandırma dosyasını ayıklayın ve atheme
klasöre kopyalayın:
gunzip /usr/share/doc/atheme-services/examples/atheme.conf.example.gz
cp /usr/share/doc/atheme-services/examples/atheme.conf.example /etc/atheme/atheme.conf
Ardından, bu yapılandırma dosyasını düzenleyin:
nano /etc/atheme/atheme.conf
İlk önce loadmodule
protokol komutunu arayın . Bu şu şekilde tanımlanmalıdır:
loadmodule "modules/protocol/charybdis";
Aşağıdaki charybdis
protokolle değiştirin inspircd
:
loadmodule "modules/protocol/inspircd12";
Hizmet için bir sonraki arama name
:
name = "services.int";
services.int
IRC sunucunuzun etki alanı adıyla veya IP adresiyle eşleşecek şekilde değiştirin :
name = "services.irc.example.net";
Bu yapıldıktan sonra sayısal olarak arama yapın:
numeric = "00A";
Şimdi bunu daha önce kullanılan sunucu etiketinde kullanılan rakamdan farklı bir değere değiştirin.
numeric = "77C";
Bu yapıldıktan sonra, ağ adını yapılandıralım. Aramak netname
:
netname = "misconfigured network";
Bu değeri sunucu etiketindeki ağ parametresiyle değiştirin.
netname = "ExampleNET";
Şunun değerini değiştirin hidehostsuffix
:
hidehostsuffix = "users.misconfigured";
Şunları kaldırın .misconfigured
:
hidehostsuffix = "users";
Ardından yönetici adını daha önce kullandığımız adla değiştirin:
adminname = "xenial";
İle daha adminemail
önce kullanılan ilişkili e-postayı eşleştirin:
adminemail = "[email protected]";
Bu yapıldığına göre, hizmetlerimiz için bir yukarı bağlantı oluşturmamız gerekiyor. İki uplink
kod bloğunu bulun ve hepsini yorumlayın. Komuttan /*
önce uplink{
ve */
kapanış ayracı sonuna ekleyin .
Aşağıdaki gibi görünecektir:
/* this is an example for using an IPv6 address as an uplink */
/*
uplink "irc6.example.net" {
host = "::1";
password = "linkage";
port = 6667;
};
*/
Ardından, kendi uplink'imizi ekleyin. Bu yukarı bağlantı yalnızca localhost'umuzun IP'sinde ve bağlantı noktasında çalışır 7001
. Süper gizli bir şifre belirtin (daha sonra kullanacağız):
uplink "services.irc.example.net" {
host = "127.0.0.1";
// password
// If you want to have same send_password and accept_password, you
// can specify both using 'password' instead of individually.
password = "SuperSecret123456";
port = 7001;
};
Son olarak servis tanımlarımızı arayın. nickserv
Önce blokla başlayın .
Nickserv bloğunda host
etiketi arayın ve şu şekilde değiştirin ExampleNet/services/NickServ
:
nickserv {
...<<truncated>>...
/* (*)host
* The hostname we want NickServ to have.
*/
host = "ExampleNet/services/NickServ";
/* (*)real
* The realname (gecos) information we want NickServ to have.
*/
real = "Nickname Services";
...<<truncated>>...
Değiştir hostname tag
de diğer tüm hizmetleri için:
nickserv: ExampleNet/services/NickServ
chanserv: ExampleNet/services/ChanServ
global: ExampleNet/services/Global
infoserv: ExampleNet/services/InfoServ
operserv: ExampleNet/services/OperServ
saslserv: ExampleNet/services/SaslServ
memoserv: ExampleNet/services/MemoServ
gameserv: ExampleNet/services/GameServ
botserv: ExampleNet/services/BotServ
groupserv: ExampleNet/services/GroupServ
hostserv: ExampleNet/services/HostServ
helpserv: ExampleNet/services/HelpServ
alis: ExampleNet/services/ALIS
Bu yapıldıktan sonra, yapılandırma dosyasını kaydedin ve çıkın.
Hepsini test etmek için atheme-services
ikili dosyayı çalıştırın :
atheme-services
Bu size tam olarak çalışıp çalışmadığını söylemelidir. Aşağıda gösterildiği gibi çıktı almıyorsanız, geri dönün ve yapılandırma dosyasında herhangi bir hata olup olmadığını kontrol edin:
[19/02/2018 23:06:24] db-open-read: database '/var/lib/atheme/services.db' does not yet exist; a new one will be created.
[19/02/2018 23:06:24] pid 1929
[19/02/2018 23:06:24] running in background mode from /
Şimdi hizmetler dosyasını düzenleyerek hizmeti etkinleştirin:
nano /etc/default/atheme-services
ENABLED
Değeri değiştirin :
DAEMON_OPTS=""
ENABLED=1
Şimdi hizmeti başlatabiliriz:
service atheme-services restart
Durumunu kontrol edin:
service atheme-services status
Bu, benzer sonuçlar döndürür:
● atheme-services.service - LSB: Atheme-services daemon init.d script
Loaded: loaded (/etc/init.d/atheme-services; bad; vendor preset: enabled)
Active: active (running) since Wed 2018-02-19 23:45:05 UTC; 8s ago
Docs: man:systemd-sysv-generator(8)
Feb 19 23:45:05 vultr.guest atheme-services[2810]: Starting Atheme IRC Services: atheme-service
Feb 19 23:45:05 vultr.guest atheme-services[2810]: [19/02/2018 23:45:05] atheme 6.0.11 is start
Feb 19 23:45:05 vultr.guest atheme-services[2810]: [19/02/2018 23:45:05] Module operserv/sgline
Feb 19 23:45:05 vultr.guest atheme-services[2810]: [19/02/2018 23:45:05] module_load(): module
Feb 19 23:45:05 vultr.guest atheme-services[2810]: [19/02/2018 23:45:05] /etc/atheme/atheme.con
Feb 19 23:45:05 vultr.guest atheme-services[2810]: [19/02/2018 23:45:05] db-open-read: database
Feb 19 23:45:05 vultr.guest atheme-services[2810]: [19/02/2018 23:45:05] pid 2824
Feb 19 23:45:05 vultr.guest atheme-services[2810]: [19/02/2018 23:45:05] running in background
Feb 19 23:45:05 vultr.guest atheme-services[2810]: .
Feb 19 23:45:05 vultr.guest systemd[1]: Started LSB: Atheme-services daemon init.d script.
Tamamlanmadan önce, Atheme hizmetlerimizi InspIRCd'ye eklememiz gerekiyor:
nano /etc/inspircd/inspircd.conf
Dosyanın sonuna şu satırları ekleyin:
<bind address="127.0.0.1" port="7001" type="servers">
<uline server="services.irc.example.net">
<link name="services.irc.example.net"
ipaddr="127.0.0.1"
port="7001"
allowmask="127.0.0.1"
sendpass="SuperSecret123456"
recvpass="SuperSecret123456">
<chanprotect noservices="no"
qprefix="~"
aprefix="&">
# Modules needed for services to function
<module name="m_chanprotect.so">
<module name="m_halfop.so">
<module name="m_services_account.so">
<module name="m_deaf.so">
<module name="m_spanningtree.so">
<module name="m_globops.so">
<module name="m_cban.so">
<module name="m_svshold.so">
<module name="m_hidechans.so">
<module name="m_servprotect.so">
<module name="m_chghost.so">
<module name="m_namesx.so">
<module name="m_uhnames.so">
Şimdi InspIRCd hizmetini yeniden başlatın:
service inspircd restart
Her şeyin düzgün çalıştığından emin olun:
service inspircd status
Şimdi weechat istemcimizi tekrar başlatın:
weechat
Yerel sunucumuza bağlanın:
/connect local
Atheme hizmetlerimizden birinin hemen açıldığını göreceksiniz: NickServ. Sizi kendisi hakkında bilgi ile karşılayacaktır.
23:12:48 local -- | NickServ (NickServ@ExampleNet/services/NickServ): Welcome to ExampleNet,
| root! Here on ExampleNet, we provide services to enable the registration of
| nicknames and channels! For details, type /msg NickServ help and /msg
| ChanServ help.
NickServ'i sorgulayabilir ve kullanılabilir komutlarını aşağıdakilerle öğrenebilirsiniz:
/msg NickServ help
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?
Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.
Teletıp, uzaktan sağlık hizmetleri ve gelecek nesiller üzerindeki etkisi nedir? Pandemi durumunda iyi bir yer mi değil mi? Bir görünüm bulmak için blogu okuyun!
Bilgisayar korsanlarının çok para kazandığını duymuş olabilirsiniz, ancak bu kadar parayı nasıl kazandıklarını hiç merak ettiniz mi? Hadi tartışalım.
Son zamanlarda Apple, sorunları gidermek için macOS Catalina 10.15.4'ü ek bir güncelleme yayınladı, ancak güncelleme, mac makinelerinde tuğla oluşmasına neden olan daha fazla soruna neden oluyor gibi görünüyor. Daha fazla bilgi edinmek için bu makaleyi okuyun