Allmänt index för serien: Datornätverk för små och medelstora företag: introduktion
Den här artikeln är en fortsättning på:
- Squid + PAM-autentisering på CentOS 7.
- Lokal användar- och grupphantering
- NSD auktoritär DNS-server + strandvägg
Hej vänner och vänner!
Vi fortsätter att lägga till nättjänster baserat på lokal användarautentisering till servern med liten grupp. Entusiaster Fri programvara, särskilt CentOS.
Gruppens arbetsförhållanden förändrades till det bättre. De har nu som huvudkontor ett tre våningar hus med en källare och behöver implementera en snabbmeddelandeserver och filöverföring mellan arbetsstationer, för att lindra svårigheten att gå upp och ner för trappor eller mycket att gå. ;-). För detta föreslår de att man använder programmet Prosodi.
De är fast beslutna att publicera Internetchatttjänsten endast för entusiaster och de planerar att länka sin snabbmeddelandeserver till andra kompatibla XMPP-servrar i nätverket av nätverk. För detta köpte de domännamnet desdelinux.fläkt och fram till nu hanteras IP-adressen som är associerad med det namnet av din Internetaccessleverantör.
Tjänsten Chat through Prosody gör det möjligt för dem att utbyta snabbmeddelanden, överföra filer, göra röst- och videokonferenser och mer.
Vad är Prosody Instant Messenger?
Prosodi det är en modern kommunikationsserver baserad på XMPP-protokollet. Den är utformad för enkel installation och konfiguration och effektiv hantering av systemresurser. Prosody är en öppen källkod - Open Source-program skapat under den tillåtna licensen MIT / X11.
XMPP det är ett icke-kommersiellt alternativ att tillhandahålla snabbmeddelandetjänster. Det kan implementeras i en produktionsföretagsmiljö, i ett familjenätverk, ett privat nätverk av grannar och så vidare. Den stöder ett brett utbud av klientprogramvara för stationära och mobila plattformar. Genom XMPP kan denna tjänst tillhandahållas till vilken enhet som helst.
Dessutom kan de länk flera installationer av Prosody och andra tjänster som är kompatibla med XMPP-protokollet och bildar ett nätverk för meddelanden där vi har total kontroll över meddelandet och filtrafiken som kommer att ske på ett helt säkert sätt.
Prospody och autentisering mot lokala användare
I Prosody IM-webbplatskarta vi hittade länken till sidan Autentiseringsleverantörer, som säger att från version 0.8 av Prosody stöds olika autentiseringsleverantörer via insticksmoduler. Du kan använda chaufförer inbyggd programvara, eller så kan du integrera med tredjepartsautentiserings- och lagringsleverantörer med hjälp av deras API: er.
Autentiseringsleverantörer vi kan anställa
Namn Beskrivning -------------- ---------------------------------- ----------------------- internt Standardautentisering. Lösenord för vanlig text lagras med inbyggd lagring. intern_hashed Lösenord som kodats av en intern algoritm lagras med inbyggd lagring. cyrus Integration med Cyrus SASL (LDAP, PAM, ...) anonym Autentiseringsmekanism med SASL 'ANONYMOUS' med slumpmässigt användarnamn som inte kräver autentiseringsuppgifter.
XMPP använder standard Secure Layer Simple Authentication-protokoll för autentisering - Sgenomfö Averifiering och Secure LI går (SASL) för att validera kundernas referenser. Prosody innehåller biblioteket SASL som standard validerar autentiseringsuppgifter mot befintliga konton i dess inbyggda lagring.
Sedan version 0.7 av Prosody stöds extern leverantör Cyrus SALS som kan validera referenser som tillhandahålls av externa användare mot andra källor som: PAM, LDAP, SQL och andra. Det tillåter också användning av GSSAPI för enkel inloggningstjänster - Enkel inloggningstjänster.
I den här artikeln om Prosody, för att uppnå autentisering mot lokala användare via PAM, kommer vi att använda autentiseringsleverantören «cyrus»Levereras av paketet«cyrus sasl»Och det fungerar integrerat med daemon saslauthd.
cyrus-sasl och saslauthd
[root @ linuxbox ~] # yum install cyrus-sasl
Saslauthd-demon är redan installerad
[root @ linuxbox ~] # getsebool -a | grep saslauthd
saslauthd_read_shadow -> av
[root @ linuxbox ~] # setsebool saslauthd_read_shadow on
[root @ linuxbox ~] # getsebool -a | grep saslauthd
saslauthd_read_shadow -> på
[root @ linuxbox ~] # systemctl status saslauthd
● saslauthd.service - SASL-autentiseringsdemon. Laddad: laddad (/usr/lib/systemd/system/saslauthd.service; inaktiverad; leverantörsförinställning: inaktiverad) Aktiv: inaktiv (död)
[root @ linuxbox ~] # systemctl aktiverar saslauthd
Skapad symlänk från /etc/systemd/system/multi-user.target.wants/saslauthd.service till /usr/lib/systemd/system/saslauthd.service.
[root @ linuxbox ~] # systemctl start saslauthd
[root @ linuxbox ~] # systemctl status saslauthd
● saslauthd.service - SASL-autentiseringsdemon. Laddad: laddad (/usr/lib/systemd/system/saslauthd.service; aktiverad; leverantörsförinställning: inaktiverad) Aktiv: aktiv (kör) sedan lör 2017-04-29 10:31:20 EDT; 2s sedan Process: 1678 ExecStart = / usr / sbin / saslauthd -m $ SOCKETDIR -a $ MECH $ FLAGS (code = exited, status = 0 / SUCCESS) Main PID: 1679 (saslauthd) CGroup: /system.slice/saslauthd. tjänst ├─1679 / usr / sbin / saslauthd -m / run / saslauthd -a pam ├─1680 / usr / sbin / saslauthd -m / run / saslauthd -a pam ├─1681 / usr / sbin / saslauthd -m / run / saslauthd -a pam ├─1682 / usr / sbin / saslauthd -m / run / saslauthd -a pam └─1683 / usr / sbin / saslauthd -m / run / saslauthd -a pam
Prosody och lua-cyrussasl
[root @ linuxbox ~] # yum install prosody
---- Beroenden löst ================================================== ==================================== Paketarkitektur Version Förvar Storlek ========= == ================================================== === ================== Installation: prosody x86_64 0.9.12-1.el7 Epel-Repo 249 k Installation för beroenden: lua-expat x86_64 1.3.0- 4.el7 Epel -Repo 32 k lua-filesystem x86_64 1.6.2-2.el7 Epel-Repo 28 k lua-sec x86_64 0.5-4.el7 Epel-Repo 31 k lua-socket x86_64 3.0-0.10.rc1.el7 Epel -Repo 176k Transaktion Sammanfattning ==================================================== ================================ Installera 1 paket (+4 beroende paket) --- -
[root @ linuxbox ~] # getsebool -a | grep prosody
prosody_bind_http_port -> av
[root @ linuxbox ~] # setsebool prosody_bind_http_port på
[root @ linuxbox ~] # getsebool -a | grep prosody
prosody_bind_http_port -> på
[root @ linuxbox ~] # systemctl aktiverar prosodi
Skapad symlink från /etc/systemd/system/multi-user.target.wants/prosody.service till /usr/lib/systemd/system/prosody.service. [root @ linuxbox ~] # systemctl status prosody ● prosody.service - Prosody XMPP (Jabber) -server laddad: laddad (/usr/lib/systemd/system/prosody.service; aktiverad; leverantörsförinställning: inaktiverad) Aktiv: inaktiv (död )
[root @ linuxbox ~] # systemctl start prosody
[root @ linuxbox ~] # systemctl status prosody
● prosody.service - Prosody XMPP (Jabber) -server laddad: laddad (/usr/lib/systemd/system/prosody.service; aktiverad; leverantörsförinställning: inaktiverad) Aktiv: aktiv (kör) sedan lör 2017-04-29 10:35:07 EDT; 2s sedan Process: 1753 ExecStart = / usr / bin / prosodyctl start (code = exited, status = 0 / SUCCESS) Main PID: 1756 (lua) CGroup: /system.slice/prosody.service └─1756 lua / usr / lib64 /prosody/../../bin/prosody
[root @ linuxbox ~] # tail /var/log/prosody/prosody.log
29 apr 10:35:06 allmän information Hej och välkommen till Prosody version 0.9.12 29 apr 10:35:06 allmän information Prosody använder välj backend för anslutningshantering 29 apr 10:35:06 portmanager info Aktiverad tjänst 's2s' på [::]: 5269, [*]: 5269 29 apr 10:35:06 portmanager info Aktiverad tjänst 'c2s' på [::]: 5222, [*]: 5222 29 apr 10:35:06 portmanager info aktiverad tjänsten 'legacy_ssl' utan portar 29 apr 10:35:06 mod_posix info Prosody är på väg att lossna från konsolen, inaktiverar ytterligare konsolutgång 29 apr 10:35:06 mod_posix info Demoniserad framgångsrikt till PID 1756
[root @ linuxbox ~] # yum install lua-cyrussasl
Vi skapar den virtuella värden «chatt.desdelinux.fan" från "example.com" som Prosody installerar
[root @ linuxbox ~] # cp /etc/prosody/conf.d/exempel.com.cfg.lua \ /etc/prosody/conf.d/chat.desdelinux.fan.cfg.lua [root @ linuxbox ~] # nano /etc/prosody/conf.d/chat.desdelinux.fan.cfg.lua - Avsnitt för VirtualHost-chatt VirtualHost "chatt.desdelinux.fläkt" - Tilldela den här värden ett certifikat för TLS, annars skulle den använda den som är inställd i det globala avsnittet (om någon). - Observera att SSL i gammal stil på port 5223 bara stöder ett certifikat, - och att den alltid kommer att använda det globala. ssl = { key = "/etc/pki/prosody/chat.key"; certifikat = "/etc/pki/prosody/chat.crt"; } ------ Komponenter ------ -- Du kan ange komponenter för att lägga till värdar som tillhandahåller speciella tjänster, -- som fleranvändarkonferenser och transporter. -- För mer information om komponenter, se http://prosody.im/doc/components ---Set upp en MUC (multi-user chat) rumsserver på conference.chat.desdelinux.fläkt: Komponent "conference.chat.desdelinux.fan" "muc" name = "Entusiasts" - ÄR KONFERENSRUMETS NAMN ATT FÖRKLARA - NÄR KOMMER DU MED I RUMET restrict_room_creation = sant - Ställ in en SOCKS5 bytestream-proxy för serveröverförda filöverföringar: --Komponent "proxy.chat" "proxy65" --- Ställ in en extern komponent (standard komponentport är 5347) - - Externa komponenter gör det möjligt att lägga till olika tjänster, t.ex. som gateways / - transporterar till andra nätverk som ICQ, MSN och Yahoo. För mer info - se: http://prosody.im/doc/components#adding_an_external_component - --Component "gateway.chat" - component_secret = "password" autentisering = "cyrus" cyrus_service_name = "xmpp" cyrus_require_provisioning = falskt cyrus_application_name = "prosody" cyrus_server_fqdn = "chatta.desdelinux.fläkt"
Vi justerar gruppen som äger filen /etc/prosody/conf.d/chat.desdelinux.fan.cfg.lua
[root @ linuxbox ~] # ls -l /etc/prosody/conf.d/chat.desdelinux.fan.cfg.lua -rw-r -----. 1 rotrot 1361 29 apr 10:45 /etc/prosody/conf.d/chat.desdelinux.fan.cfg.lua [root @ linuxbox ~] # chown root: prosody /etc/prosody/conf.d/chat.desdelinux.fan.cfg.lua [root @ linuxbox ~] # ls -l /etc/prosody/conf.d/chat.desdelinux.fan.cfg.lua -rw-r-----. 1 rotprosodi 1361 29 apr 10:45 /etc/prosody/conf.d/chat.desdelinux.fan.cfg.lua
Vi kontrollerar konfigurationen
[root @ linuxbox ~] # luac -p /etc/prosody/conf.d/chat.desdelinux.fan.cfg.lua [root @ linuxbox ~] #
SSL-certifikat för säkra anslutningar
För att ansluta till Prosody-servern - både från det lokala nätverket och från Internet - och för att säkerställa att referenserna säkert krypteras måste vi generera SSL-certifikat - Socket Socket Layer deklareras i den virtuella värdkonfigurationsfilen /etc/prosody/conf.d/chat.desdelinux.fan.cfg.lua:
[root @ linuxbox ~] # cd / etc / prosody / certs / [root @ linuxbox certs] # openssl-begäran -ny -x509 -dagars 365 -noder \ -out "chat.crt" -nyckel rsa: 2048 -keyout "chat.key" Genererar en 2048 bitars RSA privat nyckel .....+++ ..........+++ skriver ny privat nyckel till 'chat.key' ----- Du kommer att bli ombedd att ange information som kommer att införlivas i din certifikatbegäran. Det du är på väg att ange är vad som kallas ett Distinguished Name eller ett DN. Det finns ganska många fält men du kan lämna några tomma. För vissa fält kommer det att finnas ett standardvärde. Om du anger '.' kommer fältet att lämnas tomt. ----- Landsnamn (kod på två bokstäver) [XX]:CU Stats- eller provinsnamn (fullständigt namn) []:Kuba Ortsnamn (t.ex. stad) [Standardort]:Havana Organisationsnamn (t.ex. företag) [ Default Company Ltd]:FromLinux.Fan Organisationsenhetsnamn (t.ex. avsnitt) []:Entusiaster Common Name (t.ex. ditt namn eller din servers värdnamn) []:chat.desdelinux.fan e-postadress []:buzz@desdelinux.fläkt
Vi ändrar de globala konfigurationsalternativen
Solamente vi kommer att redigera följande alternativ i filen /etc/prosody/prosody.cfg.lua:
[root @ linuxbox certs] # cp /etc/prosody/prosody.cfg.lua \ /etc/prosody/prosody.cfg.lua.original [root @ linuxbox ~] # nano /etc/prosody/prosody.cfg. lua - Prosody Exempel Konfigurationsfil - - Information om konfigurering av Prosody finns på vår - webbplats på http://prosody.im/doc/configure - - Tips: Du kan kontrollera att filens syntax är korrekt - när du är klar genom att köra: luac -p prosody.cfg.lua - Om det finns några fel kommer det att meddela dig vad och var - de är, annars kommer det att hålla tyst. - - Det enda som återstår att göra är att byta namn på den här filen för att ta bort .dist-slutet och fylla i - blanksteg. Lycka till och lyckligt jabbering! ---------- Serverinställningar ---------- - Inställningarna i detta avsnitt gäller för hela servern och är standardinställningarna - för alla virtuella värdar - Detta är en (av standard, tom) lista över konton som är administratörer - för servern. Observera att du måste skapa kontona separat - (se http://prosody.im/doc/creating_accounts för information) - Exempel: admins = {"user1@example.com", "user2@example.net"} admins = { "buzz@chat.desdelinux.fan", "trancos@chat.desdelinux.fläkt" } - Aktivera användning av libevent för bättre prestanda under hög belastning - För mer information se: http://prosody.im/doc/libevent --use_libevent = true; - Detta är listan över moduler som Prosody laddar vid start. - Det letar efter mod_modulename.lua i plugins-mappen, så se till att det finns också. - Dokumentation om moduler finns på: http://prosody.im/doc/modules modules_enabled = {- Generellt krävs "roster"; - Tillåt användare att ha en lista. Rekommenderas;) "saslauth"; - Autentisering för klienter och servrar. Rekommenderas om du vill logga in. "tls"; - Lägg till stöd för säkra TLS på c2s / s2s-anslutningar "uppringning"; - s2s uppringningsstöd "disk"; - Upptäck service - Inte nödvändigt, men rekommenderas "privat"; - Privat XML-lagring (för rumsbokmärken, etc.) "vcard"; - Tillåt användare att ställa in vCards - Dessa kommenteras som standard eftersom de har en prestandapåverkan - "integritet"; - Support sekretesslistor - "komprimering"; - Streamkomprimering (Obs! Kräver installerat lua-zlib RPM-paket) - Trevligt att ha "version"; - Svar på serverversioner "uptime"; - Rapportera hur länge servern har kört "tid"; - Låt andra veta tiden här på denna server "ping"; - Svar på XMPP-pingar med pongs "pep"; - Gör det möjligt för användare att publicera sitt humör, sin aktivitet, spela musik och mer "registrera"; - Låt användare registrera sig på den här servern med hjälp av en klient och ändra lösenord - Admin-gränssnitt "admin_adhoc"; - Tillåter administration via en XMPP-klient som stöder ad-hoc-kommandon - "admin_telnet"; - Öppnar telnet-konsolgränssnittet på localhost-port 5582 - HTTP-moduler "bosh"; - Aktivera BOSH-klienter, aka "Jabber via HTTP" - "http_files"; - Servera statiska filer från en katalog via HTTP - Annan specifik funktionalitet "posix"; - POSIX-funktionalitet, skickar servern till bakgrunden, aktiverar syslog, etc. - "grupper"; - Delat stödlista - "tillkännage"; - Skicka meddelande till alla onlineanvändare - "välkommen"; - Välkomstanvändare som registrerar konton - "watchregistrations"; - Varningsadministratörer av registreringar - "motd"; - Skicka ett meddelande till användare när de loggar in - "legacyauth"; - Äldre autentisering. Används endast av vissa gamla klienter och bots. }; bosh_ports = {{port = 5280; sökväg = "http-bind"; gränssnitt = "127.0.0.1"; }} bosh_max_inaktivitet = 60 - Använd om proxying HTTPS-> HTTP på serversidan anser_bosh_secure = sant - Tillåt åtkomst från skript på vilken webbplats som helst utan proxy (kräver en modern webbläsare) cross_domain_bosh = sant - Dessa moduler laddas automatiskt, men om du vill - inaktivera dem, avmarkera dem här: modules_disabled = {- "offline"; - Lagra offline-meddelanden - "c2s"; - Hantera klientanslutningar - "s2s"; - Hantera server-till-server-anslutningar}; - Inaktivera skapande av konto som standard, för säkerhet - För mer information se http://prosody.im/doc/creating_accounts allow_registration = false; - Det här är de SSL / TLS-relaterade inställningarna. Om du inte vill använda SSL / TLS kan du kommentera eller ta bort den här ssl = {key = "/etc/pki/prosody/localhost.key"; certifikat = "/etc/pki/prosody/localhost.crt"; } - Tvinga klienter att använda krypterade anslutningar? Det här alternativet hindrar klienter från att autentisera om de inte använder kryptering. c2s_require_encryption = sant - Tvinga certifikatverifiering för server-till-server-anslutningar? - Detta ger perfekt säkerhet, men kräver servrar du kommunicerar med - för att stödja kryptering OCH presentera giltiga, betrodda certifikat. - OBS! Din version av LuaSec måste stödja certifikatverifiering! - För mer information se http://prosody.im/doc/s2s#security s2s_secure_auth = false - Många servrar stöder inte kryptering eller har ogiltiga eller självsignerade certifikat. Du kan lista domäner här som inte krävs för att - autentisera med certifikat. De autentiseras med hjälp av DNS. --s2s_insecure_domains = {"gmail.com"} - Även om du låter s2s_secure_auth inaktiverad kan du fortfarande kräva giltiga certifikat för vissa domäner genom att ange en lista här. --s2s_secure_domains = {"jabber.org"} - Välj den autentiseringsbackend som ska användas. De 'interna' leverantörerna - använd Prosodys konfigurerade datalagring för att lagra autentiseringsdata. - För att låta Prosody erbjuda säkra autentiseringsmekanismer till klienter lagrar - standardleverantören lösenord i klartext. Om du inte litar på din server ser du http://prosody.im/doc/modules/mod_auth_internal_hashed - för information om hur du använder den hashade backend. - authentication = "internal_plain" autentisering = "cyrus" cyrus_service_name = "xmpp" cyrus_require_provisioning = falskt - Välj den lagringsbackend som ska användas. Som standard använder Prosody platta filer - i sin konfigurerade datakatalog, men den stöder också fler backends - genom moduler. En "sql" backend ingår som standard men kräver ytterligare beroenden. Se http://prosody.im/doc/storage för mer information. --storage = "sql" - Standard är "internt" (Obs: "sql" kräver installerat - lua-dbi RPM-paket) - För "sql" backend kan du avmarkera * en * av nedan för att konfigurera: - sql = {driver = "SQLite3", database = "prosody.sqlite"} - Standard. 'databas' är filnamnet. --sql = {driver = "MySQL", databas = "prosody", användarnamn = "prosody", lösenord = "hemligt", värd = "localhost"} --sql = {driver = "PostgreSQL", databas = "prosody ", användarnamn =" prosody ", lösenord =" hemligt ", värd =" localhost "} - Loggkonfiguration - För avancerad loggning se http://prosody.im/doc/logging log = {- Logga allt på nivå" info " och högre (det vill säga alla utom "debug" -meddelanden) - till /var/log/prosody/prosody.log och fel också till /var/log/prosody/prosody.err felsöka = "/var/log/prosody/prosody.log"; - Ändra 'info' till 'felsöka' för detaljerad loggning error = "/var/log/prosody/prosody.err"; - Logga in fel också till filen - error = "* syslog"; - Logga fel också till syslog - log = "* console"; - Logga in på konsolen, användbart för felsökning med daemonize = false} - POSIX-konfiguration, se även http://prosody.im/doc/modules/mod_posix pidfile = "/run/prosody/prosody.pid"; --daemonize = false - Standard är "true" ------ Ytterligare konfigurationsfiler ------ - För organisationsändamål kan du föredra att lägga till VirtualHost och - komponentdefinitioner i sina egna konfigurationsfiler. Denna rad inkluderar - alla konfigurationsfiler i /etc/prosody/conf.d/ Inkludera "conf.d / *. Cfg.lua"
Ändringar i Dnsmasq-konfigurationen i Linuxbox
/Etc/dnsmasq.conf-fil
Lägg bara till värdet cname=chatt.desdelinux.fan, linuxbox.desdelinux.fläkt:
[root @ linuxbox ~] # nano /etc/dnsmasq.conf
----- # -------------------------------------------- ----------------------- # RECORDSCNAMEMXTXT # ------------------------ ------------------------------------------ # Denna typ av registrering kräver en post # i filen /etc/hosts # ex: 192.168.10.5 linuxbox.desdelinux.fan linuxbox # cname=ALIAS,REAL_NAME cname=mail.desdelinux.fan, linuxbox.desdelinux.fläkt
cname=chatt.desdelinux.fan, linuxbox.desdelinux.fläkt
----
[root @ linuxbox ~] # service dnsmasq starta om
[root @ linuxbox ~] # service dnsmasq status [root @ linuxbox ~] # hostchatt
chatt.desdelinux.fan är ett alias för linuxbox.desdelinux.fläkt. linuxbox.desdelinux.fan har adressen 192.168.10.5 linuxbox.desdelinux.fan mail hanteras av 1 mail.desdelinux.fläkt.
/Etc/resolv.conf-fil
[root @ linuxbox ~] # nano /etc/resolv.conf Sök desdelinux.fan nameserver 127.0.0.1 # För externa eller # icke-domän DNS-frågor desdelinux.fan # local=/desdelinux.fan/ namnserver 172.16.10.30
Ändringar i extern DNS på ISP
Vi tillägnar hela artikeln «NSD auktoritär DNS-server + strandvägg - SME-nätverk»Till frågan om hur man deklarerar SRV-poster relaterade till XMPP så att snabbmeddelandetjänsten kan gå ut på Internet och till och med så att Prosody-servern kan samlas med resten av de kompatibla XMPP-servrar som finns på webben.
Vi startar om Prosody
[root @ linuxbox ~] # service prosody restart
Omdirigerar till / bin / systemctl starta om prosody.service
[root @ linuxbox ~] # service prosody status
Omdirigering till / bin / systemctl status prosody.service ● prosody.service - Prosody XMPP (Jabber) -server laddad: laddad (/usr/lib/systemd/system/prosody.service; aktiverad; leverantörsförinställning: inaktiverad) Aktiv: aktiv (kör) sedan sön 2017-05-07 12:07:54 EDT; 8s sedan Process: 1388 ExecStop = / usr / bin / prosodyctl stopp (kod = avslutad, status = 0 / SUCCESS) Process: 1390 ExecStart = / usr / bin / prosodyctl start (kod = avslutad, status = 0 / SUCCESS) Huvud PID : 1393 (lua) CGroup: /system.slice/prosody.service └─1393 lua /usr/lib64/prosody/../../bin/prosody
[root @ linuxbox ~] # tail -f /var/log/prosody/prosody.log
- Det är väldigt hälsosamt att öppna en ny konsol med föregående kommando igång och observera utdata från Prosody-felsökningen medan tjänsten startas om..
Vi konfigurerar Cyrus SASL
[root @ linuxbox ~] # nano /etc/sasl2/prosody.conf
pwcheck_method: saslauthd mech_list: PLAIN
[root @ linuxbox ~] # service saslauthd starta om
Omdirigerar till / bin / systemctl startar om saslauthd.service
[root @ linuxbox ~] # service saslauthd status
-- Om...
[root @ linuxbox ~] # service prosody restart
PAM-konfiguration
[root @ linuxbox ~] # nano /etc/pam.d/xmpp
auth include password-auth account include password-auth
PAM-autentiseringskontroller
- För att kontrollera måste vi utföra följande kommando EXAKT som anges nedan, eftersom det handlar om att utföra ett kommando som "prosody" -användare och inte som "root" -användare:
[root @ linuxbox ~] # sudo -u prosody testsaslauthd -s xmpp -u steg -p steg 0: OK "Framgång." [root @ linuxbox ~] # sudo -u prosody testsaslauthd -s xmpp -u legolas -p legolas 0: OK "Framgång." [root @ linuxbox ~] # sudo -u prosody testsaslauthd -s xmpp -u legolas -p Lengolas 0: INGEN "autentisering misslyckades"
Autentiseringsprocessen mot lokala användare fungerar korrekt.
Vi modifierar FirewallD
Använda det grafiska verktyget «brandväggar«, För området«allmän»Vi aktiverar tjänsterna:
- xmpp-bosch
- xmpp-klient
- xmpp-server
- xmpp-lokal
På samma sätt för området «extern»Vi aktiverar tjänsterna:
- xmpp-klient
- xmpp-server
Och vi öppnar hamnarna tcp 5222 y 5269.
Slutligen, vi gör ändringar i Utförande tid a Permanent y ladda om FirewallD.
XMPP Psi-klient
För att ansluta till den nyligen installerade Prosody Instant Messaging-servern kan vi välja mellan de olika klienterna som finns:
- Empati
- Gajim
- kadu
- Psi
- PSI Plus
- pidgin
- Telepati
Listan fortsätter. Vi valde Psi +. För att få den installerad använder vi det önskade kommandot för det eller vi gör det genom de grafiska verktyg som finns tillgängliga för den uppgiften. När vi har installerat det kör vi det och i slutet av artikeln ger vi en serie bilder som vi hoppas kommer att vara användbara för dig.
Sammanfattning
- Vi kan installera en snabbmeddelandetjänst baserad på Prosody för lokala användare av systemet och avstå från skapandet av interna Prosody-användare eller andra typer av autentiseringsuppgifter.
- Autentiseringsuppgifter kommer att krypteras från klienten till servern och dess svar på klienten också.
- Vi kan installera mer än en tjänst baserat på lokal autentisering via PAM på en enda server.
- Hittills servern linuxbox.desdelinux.fläkt tillhandahåller följande tjänster till SME-nätverket:
-
Upplösning av domännamn eller DNS.
- Dynamisk allokering av IP- eller DCHP-adresser
- Network Time Service eller NTP
- Säkerhetskopior via SSH från UNIX / Linux-klienter eller via WinSCP för Microsoft Windows-klienter.
- Direktmeddelandetjänst - Chatt. Finns även från Internet.
- Fildelningstjänst via själva chatten. Finns även från Internet
- Telekonferenstjänst som du kan konfigurera i Prosody.
-
Och alla tidigare tjänster med ett par grafiska verktyg för konfigurationen av Firewall - FirewallD, och för användar- och grupphantering av systemet som är väldigt enkla att använda om vi har grundläggande kunskap om vad vi vill göra.
Viktigt
Var noga med att besöka följande URL för att få fullständig information om Prosodigt: http: //prosody.im.
Fram till nästa del!
Så intressant alla dina bidrag, tack så mycket för dem alla.
Grattis Federico för en annan bra artikel.
Här ger författaren oss ("ger") "hur man vet" hur man implementerar chattjänsten genom Prosody som använder XMPP-protokollet i ett nätverk för att utbyta snabbmeddelanden, överföra filer, göra konferenser med röst och video, autentisering mot lokala användare över säkra anslutningar.
Dessutom, som vanligt i hela SME-serien, underlättar författaren integrationen av tjänsten som ska konfigureras med resten av tjänsterna och / eller parametrarna som redan är i drift i ett nätverk:
1- De modifieringar som vi måste göra i DNS-tjänsten för att inkludera chattjänsten och allt fungerar korrekt.
2- Konfigurationen (och kontrollerna) av PAM för att lokalt autentisera chattjänsten.
3- Vad vi måste göra i brandväggen för det lokala nätverket och "nätverk av nätverk" för att tillåta chattjänsten, och detta med en tillräcklig säkerhetsnivå.
4- Och slutligen verifiering av chatten från en XMPP-klient.
Inget att spara inlägget i en TIPS-katalog för när den här tjänsten måste implementeras.
Jag hoppas att de är användbara för dig på något sätt. Tack för kommentaren
IWO-vän, du har den riktiga kärnan i artikeln. Lägg bara till att vi implementerar tjänster för ett UNIX / Linux-nätverk, även om alla dess klienter är Microsoft Windows. Många läsare kanske inte har märkt den lilla detalj ännu. 😉
Mycket bra bidrag vän Fico. Du vet att jag har följt alla dina artiklar och i de sista 4 har jag lärt mig många frågor som jag inte kände på grund av att slöjan från Active Directory och Domain Controller sätts i mitt ansikte. Jag föddes praktiskt taget med NT 4 och dess PDC och BDC. Jag var inte medveten om att jag kunde förenkla autentisering över ett nätverk till en enda maskin som kör Centos eller annan Linux. Nu lär jag mig en ny filosofi som jag ser är lika gammal som ursprunget till nätverkshistorien. Även om du berättar lite om vad du ska publicera 😉 tror jag att du kommer att fortsätta med LDAP och sedan Active Directory baserat på Samba 4? Tack för ditt engagemang för orsaken till fri programvara. Jag väntar på dina nästa artiklar, Fico.
Tiger, bra artikel !!!!!
Kollega, det finns en liten detalj, i DNS-delen anger du hela domänen för desdelinux.fan till IP 172.16.10.10, du har implementerat den här servern i Debian (den DNS-en), nu är den här chattservern i CentOS, så logiskt har den en annan IP-adress, som du behövde för att omdirigera all trafik i brandväggen för denna IP där snabbmeddelandetjänsten skulle finnas, eftersom den vid denna tidpunkt pekar på samma DNS-server och den inte har meddelandetjänsten.
Annars allt fantastiskt, en stor kram.
Tack Eduardo för att kommentera. Du läser stycket väl:
På samma sätt för det "externa" området aktiverar vi tjänsterna:
xmpp-client
xmpp-server
Och vi öppnar tcp-portarna 5222 och 5269.
Jag tillåter utdata från XMPP-protokollet via ens34-gränssnittet. Kom ihåg inlägget nedan, även från Squid-artikeln. 😉
Zodiac vän: du får mig att förklara mina överraskningar i förväg. Nej, LDAP går inte nu. Det är kärnan i en e-postserver baserad på Postfix, Dovecot, Squirrelmail och med PAM-autentisering, vilket skulle vara den sista i denna miniserie. Mer na. ;-). Sedan om resten kommer tills vi kommer till Samba 4 AD-DC. Hejdå!.
Ja min vän, om jag läser det, men jag inte ser någonstans FÖRUTRUTNING mot den andra servern, ta en titt.
Eduardo: Gör installationen. Anslut en bärbar dator till ett undernät IP 172.16.10.0/24. Installera en chattklient på den och anslut till Prosody. Så det gjorde jag och det fungerade så. 😉
FirewallD är den av CentOS som kommer att FÖRUTSKA på sitt eget sätt.