Главная страница

Отчет по практике ПМ.02 Организация администрирования сетевых систем. ОТЧЕТ по практике ПМ.02. Отчет по практике по настройки (12 неделю 10. 02. 202021. 02. 2020) Почтового сервера


Скачать 489.43 Kb.
НазваниеОтчет по практике по настройки (12 неделю 10. 02. 202021. 02. 2020) Почтового сервера
АнкорОтчет по практике ПМ.02 Организация администрирования сетевых систем
Дата06.09.2022
Размер489.43 Kb.
Формат файлаdocx
Имя файлаОТЧЕТ по практике ПМ.02.docx
ТипОтчет по практике
#665081

ОТЧЕТ

по производственной практике по ПМ.02
«Организация сетевого администрировния»


Отчет по практике по настройки

(1-2 неделю

10.02.2020-21.02.2020)

Почтового сервера

Astralinux

Настройка происходила на машине орел-3

Сначала поставим репозиторий на машине так как пакеты которые нам нужно установить на орле-3 будут не доступны

Для этого мы заходим

Приложение 0

#nano /etc/apt/sources.list и там добавим строчку

deb https://mirror.yandex.ru/debian/ stretch main contrib non-free

После этого обновляем и скачиваем пакет phphmyadmin mariadb

#Apt –get update

#Apt-get upgrade

#Apt install httpd php phpmyadmin mariadb mariadb-server php-imap

Задаем пароль P@ssw0rd для mysql.

#/usr/bin/mysql_secure_installation

Запустите командную строку и из неё сервер MySQL:

#mysql

Выполните следующую команду: создаем пользователя с паролем

#CREATE USER 'LihPyp'@'localhost' IDENTIFIED BY 'P@ssw0rd';

Необходимо назначить для него права доступа

#GRANT ALL PRIVILEGES ON * . * TO ‘LihPyp’@'localhost';

Для того, чтоб изменения вошли в силу запустите команду обновления:

#FLUSH PRIVILEGES;

Скачиваем пакет postfixadmin

Apt install postfixadmin

Дальше редактируем конфигурационный файл postfixadmin.

Cd /etc/postfixadmin

Приложение 1

nano config.inc.php

$CONF['configured'] = true;

$CONF['default_language'] = en;

$CONF['database_type'] = 'mysql';

$CONF['database_host'] = 'localhost';

$CONF['database_user'] = LihPyp;

$CONF['database_password'] = 'P@ssw0rd';

$CONF['database_name'] = 'mail';

$CONF['admin_email'] = 'root@kos.local;

$CONF['encrypt'] = 'md5crypt';

$CONF['default_aliases'] = array (

'abuse' => 'root',

'hostmaster' => 'root',

'postmaster' => 'root',

'webmaster' => 'root'

);

$CONF['domain_path'] = 'YES';

$CONF['domain_in_mailbox'] = 'YES';
Заходим на сервер Posftixadmin http://10.166.1.158/postfixadmin/setup.php

И у нас выдал следующие

Приложение2



Чтобы исправить 1 ошибку выдадим ему права




# chmod 777 /usr/share/postfixadmin/templates_c

Чтобы исправить 2 ошибку введем корректно базу данных из за которой у нас и произошла ошибка

Приложение 3

$CONF['database_type'] = 'mysqli';

$CONF['database_host'] = 'localhost';

$CONF['database_user'] = LihPyp;

$CONF['database_password'] = 'P@ssw0rd';

$CONF['database_name'] = 'mail';

И у нас появляется 3 ошибка

Invalid query: Specified key was too long; max key length is 1000 bytes

Что бы ее исправить мы заходим в

#mysql

#ALTER DATABASE postfix COLLATE = 'latin1_swedish_ci' ;

Далее указываем новый пароль и повторяем его

1P@$$w0rd7

Приложение4



получить строку с хэшем этого пароля

'5f785acf11269003fb91525f6d398763:121e6c6b81cac1068c93158a45f74b7383c54958';

Добавляем полученную строку в файл конфигурации postfixadmin

Nano /etc/posfi xadmin/config.inc.php

Приложение 5

$CONF['setup_password'] ='5f785acf11269003fb91525f6d398763:121e6c6b81cac1068c93158a45f74b7383c54958'

После исправление всех ошибок обновляем сайт и регистрируем нашего пользователя Create superadmin account

Приложение 6



И нажимаем добавить администратора

Переходим по ссылке и авторизуемся с помощью учетной записи администратора, которую только что сделали. Вы должны увидеть основную страницу интерфейса postfixadmin.
Приложение 7



Далее добавим наш домен

Для этого заходим список доменов и создать новый и переходим в создание домена

Приложение 8



Далее создадим почтовый ящик администратора

Нажимаем образ и создать ящик


Приложение 9


Настройка postfix

Устанавливаем пакет

Приложение 10


Apt install postfixsudo apt-get install postfix postfix-mysql dovecot-core dovecot-imapd dovecot-pop3d dovecot-lmtpd dovecot-mysql mysql-server

Переходим к настройки Postfix заходим в конфиг точнее делаем его сразу под себя но лучше подстраховаться и сделать копию

Приложение 11

Cp /etc/postfix/main.cf.orig

Cd /etc/postfix


Nano main.cf

soft_bounce = no

queue_directory = /var/spool/postfix

command_directory = /usr/sbin

daemon_directory = /usr/lib/postfix/sbin

data_directory = /var/lib/postfix

mail_owner = postfix


myhostname = orel-3.kos.local

mydomain = kos.local

myorigin = $myhostname

inet_interfaces = all

inet_protocols = ipv4

mydestination = localhost.$mydomain, localhost

unknown_local_recipient_reject_code = 550

mynetworks = 127.0.0.0/8

alias_maps = hash:/etc/aliases

alias_database = hash:/etc/aliases

smtpd_banner = $myhostname ESMTP $mail_name

debug_peer_level = 2

# Строки с PATH и ddd должны быть с отступом в виде табуляции от начала строки

debugger_command =

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 = no

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

relay_domains = mysql:/etc/postfix/mysql/relay_domains.cf

virtual_alias_maps = mysql:/etc/postfix/mysql/virtual_alias_maps.cf,

mysql:/etc/postfix/mysql/virtual_alias_domain_maps.cf

virtual_mailbox_domains = mysql:/etc/postfix/mysql/virtual_mailbox_domains.cf

virtual_mailbox_maps = mysql:/etc/postfix/mysql/virtual_mailbox_maps.cf

smtpd_discard_ehlo_keywords = etrn, silent-discard

smtpd_forbidden_commands = CONNECT GET POST

broken_sasl_auth_clients = yes

smtpd_delay_reject = yes

smtpd_helo_required = yes

smtp_always_send_ehlo = yes

disable_vrfy_command = yes


Создаем папку для файлов с конфигурацией подключения к mysql и сами файлы подключения.

# mkdir /etc/postfix/mysql && cd /etc/postfix/mysql

Создаем запросы базы данных

Приложение 12

nano relay_domains.cf

hosts = localhost

user = LihPyp

password = P@ssw0rd

dbname = mail

query = SELECT domain FROM domain WHERE domain='%s' and backupmx = '1'


# nano virtual_alias_domain_maps.cf

hosts = localhost

user = LihPyp

password = P@ssw0rd

dbname = mail

query = SELECT goto FROM alias,alias_domain WHERE alias_domain.alias_domain = '%d' and alias.address = CONCAT('%u', '@', alias_domain.target_domain) AND alias.active = 1


# nano virtual_alias_maps.cf

hosts = localhost

user = LihPyp

password = P@ssw0rd

dbname = mail

query = SELECT goto FROM alias WHERE address='%s' AND active = '1'


# nano virtual_mailbox_domains.cf

hosts = localhost

user = LihPyp

password = P@ssw0rd

dbname = mail

query = SELECT domain FROM domain WHERE domain='%s' AND backupmx = '0' AND active = '1'


# nano virtual_mailbox_maps.cf

hosts = localhost

user = LihPyp

password = P@ssw0rd

dbname = mail

query = SELECT maildir FROM mailbox WHERE username='%s' AND active = '1'


Редактируем файл /etc/postfix/master.cf. Нам надо добавить строки, касающиеся настройки Submission для того, чтобы почтовый сервер работал на 587 порту.

приводим секцию, отвечающую за эту работу к следующему виду.

Приложение 13


submission inet n - n - - smtpd

-o syslog_name=postfix/submission

-o smtpd_tls_wrappermode=no

-o smtpd_tls_security_level=encrypt

-o smtpd_sasl_auth_enable=yes

-o smtpd_recipient_restrictions=permit_mynetworks,permit_sasl_authenticated,re$

-o smtpd_relay_restrictions=permit_mynetworks,permit_sasl_authenticated,defer_$

-o milter_macro_daemon_name=ORIGINATING

Обращаю внимание на пробел в начале строки, начиная со второй. Его надо обязательно оставить. Добавляем еще настройки для того, чтобы наш сервер поддерживал протокол SSL/TLS и слушал порт 465

smtps inet n - n - - smtpd

-o syslog_name=postfix/smtps

-o smtpd_tls_wrappermode=yes

-o smtpd_sasl_auth_enable=yes

-o smtpd_recipient_restrictions=permit_mynetworks,permit_sasl_authenticated,reject

-o smtpd_relay_restrictions=permit_mynetworks,permit_sasl_authenticated,defer_unauth_destination

-o milter_macro_daemon_name=ORIGINATING



В этот же файл добавляем еще одну настройку, которая будет указывать postfix, что доставкой почты у нас будет заниматься dovecot,

dovecot unix - n n - - pipe

flags=DRhu user=vmail:vmail argv=/usr/libexec/dovecot/deliver -f ${sender} -d $
Создадим файлы для информации о ящиках, куда будет собираться вся входящая и исходящая почта.

#nano  /etc/postfix/recipient_bcc_maps

@kos.local all_in@kos.local

#nano /etc/postfix/sender_bcc_maps

@kos.local all_out@kos.local
Создаем индексированные базы данных из этих файлов. Это нужно делать каждый раз, после изменения.

postmap /etc/postfix/recipient_bcc_maps /etc/postfix/sender_bcc_maps

(3 неделя 24.02.2020)

Настройка DOVECOT

На всякий скачаем пакет

Atp install dovecot dovecot-mysql dovecot-pigeonhole
Изначально конфиг dovecot разбит на отдельные сегменты и лежат в директории /etc/dovecot/conf.d. Каждый файл — отдельный функционал но лучше все сделать в одном файле
Приложение 14

listen = * [::]
mail_plugins = mailbox_alias acl
protocols = imap pop3 lmtp
mail_uid = 1000

mail_gid = 1000
first_valid_uid = 1000

last_valid_uid = 1000
log_path = /var/log/dovecot/main.log

info_log_path = /var/log/dovecot/info.log

debug_log_path = /var/log/dovecot/debug.log
ssl_protocols = !SSLv2 !SSLv3

ssl = required

verbose_ssl = no

ssl_cert =
ssl_key = ssl_cipher_list = ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECD$

ssl_dh_parameters_length = 2048

ssl_prefer_server_ciphers = yes
disable_plaintext_auth = yes
mail_location = maildir:/mnt/mail/%d/%u/
auth_default_realm = kos.local
auth_mechanisms = PLAIN LOGIN
service auth {

unix_listener /var/spool/postfix/private/dovecot-auth {

user = postfix

group = postfix

mode = 0666

}

unix_listener auth-master {

user = vmail

group = vmail

mode = 0666

}
unix_listener auth-userdb {

user = vmail

group = vmail

mode = 0660

}

inet_listener lmtp {

address = 127.0.0.1

port = 24

}

}
userdb {

args = /etc/dovecot/dovecot-mysql.conf

driver = sql

}
passdb {

args = /etc/dovecot/dovecot-mysql.conf

driver = sql

}
auth_master_user_separator = *
plugin {

auth_socket_path = /var/run/dovecot/auth-master
acl = vfile

acl_shared_dict = file:/mnt/mail/shared-folders/shared-mailboxes.db

sieve = /mnt/mail/sieve/%u.sieve

mailbox_alias_old = Sent

mailbox_alias_new = Sent Messages

mailbox_alias_old2 = Sent

mailbox_alias_new2 = Sent Items

}
protocol lda {

mail_plugins = $mail_plugins sieve

auth_socket_path = /var/run/dovecot/auth-master

deliver_log_format = mail from %f: msgid=%m %$

log_path = /var/log/dovecot/lda-errors.log

info_log_path = /var/log/dovecot/lda-deliver.log

lda_mailbox_autocreate = yes

lda_mailbox_autosubscribe = yes

postmaster_address = root

}
protocol lmtp {

info_log_path = /var/log/dovecot/lmtp.log

protocol imap {

mail_plugins = $mail_plugins imap_acl

imap_client_workarounds = tb-extra-mailbox-sep

mail_max_userip_connections = 30

}
protocol pop3 {

mail_plugins = $mail_plugins

pop3_client_workarounds = outlook-no-nuls oe-ns-eoh

pop3_uidl_format = %08Xu%08Xv

mail_max_userip_connections = 30

}
service imap-login {

service_count = 1

process_limit = 500

}
service pop3-login {

service_count = 1

}
service managesieve-login {

inet_listener sieve {

port = 4190

}

}
namespace {

type = private

separator = /

prefix =

inbox = yes
mailbox Sent {

auto = subscribe

special_use = \Sent

}

mailbox "Sent Messages" {

auto = no

special_use = \Sent

}

mailbox "Sent Items" {

auto = no

special_use = \Sent

}

mailbox Drafts {

auto = subscribe

special_use = \Drafts

}

mailbox Trash {

auto = subscribe

special_use = \Trash

}

mailbox "Deleted Messages" {

auto = no

special_use = \Trash

}

mailbox Junk {

auto = subscribe

special_use = \Junk

}

mailbox Spam {

auto = no

special_use = \Junk

}

mailbox "Junk E-mail" {

auto = no

special_use = \Junk

}

mailbox Archive {

auto = no

auto = subscribe

special_use = \Drafts

}

mailbox Trash {

auto = subscribe

special_use = \Trash

}

mailbox "Deleted Messages" {

auto = no

special_use = \Trash

}

mailbox Junk {

auto = subscribe

special_use = \Junk

}

mailbox Spam {

auto = no

special_use = \Junk

}

mailbox "Junk E-mail" {

auto = no

special_use = \Junk

}

mailbox Archive {

auto = no

special_use = \Archive

}

mailbox Archives {

auto = no

special_use = \Archive

}

}
namespace {

type = shared

separator = /

prefix = Shared/%%u/

location = maildir:%%h:INDEX=%h/shared/%%u

subscriptions = yes

list = children

}
Создаем группу и пользователя с указанными в конфиге uid 1000.

Приложение 15
# groupadd  -g 1000 vmail

# useradd -d /mnt/mail/ -g 1000 -u 1000 vmail

# chown vmail. /mnt/mail
Создаем конфигурационные файлы для доступа к mysql базе.

Приложение 16

nano/etc/dovecot/dovecot-mysql.conf

driver = mysql

default_pass_scheme = CRYPT

connect = host=127.0.0.1 dbname=mail user=LihPyp password=P@ssw0rd

user_query = SELECT '/mnt/mail/%d/%u' as home, 'maildir:/mnt/mail/%d/%u' as mai$

password_query = SELECT username as user, password, '/mnt/mail/%d/%u' as userdb$
Создадим директорию и файлы для логов.

Приложение 17

# mkdir /var/log/dovecot

# cd /var/log/dovecot && touch main.log info.log debug.log lda-errors.log lda-deliver.log lmtp.log

# chown -R vmail:dovecot /var/log/dovecot
Создаем пару служебных папок для плагинов sieve и acl.

Приложение18

# mkdir /mnt/mail/sieve && mkdir /mnt/mail/shared-folders

# chown -R vmail. /mnt/mail
И небольшой штрих в завершении настройки.

# chown vmail. /var/run/dovecot/auth-master
Файловый сервер

Samba

(Неделя-4 02.03.2020)

Alt-linux

Для начало обнавим пакеты

apt-get update

apt-get upgrade

Скачаем пакет samba

apt-get insta ll samba

сделаем копию файла

cp /etc/samba/smb.conf /etc/samba/smb.conf.cop

Далее создадим папки Istomin, lichevan, share

-mkdir Istomin

-mkdir lichevan

-mkdir -p share

С базовым файлом samba при установке она не работает

cd /etc/samaba

nano smb.conf

Приложение 1

Пришлось файл сделать просто под себя
До этого сделали копию базового файла

заходим на файл

nano smb.conf все удаляем и пишем под себя

Приложение 2



где :

worgroup = kos-17.io указываем наш домен

server string = Samba Server указываем строку сервера

securrity = user
На контроллере домена:

Если при установке контроллера домена не была применена опция --setup-adtrust (установка компонент для работы с samba и Windows AD), то доустановить необходимые компоненты:

Приложение 3

sudo kinit admin



указываем пароли

далее пишем

sudo ipa-adtrust-install --add-sids --add-agents

он спрашивает у нас пароль и соглашение с настройкой где мы отвичаем yes

и унас идет обновление подключение с 0 до 28

После ввода файлового сервера в домен зарегистрировать службу, для чего на контроллере домена выполнить команды:

sudo kinit admin - получаем билет и авторизация администратора

sudo ipa service-add cifs/alt-.kos-17.io
Установить на файловом сервере необходимые пакеты:

sudo apt-get install samba-client

Получение таблицы ключей:

sudo kinit admin

sudo ipa-getkeytab -s ipa0.ipadomain.ru -p cifs/samba.ipadomain.ru -k /etc/samba/samba.keytab

Перезапуск службы samba:

sudo systemctl restart smbd

зайдем на IPA и можем увидеть что наша служба добавлена


и samba server работает


написать администратору сайта