вторник, 27 января 2015 г.

sendmail через gmail.com

Установка всего необходимого
yum -y install sendmail sendmail-cf openssl cyrus-sasl cyrus-sasl-plain nano

Создание SSL сертификатов
mkdir /etc/mail/certs
chmod 700 /etc/mail/certs 
cd /etc/mail/certs
openssl dsaparam 1024 -out dsa1024 -out dsa1024.pem
openssl req -x509 -nodes -days 3650 -newkey dsa:dsa1024.pem -out /etc/mail/certs/mycert.pem -keyout /etc/mail/certs/mykey.pem
openssl req -x509 -new -days 3650 -key /etc/mail/certs/mykey.pem -out /etc/mail/certs/mycert.pem
ln -s /etc/mail/certs/mycert.pem /etc/mail/certs/CAcert.pem

chmod 600 /etc/mail/certs/*

Создание файла с данными для аутентификации
nano /etc/mail/auth/authinfo

AuthInfo:smtp.gmail.com "U:root" "I:[email protected]" "P:PASSWORD"
AuthInfo: "U:root" "I:[email protected]" "P:PASSWORD"

Конвертируем
makemap hash -r /etc/mail/auth/authinfo < /etc/mail/auth/authinfo

Добавляем в sendmail.mc нужную конфигурацию. (Важно: сделать это до первого FEATURE)
dnl # Smrp relay
define(`CERT_DIR', `MAIL_SETTINGS_DIR`'certs')
define(`confCACERT_PATH', `CERT_DIR')
define(`confCACERT', `CERT_DIR/CAcert.pem')
define(`confSERVER_CERT', `CERT_DIR/mycert.pem')
define(`confSERVER_KEY', `CERT_DIR/mykey.pem')
define(`confCLIENT_CERT', `CERT_DIR/mycert.pem')
define(`confCLIENT_KEY', `CERT_DIR/mykey.pem')
dnl #
dnl # gmail auth
define(`SMART_HOST',`[smtp.gmail.com]')dnl
define(`RELAY_MAILER_ARGS', `TCP $h 587')dnl
define(`ESMTP_MAILER_ARGS', `TCP $h 587')dnl
define(`confAUTH_OPTIONS', `A p')dnl
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
FEATURE(`authinfo',`hash -o /etc/mail/auth/authinfo.db')dnl

Компилируем конфигурацию, перезапускаем sendmail и проверяем отправку почты
make -C /etc/mail
service sendmail restart
sendmail -f [email protected] -v [email protected]
Test
.

Проверяем результат
mailq

tail maillog

статические маршруты в CentOS

nano /etc/sysconfig/network-scripts/route-eth0
192.168.1.0/24 via 192.168.1.1

service network restart

Описанный выше метод добавления статических маршрутов после перезагрузки не сбрасывает настройки маршрутизации.

четверг, 22 января 2015 г.

Прятки на web сервере

Для того чтобы скрыть версию nginx нужно в конфигурационном файле nginx.conf в секцию http добавить строчку (/etc/nginx):
server_tokens off;

Для РНР находим строку с expose_php в php.ini и меняем параметр с On на Off (/etc):
Если таковой строки не было, то добавляем соответственно 
expose_php = Off

Для того, чтобы не показывать версию Apache, надо тоже изменить его главный конфиг и добавить в него такие строки:
ServerTokens ProductOnly
ServerSignature Off

Финальный штрих:
nginx -s reload
service httpd restart

Yum Force Reinstall

Since Yum does not have a force flag, rpm commands must be used along with Yum to do some heavy lifting. Here are a few ways to force the reinstall of a broken package on a Yum Managed system.

Yum Remove and then Install

The easiest solution is to yum remove the package and then yum install the same package. If there are too many dependencies at stake with the package in question, try another method.

yum remove PACKAGE
yum install PACKAGE

Force Erase and then Yum Install

RPM dependencies sometimes make a simple yum remove impossible and Yum will want to erase your entire OS before moving on. In this case, use rpm to force erase, then yum to install.

rpm -e --nodeps PACKAGE
yum install PACKAGE

Prune RPM Database and then Yum Install

If your package install is so corrupted that an rpm -e is dangerous or impossible, even with --nodeps, remove the package from the local RPM database to trick yum into reinstalling the package. No files are deleted when using rpm -e with --justdb.

rpm -e --justdb --nodeps PACKAGE
yum install PACKAGE

MySql SuperUser Create

mysql -u [root] -p
> [password]
GRANT ALL PRIVILEGES ON *.* TO username@"%" IDENTIFIED BY 'userpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
quit

Wiki
http://www.heidisql.com/download.php
https://www.digitalocean.com/community/tutorials/mysql-ru
http://www.mysql.ru/docs/man/Adding_users.html

Info
To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:

/usr/bin/mysqladmin -u root password 'new-password'
/usr/bin/mysqladmin -u root -h name.domen.ru password 'new-password'

Alternatively you can run:

/usr/bin/mysql_secure_installation

CentOS Static IP

## Configure eth0
#
# vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE="eth0"
NM_CONTROLLED="yes"
ONBOOT=yes
HWADDR=A4:BA:DB:37:F1:04
TYPE=Ethernet
BOOTPROTO=static
NAME="System eth0"
UUID=5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03
IPADDR=192.168.1.44
NETMASK=255.255.255.0


## Configure Default Gateway
#
# vi /etc/sysconfig/network

NETWORKING=yes
HOSTNAME=centos6
GATEWAY=192.168.1.1


## Restart Network Interface
#

/etc/init.d/network restart

## Configure DNS Server
#
# vi /etc/resolv.conf

nameserver 8.8.8.8      # Replace with your nameserver ip
nameserver 192.168.1.1  # Replace with your nameserver ip

VMware Tools on CentOS 6.5 Minimal

yum install perl gcc make kernel-headers kernel-devel -y
rpm --import http://packages.vmware.com/tools/keys/VMWARE-PACKAGING-GPG-DSA-KEY.pub
rpm --import http://packages.vmware.com/tools/keys/VMWARE-PACKAGING-GPG-RSA-KEY.pub
echo -e "[vmware-tools]\nname=VMware Tools\nbaseurl=http://packages.vmware.com/tools/esx/5.5latest/rhel6/\$basearch\nenabled=1\ngpgcheck=1" > /etc/yum.repos.d/vmware-tools.repo
yum -y install vmware-tools-esx-nox
reboot


Wiki

alternatively, if using xorg's desktop GUI
yum -y install vmware-tools-esx


cat /etc/yum.repos.d/vmware-tools.repo

[vmware-tools]
name=VMware Tools
baseurl=http://packages.vmware.com/tools/esx/5.5latest/rhel6/$basearch
enabled=1
gpgcheck=1

http://www.ehowstuff.com/how-to-install-vmware-tools-on-centos-6-5/

Failed to install module libnvdimmvmxnet3

The fix is this: in /etc/dracut.conf.d/*.conf > nvdimm-security.conf > vmware-tools.conf, edit the "add_drivers" line to ...