Installera katalogserver centos 7

Hej alla! Idag i artikeln kommer vi att titta på installationen CentOS 7 Minimal, initial nätverksinstallation och installation av ett grafiskt gränssnitt som kallas Para. Vi har redan en artikel och video om det, men det finns flera finesser när du installerar Minimal, mer om dem nedan.

Den första skillnaden är att bilden är något större - 700 MB, men detta är fortfarande ojämförligt med volymen på en DVD eller Full Edition. Nästa skillnad, som följer från den föregående, är att det inte finns något alternativ att välja ytterligare programvara för installation (skärmdump nedan):

CentOS 7 lade också till möjligheten att aktivera nätverksgränssnittet direkt under installationen - detta var inte fallet i version 6, men jag kommer dessutom att visa det mest visuella sättet att konfigurera det nätverksgränssnitt i version 7.

Installationsprocess

Så vi utför alla steg sekventiellt, vänta 15-30 minuter och skriv in ditt användarnamn/lösenord (efter att ha anslutit via terminalen).

Min första instinkt var att kontrollera om nätverksgränssnittet fungerade och om en adress hade tilldelats det - jag angav ifconfig-kommandot och, som det visade sig, detta kommando på version 7 är det föråldrat och istället måste du använda kommandot ipaddr för att visa information om gränssnitt och kommandot iplink för att visa statistik om dem.

Men eftersom alla är vana vid standardkommandona för net-tools-paketet, måste det installeras med kommandot yum install net-tools. Men, med tanke på den första känslan av missförstånd när mitt nätverk inte fungerade i den minimala installationen på version 6, vill jag dessutom visa ett mycket enkelt sätt att konfigurera det - mer om det nedan.

Viktig! Kommandot ifconfig är föråldrat. För nätverksinteraktion med servern rekommenderar vi att du använder kommandot "ip" (ip -a), som är överlägset i funktionalitet (ur L2 och L3 synvinkel) jämfört med "ifconfig".

Konfigurera nätverksgränssnitt med nmtui

Vi anger kommandot nmtui - som ett resultat bör ett enkelt grafiskt gränssnitt för att ställa in nätverket starta (skärmdump nedan):


Till exempel vill jag ändra inställningarna för ett enda gränssnitt - välj det första alternativet Redigera en anslutning och vi ser följande bild:


Välja Redigera... och göra vad vi vill med gränssnittet :) Som ni kan se på skärmdumpen nedan fick vår server en IP-adress via DHCP - det här passar mig och jag lämnar allt som det är. Huvudmålet var att demonstrera detta verktygnmtui


Installerar MATE och nödvändiga paket

Så varför MATE? Svaret är enkelt - det är mycket lättare, mycket resurskrävande och extremt lätt att installera. Så vi tar några enkla steg för att installera paket (nedan):

  • yum groupinstall "Utvecklingsverktyg" - installation av den nödvändiga uppsättningen paket för att GUI ska fungera (endast om det inte redan är installerat);
  • yum installera epel-release - installera EPEL-förvaret;
  • yum groupinstall "X Window system" - installerar grupppaketet X Window System, detta tar cirka 5 minuter. Själva paketet har en volym på 73 MB;
  • yum groupinstall "MATE Desktop" - installation direkt Mate - ganska stort paket - 506 MB;

I den här guiden kommer vi att installera CentOS 7-operativsystemet på en server som stöder 64-bitars arkitektur, eftersom utvecklarna inte har släppt en distribution för 32-bitars arkitektur, åtminstone har jag inte hittat den någonstans.

Nyligen släpptes det nya operativsystemet CentOS 7, så jag bestämde mig för att göra installationsinstruktioner med detaljerade skärmdumpar för att vägleda dem som vill lära sig att installera och konfigurera Linux CentOS 7 när jag blir ombedd att lära ut eller ge råd.

CentOS är en Linux-distribution baserad på och kompatibel med Red Hats kommersiella Red Hat Enterprise Linux. Red Hat Enterprise Linux består av gratis och öppen källkod, men är endast tillgänglig som binära paketskivor för betalda prenumeranter. Som krävs av GPL och andra licenser tillhandahåller Red Hat all källkod. CentOS-utvecklarna använder den här källkoden för att skapa en slutprodukt som liknar Red Hat Enterprise Linux och är tillgänglig för nedladdning.

Ladda ner CentOS 7 från den officiella webbplatsen för x64-arkitektur:
Ladda ner distributionspaketet i en storlek som passar dig med hjälp av länkarna:

Låt oss ta en kort paus och titta på den extrema nedstigningen från berget på en cykel, det kommer att ta andan ur dig:

Idag kommer jag att presentera min vision om den initiala konfigurationen av en universell server på ett populärt operativsystem. Jag kommer att prata om hur man gör den grundläggande installationen av en centos-server direkt efter installationen för att använda den i valfri kapacitet efter eget gottfinnande. Given praktiskt rådöka säkerheten och användarvänligheten för servern. Artikeln kommer att vara relevant för de två senaste Centos-släppen - 7 och 8.

  1. Lista de första centos-inställningarna som jag utför på en nyinstallerad server.
  2. Visa exempel på konfigurationer jag använder i en typisk installation.
  3. Ge råd om hur du ställer in centos baserat på din erfarenhet av systemet.
  4. Ge en lista över typiska program och verktyg som hjälper till att administrera servern.

Den här artikeln är en del av en enda serie artiklar om servern.

Introduktion

Efter releasen av den nya Centos 8-utgåvan blev det svårt att beskriva i en enda artikel första installationen båda servrarna, men jag ville inte dela upp artikeln eftersom den har många inkommande länkar från olika ställen. Det är bekvämare att underhålla allmänt material på båda utgåvorna, vilket är vad jag kommer att göra. Samtidigt kommer skillnaderna mellan de två versionerna att vara tydligt synliga, under ett par år efter lanseringen av centos 8 kommer båda att vara relevanta och du måste använda båda versionerna, beroende på situationen.

Centos 7 använder en pakethanterare mums, och i Centos 8 - dnf. Samtidigt lämnade de en symbolisk länk från yum till dnf, så man kan skriva både förnamnet och det andra. För konsistens kommer jag att använda yum genomgående, men jag varnar dig, bara så att du förstår varför jag gör på det här sättet. Faktum är att CentOS 8 använder dnf, det här är en annorlunda, modernare pakethanterare som låter dig arbeta med olika versioner av samma programvara. För detta ändamål används separata arkiv som dök upp för centos 8.

Initial installation av CentOS

Personligen startar jag vilken systeminstallation som helst, vare sig det är centos eller annat, efter installationen genom att fullständigt uppdatera systemet. Om installationsbilden var färsk, eller installationen utfördes över nätverket, kommer det troligen inte att finnas några uppdateringar. Oftast finns de, eftersom installationsbilder inte alltid uppdateras regelbundet.

Uppdaterar systemet

# yum uppdatering

För att underlätta administrationen installerar jag alltid Midnight Commander, eller bara mc:

# yum installera mc

Och direkt för det sätter jag på syntaxmarkering för alla filer som inte är explicit markerade i filen /usr/share/mc/syntax/Syntax syntax för sh- och bash-skript. Denna universella syntax är bra för konfigurationsfiler som du oftast behöver arbeta med på servern. Skriver över filen okänd.syntax. Detta är mönstret som kommer att tillämpas på .conf- och .cf-filer, eftersom det inte finns någon explicit syntax kopplad till dem.

# cp /usr/share/mc/syntax/sh.syntax /usr/share/mc/syntax/unknown.syntax

Nätverksverktyg kommer att komma till nytta härnäst. Beroende på uppsättningen av initiala paket som du väljer när du installerar systemet, kommer du att ha en eller annan uppsättning nätverksverktyg. Här är en lista över de som jag personligen är van vid - ifconfig, netstat, nslookup och några andra. Om du behöver det, precis som jag, föreslår jag att du installerar dem separat om de inte redan är installerade. Om du inte behöver dem särskilt och inte använder dem kan du hoppa över att installera dem. Låt oss kolla vad vi har i systemet för tillfället

# ifconfig

Om du ser svaret:

Bash: ifconfig: kommando hittades inte

Det betyder att verktyget inte är installerat. Istället för ifconfig i CentOS finns det nu ett verktyg ip. Detta gäller inte bara centos. Detta är bilden i nästan alla populära moderna Linux-distributioner. Jag har varit van vid ifconfig länge, även om jag inte har använt det så mycket på sistone. Jag har alltid gillat att i olika Linux-distributioner är allt ungefär detsamma. Med hjälp av ifconfig kan du konfigurera nätverket inte bara i Linux, utan även i freebsd. Det är bekvämt. Och när varje distribution har sitt eget verktyg är detta inte bekvämt. Även om nu detta inte längre är särskilt relevant, eftersom jag inte längre arbetar med Freebsd, och ip-verktyget är tillgängligt i alla Linux-distributioner. Men om du behöver ifconfig kan du installera paketet nät-verktyg, vilket ingår:

# yum installera net-tools

För att nslookup eller till exempel värdkommandon ska fungera behöver vi installera paketet bind-utils. Om detta inte görs, använd kommandot:

#nslookup

Utgången blir:

Bash: nslookup: kommandot hittades inte

Så låt oss installera bind-utils:

# yum installera bind-utils

Inaktivera SELinux

Inaktivera SELinux. Dess användning och konfiguration är en separat fråga. Jag kommer inte att göra det här nu. Så låt oss stänga av det:

# mcedit /etc/sysconfig/selinux

ändra värdet

SELINUX=inaktiverad

Du kan starta om för att ändringarna ska träda i kraft:

# starta om

Och om du vill inaktivera SELinux utan att starta om, kör sedan kommandot:

#setenforce 0

Jag får ständigt mycket kritik i detta ämne inaktiverar SELinux. Jag vet hur det fungerar, jag vet hur man konfigurerar det. Det är verkligen inte särskilt komplicerat och inte svårt att bemästra. Detta är mitt medvetna val, även om jag ibland justerar det. Sättet jag arbetar med systemet är sådant att jag oftast inte behöver SELinux, så jag slösar inte bort tid på det och inaktiverar centos i grundinställningen. Systemsäkerhet är en komplex strävan, särskilt inom modern värld webbutveckling, där mikrotjänster och containrar råder. SELinux är ett nischverktyg som inte behövs alltid och inte överallt. Därför har det ingen plats i den här artikeln. De som behöver det kommer att aktivera SELinux separat och konfigurera det.

Ange nätverksparametrar

Vi fortsätter med grundinställningen av centos efter installationen. Nu kommer vi att göra det om vi av någon anledning inte gjorde detta under installationen, eller om du behöver ändra dem. I allmänhet är nätverket i Centos konfigurerat med hjälp av Nätverks chef och dess konsolverktyg nmtui. Den kommer med den grundläggande installationen av systemet. Det finns ett enkelt och tydligt grafiskt gränssnitt, så det finns inget att berätta. Jag är mer van vid att konfigurera nätverket genom nätverksskriptkonfigurationsfiler. I centos version 7 finns de ur kartongen, i version 8 togs de bort. För att använda dem för att konfigurera nätverket måste du installera paketet separat nätverksskript.

# yum installera nätverksskript

Nu kan du konfigurera nätverket. För att göra detta, öppna filen /etc/sysconfig/network-scripts/ifcfg-eth0

# mcedit /etc/sysconfig/network-scripts/ifcfg-eth0

Om du får nätverksinställningar via dhcp, så blir den minsta uppsättningen inställningar i konfigurationsfilen följande.

TYPE="Ethernet" BOOTPROTO="dhcp" DEFROUTE="ja" IPV4_FAILURE_FATAL="nej" NAME="eth0" DEVICE="eth0" ONBOOT="ja"

För att konfigurera en statisk IP-adress kommer inställningarna att vara som följer.

TYPE="Ethernet" BOOTPROTO="none" DEFROUTE="yes" IPV4_FAILURE_FATAL="no" NAME="eth0" DEVICE="eth0" ONBOOT="yes" IPADDR=192.168.167.117 DNS1=192.168.167.13 G PREFIXAY=213 G PREFIXAY=213 192.168.167.113

I IPADDR-fältet anger vi din adress, i PREFIX nätverksmasken, i GATEWAY gatewayen, DNS-adress DNS-server. Spara filen och starta om nätverket för att tillämpa inställningarna:

# systemctl starta om nätverket

Konfigurera en brandvägg

Lägger till förråd

När du sätter upp Centos behöver du ofta programvara som inte ingår i standardkålen. För att installera ytterligare paket behöver du. Den mest populära är EPEL. Det fanns tidigare rpmforge, men det har varit stängt i flera år. Alla glömde bort honom. Vi ansluter EPEL-förvaret. Allt är enkelt med det, det läggs till från standardkålen:

# yum installera epel-release

Även för CentOS 7 är REMI-förvaret extremt användbart, vilket låter dig installera nyare versioner av php, till skillnad från de i standardförvaret. Låt mig påminna dig om att detta är version PHP 5.4, som inte längre är bra och har tagits bort från supporten.

# rpm -Uhv http://rpms.remirepo.net/enterprise/remi-release-7.rpm

För Centos 8 är remi ännu inte aktuellt, men jag tror att det är tillfälligt. I princip brukar dessa två förvar i centos vara tillräckligt för mig i det allmänna fallet. Andra är anslutna för specifika behov för installation av olika programvaror.

Konfigurera historiklagring i bash_history

Låt oss gå vidare till att ställa in centos-systemet på servern. Det kommer att vara användbart att göra några ändringar i standardmekanismen för att spara kommandohistorik. Det hjälper ofta när du behöver komma ihåg ett av de tidigare inmatade kommandona. Standardinställningarna har vissa begränsningar som är obekväma. Här är deras lista:

  1. Som standard sparas endast de senaste 1000 kommandona. Om det finns fler av dem kommer de äldre att raderas och ersättas med nya.
  2. Det finns inga exekveringsdatum för kommandona, bara en lista över dem i exekveringsordning.
  3. Kommandolistans fil uppdateras efter att sessionen avslutas. Under parallella sessioner kan vissa kommandon gå förlorade.
  4. Absolut alla kommandon sparas, även om det inte är någon idé att lagra några.

Listan över nyligen utförda kommandon lagras i användarens hemkatalog i filen .bash_history(prick i början). Du kan öppna den med valfri redigerare och visa den. För att visa listan mer bekvämt kan du ange kommandot i konsolen:

#historia

och se en numrerad lista. Du kan snabbt hitta ett specifikt kommando genom att filtrera endast de nödvändiga raderna, till exempel så här:

#historia | grep mums

På så sätt kommer vi att se alla alternativ för att köra kommandot yum, som lagras i historiken. Vi kommer att rätta till de angivna bristerna standardinställningar lagra kommandohistorik i CentOS. För att göra detta måste du redigera filen .bashrc, som finns i samma katalog som historikfilen. Lägg till följande rader:

Exportera HISTSIZE=10000 export HISTTIMEFORMAT="%h %d %H:%M:%S " PROMPT_COMMAND="history -a" export HISTIGNORE="ls:ll:history:w:htop"

Det första alternativet ökar filstorleken till 10 000 rader. Du kan göra fler, även om denna storlek vanligtvis räcker. Den andra parametern anger att datum och tid då kommandot utfördes ska lagras. Den tredje raden tvingar omedelbart efter att ha utfört kommandot att spara det i historiken. På sista raden skapar vi en lista med undantag för de kommandon som inte behöver registreras i historiken. Jag gav ett exempel på den enklaste listan. Du kan lägga till det efter eget gottfinnande.

För att tillämpa ändringarna måste du logga ut och ansluta igen eller köra kommandot:

# källa ~/.bashrc

Det handlar om att ställa in kommandohistoriklagring. Det finns många intressanta saker du kan konfigurera i .bashrc-filen. En gång blev jag medtagen och experimenterade, men sedan övergav jag allt eftersom det inte var meningsfullt. När jag arbetar med kundservrar ser jag oftast standardbash, så det är bättre att vänja sig vid det och arbeta i det. Och individuella inställningar och dekorationer är mängden av persondatorer och servrar. Inte arbetare. Så jag konfigurerar inget annat enligt standarden i centos-servern i detta avseende.

Automatisk systemuppdatering

För att upprätthålla serversäkerheten på rätt nivå är det nödvändigt att åtminstone uppdatera den i tid - både själva kärnan med systemverktyg och andra paket. Du kan göra detta manuellt, men för mer effektivt arbete Det är bättre att konfigurera automatisk körning. Det är inte nödvändigt att installera uppdateringar automatiskt, men kolla åtminstone efter deras utseende. Jag brukar följa denna strategi.

Yum-cron

För automatisk kontroll uppdateringar i Centos 7 kommer verktyget att hjälpa oss yum-cron. Den installeras traditionellt via yum från standardförvaret.

# yum installera yum-cron

Efter installation av yum-cron skapas en automatisk uppgift för att köra verktyget i /etc/cron.daily Och /etc/cron.hourly. Som standard laddar verktyget ner hittade uppdateringar, men tillämpar dem inte. Istället administratören på lokal Brevlåda meddelande om uppdateringar skickas till root. Sedan går du i manuellt läge och bestämmer om du vill installera uppdateringar eller inte vid en tidpunkt som passar dig. Jag tycker att detta driftsätt är det mest bekväma, så jag ändrar inte dessa inställningar.

Du kan konfigurera yum-cron genom konfigurationsfilerna, som finns på /etc/yum/yum-cron.conf Och yum-cron-hourly.conf. De är väl kommenterade, så in detaljerade förklaringar behöver inte. Jag uppmärksammar dig på avsnittet , där du kan ange parametrar för att skicka meddelanden. Som standard skickas e-post via lokal värd. Du kan ändra inställningarna här och skicka meddelanden via en e-postserver från tredje part. Men istället föredrar jag personligen att globalt konfigurera hela servern för att vidarebefordra lokal rotmail till en extern postlåda genom auktorisering på en annan smtp-server.

Dnf-automatisk

Som jag sa tidigare använder Centos 8 en annan pakethanterare - dnf. Konfigurering av paketuppdateringar där görs genom verktyget dnf-automatisk. Låt oss installera det och konfigurera det.

# yum installera dnf-automatic

Det är inte längre cron som hanterar schemalagda lanseringar, utan systematiseras med sin inbyggda schemaläggare. Visa timers automatisk start du kan använda kommandot:

# systemctl list-timers *dnf-*

Om det inte finns några uppgifter där kan du lägga till en timer manuellt:

# systemctl aktivera --nu dnf-automatic.timer

Standardtimern är inställd på att starta dnf-automatic en timme efter att servern startar och upprepas dagligen. Timerkonfigurationen finns här - /etc/systemd/system/multi-user.target.wants/dnf-automatic.timer.

Konfigurationen för dnf-automatic finns i /etc/dnf/automatic.conf. Som standard laddar den bara ner uppdateringar, men tillämpar dem inte. Konfigurationen är väl kommenterad, så du kan anpassa den som du vill. Ingen särskild förklaring krävs. Konfigurera uppdatering av systempaket efter eget gottfinnande. Som jag redan sa, jag laddar bara ner dem automatiskt. Jag håller alltid installationen under kontroll med manuell styrning.

Inaktivera meddelandeflöd i /var/log/messages

Vi fortsätter att konfigurera centos, vi kommer att rätta till ett litet besvär. I standardinstallationen av den 7:e versionen av systemet, hela din systemlogg /var/log/meddelanden Efter en tid kommer servern att vara igensatt med följande poster.

16 okt 14:01:01 xs-filer systemd: Skapade segment user-0.slice. 16 okt 14:01:01 xs-filer systemd: Startar user-0.slice. 16 okt 14:01:01 xs-files systemd: Startade session 14440 av användarrot. 16 okt 14:01:01 xs-files systemd: Startsession 14440 av användarrot. 16 okt 14:01:01 xs-filer systemd: Borttagen slice user-0.slice. 16 okt 14:01:01 xs-filer systemd: Stoppar user-0.slice. 16 okt 15:01:01 xs-filer systemd: Skapade segment user-0.slice. 16 okt 15:01:01 xs-filer systemd: Startar user-0.slice. 16 okt 15:01:01 xs-files systemd: Startade session 14441 av användarroten. 16 okt 15:01:01 xs-files systemd: Startsession 14441 av användarroten. 16 okt 15:01:01 xs-files systemd: Startade session 14442 av användarroten. 16 okt 15:01:01 xs-files systemd: Startsession 14442 för användarrot. 16 okt 15:01:01 xs-filer systemd: Borttagen slice user-0.slice. 16 okt 15:01:01 xs-filer systemd: Stoppar user-0.slice. 16 okt 16:01:01 xs-filer systemd: Skapade segment user-0.slice. 16 okt 16:01:01 xs-filer systemd: Startar user-0.slice. 16 okt 16:01:01 xs-files systemd: Startade session 14443 av användarrot. 16 okt 16:01:01 xs-files systemd: Startsession 14443 för användarrot. 16 okt 16:01:01 xs-files systemd: Borttagen segment user-0.slice.

Jag märkte dem inte i Centos 8, så jag behöver inte göra något där. Meddelanden ger ingen praktisk nytta, så vi kommer att stänga av dem. För att göra detta kommer vi att skapa en separat regel för rsyslog, där vi kommer att lista alla meddelandemallar som vi kommer att klippa. Låt oss placera denna regel i en separat fil /etc/rsyslog.d/ignore-systemd-session-slice.conf.

# cd /etc/rsyslog.d && mcedit ignore-systemd-session-slice.conf om $programname == "systemd" och ($msg innehåller "Starting Session" eller $msg innehåller "Started Session" eller $msg innehåller "Created" slice" eller $msg innehåller "Starting user-" eller $msg innehåller "Starting User Slice of" eller $msg innehåller "Removed session" eller $msg innehåller "Removed slice User Slice of" eller $msg innehåller "Stopping User Slice of" ) sluta sedan

Spara filen och starta om rsyslog för att tillämpa inställningarna.

# systemctl starta om rsyslog

Det är nödvändigt att förstå att i det här fallet inaktiverar vi översvämning i loggfilen endast för lokal server. Om du lagrar loggar på måste den här regeln konfigureras på den.

Installerar iftop, atop, htop, lsof på CentOS

Och slutligen, för att slutföra installationen, lägger vi till några användbara verktyg som kan komma till nytta under driften av servern.

iftop visar laddningen av nätverksgränssnittet i realtid, kan startas med olika nycklar, jag kommer inte att uppehålla mig i detta i detalj, det finns information om detta ämne på Internet. Vi lägger:

# yum installera iftop

Och två intressanta uppgiftshanterare, jag använder oftast htop, men ibland kommer atop väl till pass. Låt oss installera båda, se själv, ta reda på vad du gillar bäst, vad som passar dig:

# mums installera htop # mums installera ovanpå

För att visa information om vilka filer som används av vilka processer rekommenderar jag att du installerar verktyget lsof. Det kommer med största sannolikhet att komma till nytta förr eller senare när du diagnostiserar servern.

# yum installera wget bzip2 traceroute gdisk

Det var allt för mig. Grundläggande CentOS-inställning slutfört kan du börja installera och konfigurera huvudfunktionaliteten.

Konfigurera systemmail

För att avsluta konfigureringen av CentOS-servern, låt oss se till att e-post adresserad till den lokala roten skickas via en extern e-postserver till den valda postlådan. Om detta inte görs kommer det att kompileras lokalt till en fil /var/spool/mail/root. Och det kan finnas viktig och användbar information. Låt oss konfigurera den för att skickas till systemadministratörens brevlåda.

Jag pratade om detta i detalj i en separat artikel -. Här är bara kommandona och snabb installation. Installera nödvändiga paket:

# yum installera mailx cyrus-sasl cyrus-sasl-lib cyrus-sasl-plain postfix

Låt oss rita något liknande den här konfigurationen för postfix.

Cat /etc/postfix/main.cf ## DEFAULT CONFIG BEGIN ##################### queue_directory = /var/spool/postfix command_directory = /usr/sbin daemon_directory = /usr/libexec/postfix data_directory = /var/lib/postfix mail_owner = postfix inet_interfaces = localhost inet_protocols = all unknown_local_recipient_reject_code = 550 alias_maps = hash:/etc/alias alias_database = hash:/etcalia/2 debuggerle debugger_kommando PATH =/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin ddd $daemon_directory/$process_name $process_id & sleep 5 sendmail_path = /usr/sbin/sendmail.postfix newaliases_path = /usr/bin / newaliases.postfix mailq_path = /usr/bin/mailq.postfix setgid_group = postdrop html_directory = ingen manpage_directory = /usr/share/man sample_directory = /usr/share/doc/postfix-2.10.1/samples readme_directory = /usr/share / doc/postfix-2.10.1/README_FILES ## DEFAULT CONFIG END ##################### # Servernamn som utmatas av kommandot hostname myhostname = centos- test. xs.local # Här behöver du logiskt bara lämna domänen, men i det här fallet är det bättre att lämna serverns fullständiga namn så att avsändarfältet # innehåller serverns fullständiga namn, vilket gör det mer bekvämt att analysera tjänstmeddelanden mydomain = centos-test.xs.local mydestination = $myhostname myorigin = $mydomain # Serveradress genom vilken vi skickar e-post relayhost = mailsrv.mymail.ru:25 smtp_use_tls = ja smtp_sasl_auth_enable =_sasl hastppassword =_sasl :/etc/postfix/sasl_passwd smtp_sasl_security_options = noanonym smtp_t ls_security_level = maj

Vi skapar en fil med information om användarnamn och lösenord för auktorisering.

# mcedit /etc/postfix/sasl_passwd mailsrv.mymail.ru:25 [e-postskyddad]:Lösenord

Skapa en db-fil.

# postmap /etc/postfix/sasl_passwd

Nu kan du starta om postfix och kontrollera om det fungerar.

# systemctl starta om postfix

Till standardaliaset för root in /etc/aliaser, lägg till en extern adress där e-post adresserad till root kommer att dupliceras. För att göra detta, redigera den angivna filen och ändra den sista raden.

#root: marc

Rot: rot, [e-postskyddad]

Uppdatering av certifikatdatabasen:

#newaliases

Låt oss skicka ett brev via konsolen till den lokala roten:

# df -h | mail -s "Diskanvändning" rot

Brevet ska gå till en extern brevlåda. Om du använder en Yandex-postlåda kommer du med största sannolikhet att få ett felmeddelande i loggen Mejl server och brevet kommer inte att skickas.

Relay=smtp.yandex.ru:25, delay=0.25, delays=0/0/0.24/0.01, dsn=5.7.1, status=bounced (host smtp.yandex.ru sa: 553 5.7.1 Avsändaradress avvisad: ägs inte av auktoriserad användare. (som svar på MAIL FROM-kommandot))

Det här felet betyder att din e-postavsändare inte är samma brevlåda som du använder för auktorisering. Jag berättar hur du fixar detta i en separat artikel -. Med andra postsystem där det inte finns någon sådan kontroll borde allt vara bra som det är.

Detta slutför den lokala e-postkonfigurationen. Nu kommer alla brev adresserade till den lokala roten, till exempel rapporter från cron, att dupliceras till en extern brevlåda och skickas via en fullfjädrad mailserver. Så breven kommer att levereras normalt, utan att hamna i skräppost (även om det inte nödvändigtvis finns, det finns också heuristiska filter).

Slutsats

Vi har gått igenom några inledande steg för att konfigurera en CentOS-server, vilket är vad jag brukar göra när jag förbereder en server direkt efter installationen. Jag låtsas inte vara den absoluta sanningen; jag kanske missar något eller gör något som inte är helt korrekt. Jag kommer gärna ha rimliga och meningsfulla kommentarer och förslag.

..
  • Förståelse av detaljerna för att distribuera, konfigurera och underhålla nätverk byggda på Linux.
  • Förmågan att snabbt lösa uppkommande problem och säkerställa stabil och oavbruten drift av systemet.
  • Testa dig själv på inträdesprovet och se programmet för mer detaljer.

    Många människor misstänker inte ens att alla tjänster som vi använder på Internet är baserade på exakt samma datorer som fungerar i våra lägenheter, de är bara konfigurerade helt annorlunda och kan inte skryta med vackra grafiskt gränssnitt och hanteras med hjälp av specialiserade team. Dessa datorer kallas servrar. Informerade människor vet naturligtvis hur man konfigurerar och "höjer" sin egen server. De som är nya i denna verksamhet behöver studera mer än ett forum för att äntligen få kläm på det. En sak är säker: för att sätta upp en billig och stabil server måste du välja en lika billig och stabil bas, nämligen operativ system baserat på Linux. Valet av majoriteten faller på CentOS 7. Detta material innehåller kort information om hur man installerar CentOS 7 och skapar en grundläggande server baserad på den.

    Vad är CentOS?

    CentOS är Linux, vars största fördel är stabilitet. Detta system, liksom sin närmaste konkurrent Fedora, byggdes på källkod betald distribution av Red Hat Linux. Det senare är i sin tur ett idealiskt verktyg för systemadministratörer vars arbete kräver förutsägbarhet, stabil drift och bekväm hantering.

    CentOS kan inte skryta med det mesta senaste versionerna paket, till skillnad från samma Fedora, men var och en Systemadministratör Han kommer bara att vara glad över detta när Fedora eller en annan modern distribution med sina senaste paket "faller", och CentOS fortsätter att arbeta tyst oavsett omständigheterna. Detta material beskriver kortfattat processen för att installera och installera CentOS 7, systemets huvudfunktioner och arbetsmiljön.

    Ladda ner CentOS 7

    Innan du installerar CentOS 7 måste du ladda ner operativsystemdistributionen från den officiella webbplatsen.

    Det finns flera nedladdningsalternativ:

    • ISO-fil för att bränna till disk - perfekt alternativ för de flesta med ett fullfjädrat system och grafiskt gränssnitt;
    • ISO-fil att installera från hårddisk och USB-minnen - den mest kompletta uppsättningen paket;
    • ISO för minimal nedladdning - innehåller bara det grundläggande operativsystemet med en minimal uppsättning paket och utan ett grafiskt gränssnitt (med den här versionen av distributionen kan du enkelt "höja" servern utan att installera något extra).

    Bland startfilerna kan du hitta två "live" diskavbildningar med två olika arbetsmiljöer (KDE och Gnome). Dessa bilder är lämpliga för dig som vill prova systemet innan du installerar det på HDD.

    Installera CentOS 7

    Även om du väljer en minimal bild, kommer CentOS 7 att erbjuda dig att använda ett grafiskt gränssnitt för att installera systemet på din hårddisk.

    Denna process sker i 6 huvudsteg:

    • Ställa in datum och tid - i detta skede väljer du bara din tidszon, så ställs tiden in automatiskt.
    • Ställa in språk och layout - du måste välja ett primärt systemspråk och ytterligare ett, samt ange de nödvändiga tangentbordslayouterna för dem.
    • Installationskälla - i det här skedet kan du inte ändra någonting, då kommer filerna för installation att tas från systemmediet.
    • Installationsprogram - i detta skede är det nödvändigt att välja ett minsta mjukvarupaket, eftersom vi måste distribuera en server utan ett skrivbord och ett grafiskt gränssnitt.
    • Installationsplats - i detta skede väljer vi hårddisken som installationen ska utföras på, såväl som partitioneringen.
    • Internetinställning - här måste du ange information om din internetanslutning.

    Efter att ha angett uppgifterna måste du skapa en användarprofil och ange root-lösenordet. När installationen är klar startar din dator om och uppmanar dig att starta det nya operativsystemet.

    Installera en CentOS 7-server

    Här kommer vi kort att prata om hur man distribuerar en universell server baserad på CentOS 7 med ett minimum av nödvändiga verktyg som krävs för dess fulla drift.

    Så först måste du hitta själva servern. Du kan antingen hyra den online (från 250 rubel) eller konfigurera den till lokal maskin. Det enda som kommer att krävas är SSH-uppgifterna som kommer att användas för att logga in på servern. Låt oss ta en abstrakt postadress som exempel. [e-postskyddad] och användarnamnet och lösenordet är också centos.

    Du bör starta konfigurationen genom att skapa en användare och ge honom alla nödvändiga rättigheter:

    • Lägg till en användare med kommandot useradd centos;
    • Vi skapar ett unikt lösenord för det - passwd centos;
    • Vi tvingar systemet att skicka root-e-post till denna användare - vi /etc/aliases;
    • Vi ger användaren sudo-rättigheter med kommandot visudo (kommandoraden kommer att svara med bekräftelse av operationen).

    Efteråt måste du inaktivera Firewall och SeLinux. Detta måste göras för att inte av misstag beröva dig åtkomsträttigheter till servern. Du kan pausa brandväggen genom att använda systemctl stop firewalld och systemctl inaktivera brandväggskommandon. Situationen med SeLinux är lite mer komplicerad: du måste öppna motsvarande konfigurationsfil i textredigerare Vi använder kommandot vi /etc/selinux/config, hitta raden SELINUX=enabled där och ersätt den med SELINUX=disabled. Sedan måste du starta om systemet.

    Nästa steg är att installera SSH.

    För att göra detta behöver du:

    • Lägg till motsvarande nycklar från norr [e-postskyddad].
    • Ändra porten i konfigurationsfilen /etc/ssh/sshd_config till Port 222.
    • Förbjud inloggning på servern utan Rooträttigheter, ange raden PermitRootLogin utan lösenord.
    • Och starta om servern med kommandot systemctl restart sshd.

    Du måste också uppdatera alla system och installera epel- och rpmforge-lagringar. För att göra detta behöver du:

    • Uppdatera alla systemelement med kommandot yum update.
    • Ladda ner nya systemkomponenter med kommandot yum -enablerepo=cr update.
    • Om de befintliga komponenterna inte räcker till kan du ladda ner mer moderna versioner av epel och rpmforge genom att ange kommandot yum -y install *adress till förvaret där den nödvändiga versionen är lagrad programvara* (ett lämpligt arkiv kan lätt hittas på specialiserade resurser).

    Kontrollerar tjänster, ställer in Apache och PHP

    För att installera ytterligare komponenter i en befintlig serverram måste du kontrollera och inaktivera vissa tjänster och MTA-tjänster.

    För att göra detta behöver du:

    • Kontrollera vilka tjänster som redan körs med servicekommandot systemctl -t.
    • Inaktivera alla onödiga och förhindra dem från att starta, till exempel för att installera e-posttjänster måste du inaktivera postfix med kommandona systemctl stop postfix och systemctl disable postfix.

    Sedan måste du ladda ner Apache och PHP, som är nödvändiga för att vår server ska fungera fullt ut.

    Så för detta:

    • Installera Apache-paketet med kommandot yum -y install httpd.
    • Vi gör ändringar i konfigurationsfilen (du måste ange serveradress, namn, signaturer etc.).
    • Vi startar Apache och aktiverar autorun-funktionen med kommandona systemctl start httpd och systemctl enable httpd.
    • Lägg sedan till PHP med kommandot yum -y install php php-mbstring php-near.
    • Starta om Apache med kommandot systemctl restart httpd.

    Installation av MySql-databashanteringssystemet

    Innan du installerar MySql på CentOS 7 är det värt att förtydliga att när du använder standard Yum-nedladdningshanteraren kommer systemet att ladda ner en alternativ version av programmet som heter MariaDB, så i fallet med CentOS måste du ta en lösning.

    För att installera MySql behöver du:

    • Ladda ner MySql-klienten från det officiella verktygsförrådet med hjälp av kommandot wget *länk till filen med MySql-klienten*.
    • Installera den sedan med sudo rpm -ivh *fullständiga namnet på rpm-filen med önskad version av MySql* och sudo yum installera mysql-server.
    • Bekräfta sedan operationen två gånger genom att gå in kommandorad Y.

    Zabbix övervakning

    För att installera Zabbix på CentOS 7 måste du hitta den senaste versionen av klienten på utvecklarens officiella webbplats och sedan installera den på systemet.

    För att göra detta behöver du:

    • Lägg till ett arkiv med kommandot rpm Uvh *länk till rpm-filen med aktuell version Zabbix*.
    • Uppdatera listan över tillgänglig programvara med kommandot yum update.
    • Installera sedan Zabbix-klienten på systemet med kommandot yum install zabbix-agent.
    • Efter det återstår bara att kontrollera klientversionen (en tredje behövs) och svara jakande på alla förfrågningar genom att ange Y på kommandoraden.

    Installerar Zimbra e-postserver

    Innan du installerar Zimbra på CentOS 7 måste du förbereda systemet för detta.

    Så du måste göra följande:

    • Konfigurera etc/hosts och värdnamnsfilen korrekt.
    • Tillåt alla Zimbra-portar i iptables.
    • Stäng av SeLinux.
    • Inaktivera alla MTA-tjänster.
    • Uppdatera operativsystemet med kommandot yum update -y.
    • Sedan måste du ladda ner lämpliga paket med kommandot yum install perl perl-core ntpl nmap sudo libidn gmp.
    • Sedan - själva Zimbra-verktyget *länka till filen med den aktuella versionen av Zimbra-verktyget*.
    • Packa upp filen med kommandot tar och gå till lämplig katalog med kommandot cd.
    • Sedan måste du starta installationsprocessen med kommandot ./install.sh —platform-override.


    
    Topp