linux open ports

Довольно часто возникает необходимость посмотреть какие порты открыты. В линуксе это можно сделать тремя способами.

netstat

netstat -ntulp
  • -l или —listening — посмотреть только прослушиваемые порты
  • -p или —program — показать имя программы и ее PID
  • -t или —tcpпоказать tcp порты
  • -u или —udp показать udp порты
  • -n или —numeric показывать ip адреса в числовом виде

lsof

lsof -i

или проверить конкретный порт

lsof -i|grep 80

nmap

nmap localhost

С ним связано много интересного.
подробней тут

zimbra block incoming users and domains

Чтобы заблокировать входящие с определенных адресов и/или доменов нужно в консоли сервера:

1. под root’ом создать файл /opt/zimbra/common/conf/postfix_reject_sender и перечислить в нем заблокированные адреса и/или домены. Например

vi /opt/zimbra/common/conf/postfix_reject_sender
user@domain.com REJECT
domainX.com REJECT

2. Под zimbra user’ом выполнить команду

zmprov ms 'yourzimbraservername' +zimbraMtaSmtpdSenderRestrictions "check_sender_access lmdb:/opt/zimbra/common/conf/postfix_reject_sender"

3. Далее нужно postmap’нуть внесенные изменения

/opt/zimbra/common/sbin/postmap /opt/zimbra/common/conf/postfix_reject_sender

4. Подождать порядка минуты, пока зимбра воспримет изменения или перезапустить сервис чтобы ускорить этот процесс.

zmmtactl restart

Rewriting configuration files...done.
Stopping saslauthd...done.
Starting saslauthd...done.
/postfix-script: refreshing the Postfix mail system

теперь в логах должны появится записи типа таких

Sep 7 14:19:57 mail postfix/postscreen[13755]: CONNECT from [74.125.82.45]:32831 to [178.62.48.7]:25
Sep 7 14:20:01 mail zimbramon[15143]: 15143:info: 2017-09-07 14:20:01, QUEUE: 0 0
Sep 7 14:20:03 mail postfix/postscreen[13755]: PASS NEW [74.125.82.45]:32831
Sep 7 14:20:03 mail postfix/smtpd[13756]: connect from mail-wm0-f45.google.com[74.125.82.45]
Sep 7 14:20:03 mail postfix/smtpd[13756]: Anonymous TLS connection established from mail-wm0-f45.google.com[74.125.82.45]: TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)
Sep 7 14:20:03 mail postfix/smtpd[13756]: NOQUEUE: filter: RCPT from mail-wm0-f45.google.com[74.125.82.45]: <user1@gmail.com>: Sender address triggers FILTER smtp-amavis:[127.0.0.1]:10026; from=<user1@gmail.com> to=<jdelacruz@zimbra.io> proto=ESMTP helo=<mail-wm0-f45.google.com>
Sep 7 14:20:03 mail postfix/smtpd[13756]: NOQUEUE: reject: RCPT from mail-wm0-f45.google.com[74.125.82.45]: 554 5.7.1 <user1@gmail.com>: Sender address rejected: Access denied; from=<user1@gmail.com> to=<jdelacruz@zimbra.io> proto=ESMTP helo=<mail-wm0-f45.google.com>
Sep 7 14:20:03 mail postfix/smtpd[13756]: disconnect from mail-wm0-f45.google.com[74.125.82.45] ehlo=2 starttls=1 mail=1 rcpt=0/1 data=0/1 quit=1 commands=5/7

 

CentOS 6 locale

Изменить кодировку системы

Проверить текущую локаль

# locale
LANG=ru_RU.UTF-8
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE="ru_RU.UTF-8"
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="ru_RU.UTF-8"
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
LC_ALL=

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

# localedef -i en_US -f UTF-8 en_US.UTF-8
# export LC_ALL="en_US.UTF-8"

после отредактировать файл /etc/sysconfig/i18n

# vi /etc/sysconfig/i18n
LANG="en_US.UTF-8"
SYSFONT="latarcyrheb-sun16"

В примере производится смена локали с английской на русскую.

Чтобы изменить язык системы CentOS

Для того, чтобы изменить язык в системе CentOS уже после ее установки:

# system-config-language

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

# system-config-keyboard

Если этих утилит у Вас нет в системе, то уставим их:

# yum install system-config-language
# yum install system-config-keyboard

 

 

источник

date time in Solarish

В solirish системах, для установки даты используется традиционная команда date. Синтаксис при установке mmddhhmmyy, or “month day hour minute year”.

пример

# date 0530093018
Wed May 30 09:30:00 GMT 2018

Для изменения timezone используется команда rtc

# rtc --help
rtc: illegal option -- help
Options:
-c Check and correct for daylight savings time rollover.
-z [zone] Record the zone info in the config file.

# rtc -z Europe/Kaliningrad
# date
Tue May 29 21:27:05 GMT 2018

 

esxi cli copy

Когда эксплуатируешь много vmware гипервизоров, часто возникает желание скопировать что-нибудь куда-нибудь. Когда речь идет о простых файлах, например iso образах систем которые очень удобно хранить прямо на дисковой гипервизора, то вполне подходит обычная cp.

cp /vmfs/volumes/stor/iso/omniosce-r151022s.iso /vmfs/volumes/volume3/omniosce-r151022s.iso

Однако, когда речь заходит о дисках виртуальных машин, вылезает неприятный ньюанс — cp ничего не знает о thin provision. В результате если диск размечен как 100 Гб но записано на него всего 2 Гб — классический cp перепишет все 100 Гб.

Чтобы этого избежать существует команда vmkfstools. Весьма универсальная утилита на которую есть смысл взглянуть всем кто использует в работе vmware.

Общий систаксис команды не сильно отличается от cp

vmkfstools -i input output -d format -a adaptertype

-d — это тип диска. самый интересный thin
-a — тип адаптора

Источник:
https://kb.vmware.com/s/article/900
https://kb.vmware.com/s/article/1028042

zimbra mailbox backup

Когда возникает потребность очистить почтовик от старых учетных записей. Чтобы их почта не исчезла, но и не занимала места — ее нужно переложить в архив. Для этого необходимо использовать mailbox backup.

Для этого нужно.

1. залогинится на сервер по ssh как root
2. открыть в браузере админку зимбры, выбрать цель для переноса в архив.
3. сформировать команду по примеру

 /opt/zimbra/bin/zmmailbox -z -m asinica@grom.ru getRestURL //?fmt=tgz > /tmp/asinica_grom.ru.tgz

результат выполнения команды — файл /tmp/asinica_grom.ru.tgz

4. перенести файл в asinica_grom.ru.tgz  в архив.

5. удалить его с почтовика

rm -f /tmp/asinica_grom.ru.tgz

6. удалить учетку из админки.

 

Чтобы сделать рестор mailbox’a нужно положить файлик из архива в /tmp, вручную создать юзера с соответствующим емаил и выполнить следующую команду.

/opt/zimbra/bin/zmmailbox -z -m asinica@grom.ru postRestURL "//?fmt=tgz&resolve=skip" /tmp/asinica_grom.ru.tgz

zimbra 8.8 Let’s Encrypt cert

После обновления корпоративного почтовика с удивлением обнаружил изменения в процедуре обновления сертификата от letsencrypt. А именно

/opt/zimbra/bin/zmcertmgr verifycrt comm .....

запущенная под пользователем zimbra Возвращает ошибку о невозможности добраться до файлов. Оказалось что теперь необходимо под root копировать файлы серта и назначать им права. Теперь процедура обновления серта выглядит так:

#as zimbra user

zmproxyctl stop 
zmmailboxdctl stop

#as root - и опустить файрвол

cd /root/letsencrypt/
./letsencrypt-auto certonly --standalone

#файлы серта ложатся в /etc/letsencrypt/live/
#их необходимо скопировать и задать владельца

mkdir /opt/zimbra/ssl/letsencrypt
cp /etc/letsencrypt/live/domain.example.com/* /opt/zimbra/ssl/letsencrypt/
chown zimbra:zimbra /opt/zimbra/ssl/letsencrypt/*
ls -la /opt/zimbra/ssl/letsencrypt/

As zimbra user
cd /opt/zimbra/ssl/letsencrypt/
/opt/zimbra/bin/zmcertmgr verifycrt comm privkey.pem cert.pem chain.pem
#проверка должна пройти успешно

#далее нужно забекапить старые серты (на всякий случай)
cp -a /opt/zimbra/ssl/zimbra /opt/zimbra/ssl/zimbra.$(date "+%Y%m%d")

#далее собственно deploy
cp /opt/zimbra/ssl/letsencrypt/privkey.pem /opt/zimbra/ssl/zimbra/commercial/commercial.key

/opt/zimbra/bin/zmcertmgr deploycrt comm cert.pem chain.pem

Потом надо запустить все что остановлено, или перезапустить сервак.

источник