1. Добавиль в настройки виртуального хоста следующее, где xxxx – номер порта, например, https://site.com:xxxx
Listen xxxx
SSLEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLCertificateFile /var/www/html/site/site.crt
SSLCertificateKeyFile /var/www/html/site/site.key
2.Генерируем site.crt и site.key на 365 дней
cd /var/www/html/site
openssl req -x509 -days 365 -newkey rsa:2048 -keyout site.key -out site.crt
В данном случае при запуске apache будет запрашивать парольную фразу passphrase. Чтобы избежать это выполним следующее:
cp site.key site.key.org
openssl rsa -in site.key.org -out site.key
Генерирование самоподписанного сертификата (всегда untrusted) выгдядит так на 365 дней
openssl x509 -req -days 365 -in site.csr -signkey site.key -out site.crt
Чтобы пакеты устанавливать легко с помощью команды
yum install [packet]
Изменяем настройки файла /etc/yum.conf.d. Можно прям в него добавить или сделать так, как написано в конце этого файла, следующие строки:
[centos-base]
name=CentOS-5 – Base
mirrorlist=http://mirrorlist.centos.org/?release=5&arch=$basearch&repo=os
enabled=1
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
#released updates
[centos-updates]
name=CentOS-5 – Updates
baseurl=http://mirror.centos.org/centos/5/updates/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
И всё
Для настройки доступа по ssh к консоли с помощью putty необходимо в терминале сервера сгенерировать пару ключей:
1) Создать каталог в домашней папке пользователя ~user/.ssh (обычно ~user находится в /home/user)
mkdir ~user/.ssh
cd ~user/.ssh
2) Сгенерировать ключ, указав путь файла ~user/.ssh/id_rsa
ssh-keygen -t rsa -b 2048
3) Появятся два файла id_rsa и id_rsa.pub. Это файлы чачтного и публичного ключей.
На сервере хранится публичный ключ. Скопируем в тот файл, который используется sshd.
cp id_rsa authorized_keys
4) authorized_keys должен лежать в каталоге ~user/.ssh. Он будет использоваться sshd для проверки частного ключа. Частный ключ отправим безопасно пользователю:
ssh-copy-id -i private_key_file user@machine (где private_key_file это файл rsa)
или небезопасно его можно просто скопировать любым доступным способом на машину пользователя.
5) Далее, если подключение будет происходить с помощью putty, то необходимо сгенерировать специальный ключ утилитой “PUTTY Key Generator” (ее надо качать отдельно) таким образом:
Запускае утилиту. Нажимаем кнопку Load, и открываем файл private_key_file. Далее нажимаем Save private key. Сохранится файл с ключем под названием private_key_file.ppk
После этого этот файл можно использовать при подключении по ssh через Putty.
6) Осталось настроить sshd на сервере. Для этого корректируем файл sshd_config:
vim /etc/ssh/sshd_config
Закомментировать (знаком #) строки
PasswordAuthentication yes
PermitEmptyPasswords no
Параметр LoginGraceTime (время, за которое необходимо ввести пароль) установить равным 15 сек.
LoginGraceTime 15
Также можно использовать для ограничения доступа только для определенных пользователей строку:
AllowUsers user user1 user2 user3
Сохраняем файл и перезапускаем sshd. На redhat таким образом:
service sshd restart
В redhat добавить в автозагрузку:
chkconfig –add [имя]
Пример
chkconfig –add postfix
Посмотреть список
chkconfig –list
В FreeBSD найти файл /etc/rc.conf и добавить строку
[имя]_enable=”YES”
Пример
defaultrouter=”xx.xx.xx.xx”
gateway_enable=”YES”
hostname=”freebsdhost.ru”
ifconfig_em1=”inet yy.yy.yy.yy netmask 255.255.0.0″
inetd_enable=”YES”
keymap=”ru.koi8-r”
linux_enable=”YES”
moused_enable=”YES”
sshd_enable=”YES”
mysql_enable=”YES”
gdm_enable=”YES”
gdm_lang=”ru_RU.UTF-8″
Сами скрипты, которые запускает rc.conf лежат в директории /etc/rc.d.
Более подробно все есть в man rc.conf. Там же описывается что такое ifconfig_em1, hostname.
Сначала надо скачать базу с часовыми поясами с сайта www.iana.org/time-zones.
Далее этой базой заменим старую в системе.
Рассмотрим обновление на примере московского часового пояса.
Посмотрим расхождение с UTC
zdump -v /usr/share/zoneinfo/Europe/Moscow Сделаем резервную копию
cp /usr/share/zoneinfo/Europe/Moscow /usr/share/zoneinfo/Europe/Moscow.bkp Скачаем базу tzdata2013d.tar.gz в каталог /tmp
cd /tmpwget www.iana.org/time-zones/repository/releases/tzdata2013d.tar.gz
mkdir /tmp/tzdata2013d
tar xfv tzdata2013d.tar.gz -C /tmp/tzdata2013d Компилируем и заменяем старый файл
zic -d zoneinfo europe
cp zoneinfo/Europe/Moscow /usr/share/zoneinfo/Europe/Moscow Далее выставляем в системе часовой поясcp /usr/share/zoneinfo/Europe/Moscow /etc/localtime Устанавливаем времяntpdate x.x.x.x где х.х.х.х - адрес ntp, например, с сайта http://www.ntp-servers.net/servers.html Смотрим date
Основные настройки крона находятся в файле /etc/crontab
Структура строки конфигурации:
# * * * * * [команда для выполнения] # ┬ ┬ ┬ ┬ ┬ # │ │ │ │ │ # │ │ │ │ │ # │ │ │ │ └───── день недели (0 - 6) (0 to 6 are Sunday to Saturday, or use names) # │ │ │ └────────── месяц (1 - 12) # │ │ └─────────────── день месяца (1 - 31) # │ └──────────────────── час (0 - 23) # └───────────────────────── минута (0 - 59)
# выполнять каждый день в 0 часов 5 минут, результат складывать в log/daily 5 0 * * * $HOME/bin/daily.job >> $HOME/log/daily 2>&1 # выполнять 1 числа каждого месяца в 14 часов 15 минут 15 14 1 * * $HOME/bin/monthly # каждый рабочий день в 22:00 0 22 * * 1-5 echo "Пора домой" | mail -s "Уже 22:00" john 23 */2 * * * echo "Выполняется в 0:23, 2:23, 4:23 и т. д." 5 4 * * sun echo "Выполняется в 4:05 в воскресенье" 0 0 1 1 * echo "С новым годом!" 15 10,13 * * 1,4 echo "Эта надпись выводится в понедельник и четверг в 10:15 и 13:15" 0-59 * * * * echo "Выполняется ежеминутно" 0-59/2 * * * * echo "Выполняется по четным минутам" 1-59/2 * * * * echo "Выполняется по нечетным минутам" # каждые 5 минут */5 * * * * echo "Прошло пять минут" Перезапустить cron в freebsd/etc/rc.d/cron restart
Перезапустить cron в red hatservice crond restart
Для работы с пользователями используются файл /etc/group, /etc/passwd и /etc/shallow.
В последнем хранятся хэшированные пароли.
1. Структура файла /etc/group
cdrom:x:24:vivek,student13,raj _____ _ _ _____ | | | | | | | | 1 2 3 4где 1 - имя группы, 2 - показывает место пароля (не используется), 3 - ID группы (GID), 4 - список пользователей, состоящих в группе.
Посмотреть в каких группах состоит пользователь:
grep username /etc/group
Посмотреть в какие пользователи в группе:
grep groupname /etc/group
Чтобы добавить пользователя username в группу groupname, набираем:
usermod -a -G groupname username
(или usermod -G groupname username)
Если пользователя еще нет:
a) добавить в существующую группу
useradd -G groupname username
б). добавить в существующую группу и группу для пользователя сделать первичной
useradd -g groupname username
Если группы нет, создать ее надо командой:
groupadd groupname
2. Структура файла /etc/passwd
где 1 – имя пользователя, 2 – пароль, который в зашифрованном виде хранится в /etc/shadow,
3 – ID пользователя (UID), 4 – ID группы (GID), 5 – комментарии, 6 – путь к домашней директории, 7 -путь расположения коммандной оболочки для пользователя.
3. Удалить пользователя
userdel usrname
Удалить группу
groupdel groupname
Необходимо наличие пакета perl 5.6 версии и выше.
На Red Hat, например, проверим:
rpm -qa perl
Установить, если не установлен, NetServer
>cpan [ENTER]
>install Net::Server
или, например, для RedHat
rpm -i perl-Net-Server-version.rpm
То же самое для IO::Multilex
>cpan [ENTER]
>install IO::Multilex
Также установить модули perl, если не установились или не установлены:
BerkeleyDB (Perl module)
Berkeley DB (Library, version ≥ 4.1)
perl-Net-DNS
perl-Digest-HMAC
perl-Digest-SHA1
perl-Parse-Syslog
Сам postgrey лежит на сайте here. Там же есть ссылки на вышеперечисленные пакеты.
Распакуем пакет:
tar -xvzf postgrey-1.34.tar.gz
Копируем файлы. Для большинства linux систем каталоги находятся там, где написано ниже (Однако нужно проверить и подкорректировать под свою систему):
cp postgrey /usr/sbin/
cp postgrey_whitelist_clients /etc/postfix/
cp postgrey_whitelist_recipients /etc/postfix/
сp contrib/postgreyreport /usr/sbin/
Далее возможно (для redhat EL5 наверняка потруется) ставим дополнительно еще из компилированного пакета. Пример ниже для Red hat (пакет взят из here):
rpm -i postgrey-version.rpm
Проверить наличие каталога /var/spool/postfix/postgrey и прав доступа к нему:
chown postfix:postfix /var/spool/postfix/postgrey
chmod 770 /var/spool/postfix/postgrey
Для работы postgrey совместно с postfix внесем изменения в конфигурационный файл main.cf (в данном примере, вместо параметра smtpd_recipient_restrictions использован параметр smtpd_client_restrictions. Разработчик рекомендует использовать smtpd_recipient_restrictions) :
smtpd_client_restrictions =
…,
…,
check_policy_service inet:127.0.0.1:60000
Внесем в файл /etc/postfix/ postgrey_whitelist_clients известные ip-адреса, домены почтовых сервисов, которые будут в белом списке (один адрес на одной строке).
Внесем в файл /etc/postfix/ postgrey_whitelist_recipient адреса получателей, к которым почта должна поступать незамедлительно:
postmaster@domain.tld
Administrators@domain.tld
root@domain.tld
Проверим наличие каталога /var/run/postgrey (если не существует – создать!!!), права на каталог root:postfix.
Откорректируем скрипт запуска сервиса postgrey /etc/init.d/postgrey. Параметр delay указывает время задержки сообщения в секундах :
prog=postgrey
postgrey=/usr/sbin/$prog
DBPATH=/var/spool/postfix/postgrey
SOCKET=$DBPATH/socket
OPTIONS=”-v –inet=127.0.0.1:60000 –delay=300 –user=postfix –group=postfix –pidfile=/var/run/postgrey/postgrey.pid”
Проверка работы сервиса postgrey
Запустим скрипт /etc/init.d/postgrey и проверим наличие процессов
>ps –aux | grep postgrey
postfix 14464 0.6 1.4 34580 29940 ? Ss Jun10 282:53 /usr/sbin/postgrey -d -v –inet=127.0.0.1:60000 –delay=300 –user=postfix –group=postfix –pidfile=/var/run/postgrey/postgrey.pid
root 29172 0.0 0.0 3892 700 pts/6 S+ 16:59 0:00 grep postgrey
> netstat -pan | grep postgrey
tcp 0 0 127.0.0.1:6060 0.0.0.0:* LISTEN 19224/postgrey.pid
tcp 0 0 127.0.0.1:6060 127.0.0.1:48744 ESTABLISHED 19224/postgrey.pid
unix 2 [ ] DGRAM 72023 19224/postgrey.pid
Выполним команды
service postgrey restart
service postfix restart
В результате в логах postfix должны появиться подобные строки:
> grep “action=” /var/log/mail/maillog
postgrey[23219]: action=greylist, reason=new, client_name=unknown, client_address=x.x.x.x, sender=test@domain.tld, recipient=testreception@domain2.tld
Установка осуществляется из установочного диска или любым другим стандартный способом. Пакет называется rsyslog.
Например, так:
yum install -y rsyslog
Далее необходимо разрешить удаленные запросы syslog по TCP или UDP.
Для это в файле “/etc/rsyslog.conf” изменяняем нижеследующие строки:
# Provides UDP syslog reception #$ModLoad imudp #$UDPServerRun 514 # Provides TCP syslog reception #$ModLoad imtcp #$InputTCPServerRun 514 на эти
# Provides UDP syslog reception $ModLoad imudp $UDPServerRun 514 # Provides TCP syslog reception $ModLoad imtcp $InputTCPServerRun 514 То есть раскомментировали некоторые строки.Далее делаем рестарт сервиса.
[root@syslog ~]# service rsyslog restart
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
И наконец, если запущен файервол iptables
service iptables status,
то необходимо разрешить пакеты syslog.
[root@syslog ~]# iptables -I INPUT -p tcp --dport 514 -j ACCEPT [root@syslog ~]# iptables -I INPUT -p udp --dport 514 -j ACCEPT [root@syslog ~]# service iptables save iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ] [root@syslog ~]# Теперь все работает.В конец файла “/etc/rsyslog.conf” добавляем свои настройки.
Например для приема с cisco добавляем строки
local1.=emerg /var/log/cisco/dirlog/cisco.emerg
local1.=info /var/log/cisco/dirlog/cisco.debug
и делаем рестарт сервиса syslog
service rsyslog restart .
1. Компилировать postfix нужно с поддержкой sasl2
2. Обратить внимание на файлы:
/usr/lib/sasl2/smtpd.conf:
pwcheck_method: saslauthd
mech_list: plain login
и
/etc/saslauthd.conf:
ldap_servers: ldap://х.х.х.х
ldap_version: 3
ldap_timeout: 10
ldap_timelimit: 10
ldap_bind_dn: ldapuser
ldap_bind_pw: ldapuser
ldap_domain: ЗЗЗЗ_ЗЗЗЗЗ
#ldap_search_base: O=ВВВВ
ldap_auth_method: bind
ldap_password_attr: userpassword
ldap_size_limit: 0
3. Запусккать обязательно так:
saslauthd -a ldap
4. Второй пункт может находиться в одном файле
/etc/sasl2/smtpd.conf 5. Проверка работы sasl вне зависимости от функционирования и настроек postfix
testsaslauthd -u username -p password
0: OK "Success."
Recent Comments