Installere katalogserver centos 7

Hei alle sammen! I dag i artikkelen vil vi se på installasjonen CentOS 7 Minimal, innledende nettverksoppsett og installasjon av et grafisk grensesnitt kalt Kamerat. Vi har allerede en artikkel og video om det, men det er flere finesser når du installerer Minimal, mer om dem nedenfor.

Den første forskjellen er at bildet er litt større - 700 MB, men dette er fortsatt uforlignelig med volumet på en DVD eller full utgave. Den neste forskjellen, som følger fra den forrige, er at det ikke er noe alternativ for å velge tilleggsprogramvare for installasjon (skjermbilde nedenfor):

CentOS 7 la også til muligheten til å aktivere nettverksgrensesnittet direkte under installasjonen - dette var ikke tilfelle i versjon 6, men jeg vil i tillegg demonstrere den mest visuelle måten å konfigurere den på nettverksgrensesnitt i versjon 7.

Installasjonsprosess

Så vi utfører alle trinnene sekvensielt, vent 15-30 minutter og skriv inn påloggingsinformasjonen/passordet ditt (etter å ha koblet til via terminalen).

Mitt første instinkt var å sjekke om nettverksgrensesnittet fungerte og om en adresse hadde blitt tildelt det - jeg skrev inn ifconfig-kommandoen, og som det viste seg, denne kommandoen på versjon 7 er den foreldet og i stedet må du bruke ipaddr-kommandoen for å vise informasjon om grensesnitt og iplink-kommandoen for å vise statistikk om dem.

Men siden alle er vant til standardkommandoene til net-tools-pakken, må den installeres med kommandoen yum install net-tools. Men jeg husker den første følelsen av misforståelse da nettverket mitt ikke fungerte i den minimale installasjonen på versjon 6, og jeg vil i tillegg vise en veldig enkel måte å konfigurere det på - mer om det nedenfor.

Viktig! Ifconfig-kommandoen er avviklet. For nettverksinteraksjon med serveren anbefaler vi å bruke "ip"-kommandoen (ip -a), som er overlegen i funksjonalitet (fra L2 og L3s synspunkt) til "ifconfig".

Konfigurere nettverksgrensesnitt ved hjelp av nmtui

Vi går inn i nmtui-kommandoen - som et resultat bør et enkelt grafisk grensesnitt for å sette opp nettverket starte (skjermbilde nedenfor):


For eksempel vil jeg endre innstillingene for et enkelt grensesnitt - velg det første alternativet Rediger en tilkobling og vi ser følgende bilde:


Velge Redigere... og gjør hva vi vil med grensesnittet :) Som du kan se på skjermbildet nedenfor, mottok serveren vår en IP-adresse via DHCP - dette passer meg og jeg lar alt være som det er. Hovedmålet var å demonstrere dette verktøyetnmtui


Installerer MATE og nødvendige pakker

Så hvorfor MATE? Svaret er enkelt - det er mye lettere, svært lite ressurskrevende og ekstremt enkelt å installere. Så vi tar noen få enkle trinn for å installere pakker (nedenfor):

  • yum groupinstall "Utviklingsverktøy" - installasjon av det nødvendige settet med pakker for at GUI skal fungere (bare hvis det ikke allerede er installert);
  • yum installer epel-release - installerer EPEL-depotet;
  • yum groupinstall "X Window system" - installerer X Window System-gruppepakken, dette vil ta ca. 5 minutter. Selve pakken har et volum på 73 MB;
  • yum groupinstall "MATE Desktop" - installasjon direkte Mate - ganske stor pakke - 506 MB;

I denne guiden vil vi installere CentOS 7-operativsystemet på en server som støtter 64bit-arkitektur, siden utviklerne ikke har gitt ut en distribusjon for 32-bits-arkitekturen, i det minste har jeg ikke funnet den noe sted.

Nylig ble det nye operativsystemet CentOS 7 utgitt, så jeg bestemte meg for å lage installasjonsinstruksjoner med detaljerte skjermbilder for å veilede de som ønsker å lære å installere og konfigurere Linux CentOS 7 når jeg blir bedt om å undervise eller gi råd.

CentOS er en Linux-distribusjon basert på og kompatibel med Red Hats kommersielle Red Hat Enterprise Linux. Red Hat Enterprise Linux består av gratis programvare med åpen kildekode, men er kun tilgjengelig som binære pakkeplater for betalte abonnenter. Som kreves av GPL og andre lisenser, gir Red Hat all kildekode. CentOS-utviklerne bruker denne kildekoden til å lage et sluttprodukt som ligner på Red Hat Enterprise Linux og er tilgjengelig for nedlasting.

Last ned CentOS 7 fra det offisielle nettstedet for x64-arkitektur:
Last ned distribusjonssettet i en størrelse som passer deg ved å bruke lenkene:

La oss ta en liten pause og se den ekstreme nedstigningen fra fjellet på sykkel, det vil ta pusten fra deg:

I dag vil jeg introdusere deg for min visjon om den første konfigurasjonen av en universell server på et populært operativsystem. Jeg vil snakke om hvordan du gjør det grunnleggende oppsettet av en centos-server umiddelbart etter installasjonen for å bruke den i enhver kapasitet etter eget skjønn. Gitt praktiske rådøke sikkerheten og brukervennligheten til serveren. Artikkelen vil være relevant for de to siste Centos-utgivelsene - 7 og 8.

  1. List opp de første centos-innstillingene som jeg utfører på en nyinstallert server.
  2. Vis eksempler på konfigurasjoner jeg bruker i et typisk oppsett.
  3. Gi råd om å sette opp centos basert på din erfaring med systemet.
  4. Oppgi en liste over typiske programmer og verktøy som hjelper til med å administrere serveren.

Denne artikkelen er en del av en enkelt serie med artikler om serveren.

Introduksjon

Etter utgivelsen av den nye Centos 8-utgivelsen ble det vanskelig å beskrive i en enkelt artikkel førstegangs oppsett begge serverne, men jeg ønsket ikke å dele artikkelen fordi den har mange innkommende lenker fra forskjellige steder. Det er mer praktisk å vedlikeholde generelt materiale på begge utgivelsene, og det er det jeg skal gjøre. Samtidig vil forskjellene mellom de to versjonene være tydelig synlige; i et par år etter utgivelsen av centos 8 vil begge være relevante og du må bruke begge versjonene, avhengig av situasjonen.

Centos 7 bruker en pakkebehandling nam, og i Centos 8 - dnf. Samtidig la de igjen en symbolsk lenke fra yum til dnf, slik at du kan skrive både fornavnet og det andre. For konsistens vil jeg bruke yum hele veien, men jeg advarer deg, bare så du forstår hvorfor jeg gjør det på denne måten. Faktisk bruker CentOS 8 dnf, dette er en annen, mer moderne pakkebehandling som lar deg jobbe med forskjellige versjoner av samme programvare. Til dette formålet brukes separate depoter som dukket opp for centos 8.

Første oppsett av CentOS

Personlig starter jeg ethvert systemoppsett, enten det er centos eller annet, etter installasjonen ved å fullstendig oppdatere systemet. Hvis installasjonsbildet var ferskt, eller installasjonen ble utført over nettverket, vil det mest sannsynlig ikke være noen oppdateringer. Oftest eksisterer de, siden installasjonsbilder ikke alltid oppdateres regelmessig.

Oppdatering av systemet

# nam oppdatering

For enkel administrasjon installerer jeg alltid Midnight Commander, eller bare mc:

# nam installer mc

Og umiddelbart for det slår jeg på syntaksutheving for alle filer som ikke er eksplisitt angitt i filen /usr/share/mc/syntax/Syntax syntaks for sh- og bash-skript. Denne universelle syntaksen er fin for konfigurasjonsfiler som du oftest trenger å jobbe med på serveren. Overskriver filen ukjent.syntaks. Dette er mønsteret som vil bli brukt på .conf- og .cf-filer, siden det ikke er noen eksplisitt syntaks knyttet til dem.

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

Nettverksverktøy vil komme godt med neste gang. Avhengig av settet med innledende pakker du velger når du installerer systemet, vil du ha ett eller annet sett nettverksverktøy. Her er en liste over de jeg personlig er vant til - ifconfig, netstat, nslookup og noen andre. Hvis du trenger det, akkurat som meg, foreslår jeg at du installerer dem separat hvis de ikke allerede er installert. Hvis du ikke trenger dem spesielt og ikke bruker dem, kan du hoppe over å installere dem. La oss sjekke hva vi har i systemet for øyeblikket

#ifconfig

Hvis du ser svaret:

Bash: ifconfig: kommando ikke funnet

Dette betyr at verktøyet ikke er installert. I stedet for ifconfig i CentOS er det nå et verktøy ip. Dette gjelder ikke bare centos. Dette er bildet i nesten alle populære moderne Linux-distribusjoner. Jeg har vært vant til ifconfig lenge, selv om jeg ikke har brukt det så mye i det siste. Jeg har alltid likt at i forskjellige Linux-distribusjoner er alt omtrent det samme. Ved å bruke ifconfig kan du konfigurere nettverket ikke bare i Linux, men også i freebsd. Det er behagelig. Og når hver distribusjon har sitt eget verktøy, er ikke dette praktisk. Selv om nå dette ikke lenger er særlig relevant, siden jeg ikke lenger jobber med Freebsd, og ip-verktøyet er tilgjengelig i alle Linux-distribusjoner. Men hvis du trenger ifconfig, kan du installere pakken nett-verktøy, som inkluderer:

# nam installer nett-verktøy

For at nslookup eller for eksempel vertskommandoer skal fungere, må vi installere pakken bind-utils. Hvis dette ikke er gjort, bruk kommandoen:

#nsoppslag

Utgangen vil være:

Bash: nslookup: kommando ikke funnet

Så la oss installere bind-utils:

# yum installer bind-utils

Deaktiver SELinux

Deaktiver SELinux. Bruken og konfigurasjonen er en egen sak. Jeg vil ikke gjøre dette nå. Så la oss slå den av:

# mcedit /etc/sysconfig/selinux

endre verdien

SELINUX=deaktivert

Du kan starte på nytt for at endringene skal tre i kraft:

# omstart

Og hvis du vil deaktivere SELinux uten å starte på nytt, kjør kommandoen:

#setenforce 0

Jeg får stadig mye kritikk om dette temaet deaktivering av SELinux. Jeg vet hvordan det fungerer, jeg vet hvordan jeg konfigurerer det. Det er egentlig ikke veldig komplisert og ikke vanskelig å mestre. Dette er mitt bevisste valg, selv om jeg noen ganger justerer det. Måten jeg jobber med systemet på er slik at jeg oftest ikke trenger SELinux, så jeg kaster ikke bort tid på det og deaktiverer centos i grunnoppsettet. Systemsikkerhet er et komplekst arbeid, spesielt innen moderne verden webutvikling, hvor mikrotjenester og containere styrer. SELinux er et nisjeverktøy som ikke er nødvendig alltid og ikke overalt. Derfor har det ingen plass i denne artikkelen. De som trenger det vil separat aktivere SELinux og konfigurere det.

Spesifisere nettverksparametere

Vi fortsetter med grunnoppsettet av centos etter installasjon. Nå vil vi gjøre det hvis vi av en eller annen grunn ikke gjorde dette under installasjonen, eller hvis du trenger å endre dem. Generelt er nettverket i Centos konfigurert ved hjelp av NetworkManager og konsollverktøyet nmtui. Det følger med den grunnleggende installasjonen av systemet. Det er et enkelt og oversiktlig grafisk grensesnitt, så det er ingenting å si. Jeg er mer vant til å konfigurere nettverket gjennomer. I centos versjon 7 er de til stede ut av esken, i versjon 8 ble de fjernet. For å bruke dem til å konfigurere nettverket, må du installere pakken separat nettverksskript.

# yum installer nettverksskript

Nå kan du konfigurere nettverket. For å gjøre dette, åpne filen /etc/sysconfig/network-scripts/ifcfg-eth0

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

Hvis du mottar nettverksinnstillinger via dhcp, vil minimumssettet med innstillinger i konfigurasjonsfilen være som følger.

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

For å konfigurere en statisk IP-adresse, vil innstillingene være som følger.

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 PREFIXWAY=213 G PREFIXWAY=218. 192.168.167.113

I IPADDR-feltet skriver vi inn adressen din, i PREFIX nettverksmasken, i GATEWAY gatewayen, DNS-adresse DNS-server. Lagre filen og start nettverket på nytt for å bruke innstillingene:

# systemctl start nettverket på nytt

Sette opp en brannmur

Legger til depoter

Når du setter opp Centos trenger du ofte programvare som ikke er inkludert i standardnepen. For å installere flere pakker trenger du. Den mest populære er EPEL. Det pleide å være rpmforge, men det har vært stengt i flere år. Alle glemte ham. Vi kobler til EPEL-depotet. Alt er enkelt med det, det er lagt til fra standardnepen:

# nam installer epel-release

Også for CentOS 7 er REMI-depotet ekstremt nyttig, som lar deg installere nyere versjoner av php, i motsetning til de i standarddepotet. La meg minne deg på at dette er versjon PHP 5.4, som ikke lenger er bra og har blitt fjernet fra støtten.

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

For Centos 8 er remi ennå ikke aktuelt, men jeg tror det er midlertidig. I prinsippet er disse to depotene i centos vanligvis nok for meg i det generelle tilfellet. Andre er koblet til for spesifikke behov for installasjon av diverse programvare.

Sette opp historielagring i bash_history

La oss gå videre til å sette opp centos-systemet på serveren. Det vil være nyttig å gjøre noen endringer i standardmekanismen for å lagre kommandohistorikk. Det hjelper ofte når du trenger å huske en av de tidligere angitte kommandoene. Standardinnstillingene har noen begrensninger som er upraktiske. Her er listen deres:

  1. Som standard lagres bare de siste 1000 kommandoene. Hvis det er flere av dem, vil de eldre bli slettet og erstattet med nye.
  2. Det er ingen utførelsesdatoer for kommandoene, bare en liste over dem i rekkefølge.
  3. Kommandolistefilen oppdateres etter at økten er avsluttet. Under parallelle økter kan noen kommandoer gå tapt.
  4. Absolutt alle kommandoer lagres, selv om det ikke er noen vits i å lagre noen.

Listen over nylig utførte kommandoer lagres i brukerens hjemmekatalog i filen .bash_history(prikk i begynnelsen). Du kan åpne den med hvilken som helst editor og se den. For å vise listen mer praktisk, kan du skrive inn kommandoen i konsollen:

#historie

og se en nummerert liste. Du kan raskt finne en bestemt kommando ved å filtrere bare de nødvendige linjene, for eksempel slik:

#historie | grep nam

På denne måten vil vi se alle alternativene for å kjøre yum-kommandoen, som er lagret i historien. Vi vil rette opp de oppførte manglene standardinnstillinger lagring av kommandohistorikk i CentOS. For å gjøre dette må du redigere filen .bashrc, som ligger i samme katalog som historikkfilen. Legg til følgende linjer:

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

Det første alternativet øker filstørrelsen til 10 000 linjer. Du kan lage flere, selv om denne størrelsen vanligvis er nok. Den andre parameteren spesifiserer at datoen og klokkeslettet kommandoen ble utført skal lagres. Den tredje linjen tvinger umiddelbart etter å ha utført kommandoen til å lagre den i historikken. På den siste linjen lager vi en liste over unntak for de kommandoene som ikke trenger å registreres i historien. Jeg ga et eksempel på den enkleste listen. Du kan legge den til etter eget skjønn.

For å bruke endringene må du logge ut og koble til igjen eller kjøre kommandoen:

# kilde ~/.bashrc

Det handler om å sette opp kommandohistorikklagring. Det er mange interessante ting du kan konfigurere i .bashrc-filen. En gang ble jeg revet med og eksperimenterte, men så forlot jeg alt fordi det ikke ga mening. Når jeg jobber med kundeservere, ser jeg oftest standard bash, så det er bedre å bli vant til det og jobbe i det. Og individuelle innstillinger og dekorasjoner er mange av personlige datamaskiner og servere. Ikke arbeidere. Så jeg konfigurerer ikke noe annet i henhold til standarden i centos-serveren i denne forbindelse.

Automatisk systemoppdatering

For å opprettholde serversikkerheten på riktig nivå, er det nødvendig å i det minste oppdatere den i tide - både selve kjernen med systemverktøy og andre pakker. Du kan gjøre dette manuelt, men for mer effektivt arbeid Det er bedre å konfigurere automatisk utførelse. Det er ikke nødvendig å installere oppdateringer automatisk, men sjekk i det minste om de er tilgjengelige. Jeg følger vanligvis denne strategien.

Nam-cron

Til automatisk sjekk oppdateringer i Centos 7 vil verktøyet hjelpe oss nam-cron. Den installeres tradisjonelt via yum fra standarddepotet.

# nam installer yum-cron

Etter å ha installert yum-cron, opprettes en automatisk oppgave for å kjøre verktøyet i /etc/cron.daily Og /etc/cron.hourly. Som standard laster verktøyet ned funnet oppdateringer, men bruker dem ikke. I stedet vil administratoren på lokalt Postkasse varsel om oppdateringer sendes til root. Deretter går du i manuell modus og bestemmer om du vil installere oppdateringer eller ikke på et tidspunkt som passer deg. Jeg synes denne driftsmodusen er den mest praktiske, så jeg endrer ikke disse innstillingene.

Du kan konfigurere yum-cron gjennom konfigurasjonsfilene, som ligger på /etc/yum/yum-cron.conf Og yum-cron-hourly.conf. De er godt kommentert, så inn detaljerte forklaringer trenger ikke. Jeg gjør deg oppmerksom på avsnittet , hvor du kan angi parametere for sending av meldinger. Som standard sendes e-post via lokal vert. Du kan endre innstillingene her og sende meldinger via en tredjeparts e-postserver. Men i stedet foretrekker jeg personlig å globalt konfigurere hele serveren til å videresende lokal rotpost til en ekstern postboks gjennom autorisasjon på en annen smtp-server.

Dnf-automatisk

Som jeg sa tidligere, bruker Centos 8 en annen pakkebehandling - dnf. Konfigurering av pakkeoppdateringer der gjøres gjennom verktøyet dnf-automatisk. La oss installere det og konfigurere det.

# nam installer dnf-automatic

Det er ikke lenger cron som administrerer planlagte lanseringer, men systemdisert med sin innebygde planlegger. Se tidtakere automatisk start du kan bruke kommandoen:

# systemctl liste-timere *dnf-*

Hvis det ikke er noen oppgaver der, kan du legge til en tidtaker manuelt:

# systemctl enable --now dnf-automatic.timer

Standardtidtakeren er satt til å starte dnf-automatic en time etter at serveren starter opp og gjentas daglig. Timerkonfigurasjonen bor her - /etc/systemd/system/multi-user.target.wants/dnf-automatic.timer.

Konfigurasjonen for dnf-automatic bor i /etc/dnf/automatic.conf. Som standard laster den bare ned oppdateringer, men bruker dem ikke. Konfigurasjonen er godt kommentert, så du kan tilpasse den slik du ønsker. Ingen spesiell forklaring er nødvendig. Konfigurer oppdatering av systempakker etter eget skjønn. Som jeg allerede har sagt, laster jeg dem bare ned automatisk. Jeg holder alltid installasjonen under kontroll med manuell kontroll.

Deaktiver meldingsflom i /var/log/messages

Vi fortsetter å konfigurere centos, og vi vil rette opp en liten ulempe. I standardinstallasjonen av den 7. versjonen av systemet, hele systemloggen /var/log/meldinger Etter en tid vil serveren være tilstoppet med følgende poster.

16. okt 14:01:01 xs-files systemd: Opprettet skive bruker-0.slice. 16. okt 14:01:01 xs-files systemd: Starter user-0.slice. 16. okt 14:01:01 xs-files systemd: Startet økt 14440 av brukerrot. 16. okt 14:01:01 xs-files systemd: Starter økt 14440 av brukerrot. 16. okt 14:01:01 xs-files systemd: Fjernet slice user-0.slice. 16. okt 14:01:01 xs-files systemd: Stopper bruker-0.slice. 16. okt 15:01:01 xs-files systemd: Opprettet skive bruker-0.slice. 16. okt 15:01:01 xs-files systemd: Starter user-0.slice. 16. okt 15:01:01 xs-files systemd: Startet økt 14441 av brukerrot. 16. okt 15:01:01 xs-files systemd: Starter økt 14441 av brukerrot. 16. okt 15:01:01 xs-files systemd: Startet økt 14442 av brukerrot. 16. okt 15:01:01 xs-files systemd: Starter økt 14442 av brukerrot. 16. okt 15:01:01 xs-filer systemd: Fjernet slice user-0.slice. 16. okt 15:01:01 xs-filer systemd: Stopper bruker-0.slice. 16. okt 16:01:01 xs-filer systemd: Opprettet skive bruker-0.slice. 16. okt 16:01:01 xs-files systemd: Starter user-0.slice. 16. okt 16:01:01 xs-files systemd: Startet økt 14443 av brukerrot. 16. okt 16:01:01 xs-files systemd: Starter økt 14443 av brukerrot. 16. okt 16:01:01 xs-filer systemd: Fjernet slice user-0.slice.

Jeg la ikke merke til dem i Centos 8, så jeg trenger ikke å gjøre noe der. Meldingene gir ingen praktisk fordel, så vi slår dem av. For å gjøre dette vil vi lage en egen regel for rsyslog, der vi vil liste opp alle meldingsmalene som vi skal kutte. La oss plassere denne regelen i en egen fil /etc/rsyslog.d/ignore-systemd-session-slice.conf.

# cd /etc/rsyslog.d && mcedit ignore-systemd-session-slice.conf hvis $programname == "systemd" og ($msg inneholder "Starting Session" eller $msg inneholder "Started Session" eller $msg inneholder "Created" skive" eller $msg inneholder "Starting user-" eller $msg inneholder "Starting User Slice of" eller $msg inneholder "Removed session" eller $msg inneholder "Removed slice User Slice of" eller $msg inneholder "Stopping User Slice of" ) og stopp

Lagre filen og start rsyslog på nytt for å bruke innstillingene.

# systemctl start rsyslog på nytt

Det er nødvendig å forstå at i dette tilfellet deaktiverer vi flom i loggfilen bare for lokal server. Hvis du lagrer logger på, må denne regelen konfigureres på den.

Installerer iftop, atop, htop, lsof på CentOS

Og til slutt, for å fullføre oppsettet, legger vi til noen nyttige verktøy som kan komme til nytte under driften av serveren.

iftop viser lasting av nettverksgrensesnittet i sanntid, kan startes med forskjellige nøkler, jeg vil ikke dvele ved dette i detalj, det er informasjon om dette emnet på Internett. Vi putter:

# nam installer iftop

Og to interessante oppgavebehandlere, jeg bruker oftest htop, men noen ganger kommer atop godt med. La oss installere begge, se selv, finne ut hva du liker best, hva som passer deg:

# nam installer htop # nam installer på toppen

For å vise informasjon om hvilke filer som brukes av hvilke prosesser, anbefaler jeg deg å installere verktøyet lsof. Det vil mest sannsynlig komme godt med før eller siden når du diagnostiserer serveren.

# yum installer wget bzip2 traceroute gdisk

Det var alt for meg. Grunnleggende CentOS oppsett fullført, kan du begynne å installere og konfigurere hovedfunksjonaliteten.

Sette opp systempost

For å fullføre konfigureringen av CentOS-serveren, la oss sørge for at e-post adressert til den lokale roten sendes gjennom en ekstern e-postserver til den valgte postboksen. Hvis dette ikke gjøres, blir det lokalt kompilert til en fil /var/spool/mail/root. Og det kan være viktig og nyttig informasjon. La oss konfigurere den til å sendes til systemadministratorens postboks.

Jeg snakket om dette i detalj i en egen artikkel -. Her er bare kommandoene og hurtig oppsett. Installer de nødvendige pakkene:

# nam installer mailx cyrus-sasl cyrus-sasl-lib cyrus-sasl-plain postfix

La oss tegne noe slikt som denne konfigurasjonen for 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/aliases 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 ## STANDARD KONFIG. SLUTT ##################### # Servernavn som utgitt av kommandoen vertsnavn mitt vertsnavn = centos- test. xs.local # Her må du logisk sett bare forlate domenet, men i dette tilfellet er det bedre å la det fulle navnet på serveren stå slik at avsenderfeltet # inneholder det fulle navnet på serveren, dette gjør det mer praktisk å analysere tjenestemeldinger mydomain = centos-test.xs.local mydestination = $myhostname myorigin = $mydomain # Serveradresse som vi sender e-post via relayhost = mailsrv.mymail.ru:25 smtp_use_tls = yes smtp_sasl_auth_enable = yes smtp_sasl_auth_enable =_yes :/etc/postfix/sasl_passwd smtp_sasl_security_options = noanonym smtp_t ls_security_level = mai

Vi oppretter en fil med informasjon om brukernavn og passord for autorisasjon.

# mcedit /etc/postfix/sasl_passwd mailsrv.mymail.ru:25 [e-postbeskyttet]:passord

Lag en db-fil.

# postmap /etc/postfix/sasl_passwd

Nå kan du starte postfix på nytt og sjekke om det fungerer.

# systemctl start postfix på nytt

Til standardaliaset for root in /etc/aliaser, legg til en ekstern adresse der e-post adressert til root vil bli duplisert. For å gjøre dette, rediger den angitte filen, endre den siste linjen.

#root: marc

Rot: rot, [e-postbeskyttet]

Oppdatering av sertifikatdatabasen:

#newaliases

La oss sende et brev via konsollen til den lokale roten:

# df -h | mail -s "Diskbruk" rot

Brevet skal gå til en ekstern postkasse. Hvis du bruker en Yandex-postkasse, vil du mest sannsynlig få en feilmelding i loggen e-postserver og brevet vil ikke bli sendt.

Relay=smtp.yandex.ru:25, delay=0.25, delays=0/0/0.24/0.01, dsn=5.7.1, status=bounced (vert smtp.yandex.ru sa: 553 5.7.1 Avsenderadresse avvist: ikke eid av autorisert bruker. (som svar på MAIL FROM-kommandoen))

Denne feilen betyr at e-postavsenderen ikke er den samme postkassen som du bruker for autorisasjon. Jeg forteller deg hvordan du fikser dette i en egen artikkel -. Med andre e-postsystemer der det ikke er en slik sjekk, skal alt være bra som det er.

Dette fullfører det lokale postoppsettet. Nå vil alle brev adressert til den lokale roten, for eksempel rapporter fra cron, dupliseres til en ekstern postkasse, og sendes gjennom en fullverdig postserver. Så brevene vil bli levert normalt, uten å havne i spam (men ikke nødvendigvis, det finnes også heuristiske filtre).

Konklusjon

Vi har gått gjennom noen innledende trinn for å sette opp en CentOS-server, som er det jeg vanligvis gjør når jeg forbereder en server rett etter installasjonen. Jeg later ikke til å være den absolutte sannheten; jeg kan gå glipp av noe eller gjøre noe som ikke er helt riktig. Jeg vil gjerne ha fornuftige og meningsfulle kommentarer og forslag.

..
  • Forståelse av detaljene ved distribusjon, konfigurering og vedlikehold av nettverk bygget på Linux.
  • Evnen til raskt å løse nye problemer og sikre stabil og uavbrutt drift av systemet.
  • Test deg selv på opptaksprøven og se programmet for flere detaljer.

    Mange mennesker mistenker ikke engang at alle tjenestene vi bruker på Internett er basert på nøyaktig de samme datamaskinene som fungerer i leilighetene våre, de er bare konfigurert helt annerledes og kan ikke skryte av vakre grafisk grensesnitt og administreres ved hjelp av spesialiserte team. Disse datamaskinene kalles servere. Informerte mennesker vet selvfølgelig hvordan de skal konfigurere og "heve" sin egen server. De som er nye i denne virksomheten må studere mer enn ett forum for å endelig få taket på det. En ting er sikkert: for å sette opp en rimelig og stabil server, må du velge en like rimelig og stabil base, nemlig operativsystem basert på Linux. Valget av flertallet faller på CentOS 7. Dette materialet inneholder kort informasjon om hvordan du installerer CentOS 7 og lager en grunnleggende server basert på den.

    Hva er CentOS?

    CentOS er Linux, hvor den største fordelen er stabilitet. Dette systemet, som sin nærmeste konkurrent Fedora, ble bygget på kildekode betalt distribusjon av Red Hat Linux. Sistnevnte er på sin side et ideelt verktøy for systemadministratorer hvis arbeid krever forutsigbarhet, stabil drift og praktisk administrasjon.

    CentOS kan ikke skryte av det meste siste versjoner pakker, i motsetning til den samme Fedora, men hver Systemadministrator Han vil bare være glad for dette når Fedora eller en annen moderne distribusjon med sine nyeste pakker "faller", og CentOS fortsetter å jobbe stille uavhengig av omstendighetene. Dette materialet beskriver kort prosessen med å sette opp og installere CentOS 7, hovedfunksjonene til systemet og arbeidsmiljøet.

    Last ned CentOS 7

    Før du installerer CentOS 7, må du laste ned operativsystemdistribusjonen fra det offisielle nettstedet.

    Det er flere nedlastingsalternativer:

    • ISO-fil for brenning til disk - perfekt alternativ for de fleste med et fullverdig system og grafisk grensesnitt;
    • ISO-fil å installere fra harddisk og USB-flash-stasjoner - det mest komplette settet med pakker;
    • ISO for minimal nedlasting - inneholder bare det grunnleggende operativsystemet med et minimalt sett med pakker og uten et grafisk grensesnitt (med denne versjonen av distribusjonen kan du enkelt "heve" serveren uten å installere noe ekstra).

    Blant oppstartsfilene kan du finne to "live" diskbilder med to forskjellige arbeidsmiljøer (KDE og Gnome). Disse bildene passer for de som ønsker å prøve systemet før du installerer det på HDD.

    Installerer CentOS 7

    Selv om du velger et minimalt bilde, vil CentOS 7 tilby å bruke et grafisk grensesnitt for å installere systemet på harddisken din.

    Denne prosessen foregår i 6 hovedtrinn:

    • Stille inn dato og klokkeslett - på dette stadiet velger du bare tidssonen din, og tiden stilles automatisk.
    • Sette opp språk og layout - du må velge ett primært systemspråk og ett ekstra, samt spesifisere de nødvendige tastaturoppsettene for dem.
    • Installasjonskilde - på dette stadiet kan du ikke endre noe, da vil filene for installasjon bli hentet fra systemmediet.
    • Installasjonsprogramvare - på dette stadiet er det nødvendig å velge en minimum programvarepakke, siden vi trenger å distribuere en server uten skrivebord og grafisk grensesnitt.
    • Installasjonssted - på dette stadiet velger vi harddisken som installasjonen skal utføres på, samt partisjonering.
    • Internett-oppsett - her må du legge inn informasjon om Internett-tilkoblingen din.

    Etter å ha lagt inn dataene, må du opprette en brukerprofil og spesifisere root-passordet. Når installasjonsprosessen er fullført, starter datamaskinen på nytt og ber deg starte det nye operativsystemet.

    Installere en CentOS 7-server

    Her vil vi kort snakke om hvordan du distribuerer en universell server basert på CentOS 7 med et minimumssett med nødvendige verktøy som kreves for full drift.

    Så først må du finne selve serveren. Du kan enten leie det online (fra 250 rubler) eller konfigurere det til lokal maskin. Det eneste som kreves er SSH-legitimasjonen som vil bli brukt til å logge på serveren. La oss ta en abstrakt postadresse som eksempel. [e-postbeskyttet] og brukernavnet og passordet er også centos.

    Du bør starte konfigurasjonen ved å opprette en bruker og gi ham alle nødvendige rettigheter:

    • Legg til en bruker ved å bruke useradd centos-kommandoen;
    • Vi lager et unikt passord for det - passwd centos;
    • Vi tvinger systemet til å sende root-post til denne brukeren - vi /etc/aliases;
    • Vi gir brukeren sudo-rettigheter med visudo-kommandoen (kommandolinjen vil svare med bekreftelse av operasjonen).

    Etterpå må du deaktivere brannmur og SeLinux. Dette må gjøres for ikke å frata deg tilgangsrettigheter til serveren ved et uhell. Du kan sette brannmuren på pause ved å bruke systemctl stop brannmuren og systemctl deaktivere brannmurkommandoer. Situasjonen med SeLinux er litt mer komplisert: du må åpne den tilsvarende konfigurasjonsfilen i tekstredigerer Vi bruker kommandoen vi /etc/selinux/config, finn linjen SELINUX=aktivert der og erstatt den med SELINUX=disabled. Deretter må du starte systemet på nytt.

    Neste oppsettstrinn er å installere SSH.

    For å gjøre dette trenger du:

    • Legg til tilsvarende nøkler fra nord [e-postbeskyttet].
    • Endre porten i konfigurasjonsfilen /etc/ssh/sshd_config til Port 222.
    • Forby pålogging til serveren uten Rotrettigheter, skriver inn linjen PermitRootLogin uten passord.
    • Og start serveren på nytt med kommandoen systemctl restart sshd.

    Du må også oppdatere alle systemer og installere epel- og rpmforge-lagringer. For å gjøre dette trenger du:

    • Oppdater alle systemelementer med kommandoen yum update.
    • Last ned nye systemkomponenter ved å bruke kommandoen yum -enablerepo=cr update.
    • Hvis de eksisterende komponentene ikke er nok, kan du laste ned mer moderne versjoner av epel og rpmforge ved å skrive inn kommandoen yum -y install *adressen til depotet der den nødvendige versjonen er lagret programvare* (et passende depot kan enkelt finnes på spesialiserte ressurser).

    Sjekke tjenester, sette opp Apache og PHP

    For å installere tilleggskomponenter i en eksisterende serverramme, må du sjekke og deaktivere enkelte tjenester og MTA-tjenester.

    For å gjøre dette trenger du:

    • Sjekk hvilke tjenester som allerede kjører ved å bruke systemctl -t-tjenestekommandoen.
    • Deaktiver alle unødvendige og hindre dem i å starte, for eksempel for å installere e-posttjenester, må du deaktivere postfix ved å bruke systemctl stop postfix og systemctl deaktiver postfix kommandoene.

    Deretter må du laste ned Apache og PHP, som er nødvendige for at serveren vår skal fungere fullt ut.

    Så for dette:

    • Installer Apache-pakken med kommandoen yum -y install httpd.
    • Vi gjør endringer i konfigurasjonsfilen (du må spesifisere serveradresse, navn, signaturer osv.).
    • Vi starter Apache og aktiverer autorun-funksjonen med kommandoene systemctl start httpd og systemctl aktiverer httpd.
    • Legg deretter til PHP med kommandoen yum -y install php php-mbstring php-near.
    • Start Apache på nytt med kommandoen systemctl restart httpd.

    Installere MySql-databasestyringssystemet

    Før du installerer MySql på CentOS 7, er det verdt å avklare at når du bruker standard Yum-nedlastingsbehandler, vil systemet laste ned en alternativ versjon av programmet kalt MariaDB, så i tilfelle CentOS må du ta en løsning.

    For å installere MySql trenger du:

    • Last ned MySql-klienten fra det offisielle verktøylageret ved å bruke wget-kommandoen *lenke til filen med MySql-klienten*.
    • Installer den deretter med sudo rpm -ivh *fullt navn på rpm-filen med ønsket versjon av MySql* og sudo yum install mysql-server.
    • Bekreft deretter operasjonen to ganger ved å taste inn kommandolinje Y.

    Zabbix-overvåking

    For å installere Zabbix på CentOS 7, må du finne den nyeste versjonen av klienten på den offisielle nettsiden til utvikleren og deretter installere den på systemet.

    For å gjøre dette trenger du:

    • Legg til et depot med rpm Uvh-kommandoen *link til rpm-filen med gjeldende versjon Zabbix*.
    • Oppdater listen over tilgjengelig programvare med kommandoen yum update.
    • Installer deretter Zabbix-klienten på systemet med kommandoen yum install zabbix-agent.
    • Etter det gjenstår det bare å sjekke klientversjonen (en tredje er nødvendig) og svare bekreftende på alle forespørsler ved å skrive inn Y ​​på kommandolinjen.

    Installerer Zimbra e-postserver

    Før du installerer Zimbra på CentOS 7, må du forberede systemet for dette.

    Så du må gjøre følgende:

    • Konfigurer etc/hosts og vertsnavn-filen riktig.
    • Tillat alle Zimbra-porter i iptables.
    • Slå av SeLinux.
    • Deaktiver alle MTA-tjenester.
    • Oppdater operativsystemet med kommandoen yum update -y.
    • Deretter må du laste ned de riktige pakkene med kommandoen yum install perl perl-core ntpl nmap sudo libidn gmp.
    • Deretter - selve Zimbra-verktøyet *lenke til filen med gjeldende versjon av Zimbra-verktøyet*.
    • Pakk ut filen med tar-kommandoen og gå til riktig katalog med cd-kommandoen.
    • Deretter må du starte installasjonsprosessen med kommandoen ./install.sh —platform-override.


    
    Topp