Отчет по практике ПМ.02 Организация администрирования сетевых систем. ОТЧЕТ по практике ПМ.02. Отчет по практике по настройки (12 неделю 10. 02. 202021. 02. 2020) Почтового сервера
Скачать 489.43 Kb.
|
ОТЧЕТ по производственной практике по ПМ.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 ошибку выдадим ему права
Чтобы исправить 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Устанавливаем пакетПриложение 10Apt install postfixsudo apt-get install postfix postfix-mysql dovecot-core dovecot-imapd dovecot-pop3d dovecot-lmtpd dovecot-mysql mysql-server Переходим к настройки Postfix заходим в конфиг точнее делаем его сразу под себя но лучше подстраховаться и сделать копиюПриложение 11Cp /etc/postfix/main.cf.origCd /etc/postfixNano main.cf soft_bounce = noqueue_directory = /var/spool/postfixcommand_directory = /usr/sbindaemon_directory = /usr/lib/postfix/sbindata_directory = /var/lib/postfixmail_owner = postfixmyhostname = orel-3.kos.localmydomain = kos.localmyorigin = $myhostnameinet_interfaces = allinet_protocols = ipv4mydestination = localhost.$mydomain, localhostunknown_local_recipient_reject_code = 550mynetworks = 127.0.0.0/8alias_maps = hash:/etc/aliasesalias_database = hash:/etc/aliasessmtpd_banner = $myhostname ESMTP $mail_namedebug_peer_level = 2# Строки с PATH и ddd должны быть с отступом в виде табуляции от начала строкиdebugger_command =PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/binddd $daemon_directory/$process_name $process_id & sleep 5sendmail_path = /usr/sbin/sendmail.postfixnewaliases_path = /usr/bin/newaliases.postfixmailq_path = /usr/bin/mailq.postfixsetgid_group = postdrophtml_directory = nomanpage_directory = /usr/share/mansample_directory = /usr/share/doc/postfix-2.10.1/samplesreadme_directory = /usr/share/doc/postfix-2.10.1/README_FILESrelay_domains = mysql:/etc/postfix/mysql/relay_domains.cfvirtual_alias_maps = mysql:/etc/postfix/mysql/virtual_alias_maps.cf,mysql:/etc/postfix/mysql/virtual_alias_domain_maps.cfvirtual_mailbox_domains = mysql:/etc/postfix/mysql/virtual_mailbox_domains.cfvirtual_mailbox_maps = mysql:/etc/postfix/mysql/virtual_mailbox_maps.cfsmtpd_discard_ehlo_keywords = etrn, silent-discardsmtpd_forbidden_commands = CONNECT GET POSTbroken_sasl_auth_clients = yessmtpd_delay_reject = yessmtpd_helo_required = yessmtp_always_send_ehlo = yesdisable_vrfy_command = yesСоздаем папку для файлов с конфигурацией подключения к mysql и сами файлы подключения. # mkdir /etc/postfix/mysql && cd /etc/postfix/mysql Создаем запросы базы данныхПриложение 12nano relay_domains.cfhosts = localhostuser = LihPyppassword = P@ssw0rddbname = mailquery = SELECT domain FROM domain WHERE domain='%s' and backupmx = '1'# nano virtual_alias_domain_maps.cfhosts = localhostuser = LihPyppassword = P@ssw0rddbname = mailquery = 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.cfhosts = localhostuser = LihPyppassword = P@ssw0rddbname = mailquery = SELECT goto FROM alias WHERE address='%s' AND active = '1'# nano virtual_mailbox_domains.cfhosts = localhostuser = LihPyppassword = P@ssw0rddbname = mailquery = SELECT domain FROM domain WHERE domain='%s' AND backupmx = '0' AND active = '1'# nano virtual_mailbox_maps.cfhosts = localhostuser = LihPyppassword = P@ssw0rddbname = mailquery = SELECT maildir FROM mailbox WHERE username='%s' AND active = '1'Редактируем файл /etc/postfix/master.cf. Нам надо добавить строки, касающиеся настройки Submission для того, чтобы почтовый сервер работал на 587 порту.приводим секцию, отвечающую за эту работу к следующему виду.Приложение 13submission 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 работает |