рд╕рднреА рдХреЛ рдирдорд╕реНрдХрд╛рд░ред
рдЖрдЬ рд╣рдо Ubuntu рд╕рд░реНрд╡рд░ рд╕рдВрд╕реНрдХрд░рдг рдкрд░ example.org рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛ рд╕реНрд╡рдпрдВ рдХрд╛ рдЬреИрдмрд░ рд╕рд░реНрд╡рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВрдЧреЗред
рдЗрд╕ рд╕рд░реНрд╡рд░ рдкрд░ ICQ рдФрд░ рдЬреИрдмрд░ рддрдХ рдкрд░рд┐рд╡рд╣рди рд╣реЛрдЧрд╛ред рд▓реЙрдЧ рдХреЛ example.org/logs рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдХреЛ рд▓рд┐рдЦрд╛ рдЬрд╛рдПрдЧрд╛ред рд▓реЙрдЧ рдХреЛ рдореЛрдмрд╛рдЗрд▓ рдбрд┐рд╡рд╛рдЗрд╕ (рдлреИрдВрд╕реАрдЗрдВрдбреЗрдХреНрд╕ + htpasswd + fail2ban) рд╕реЗ рдЖрд╕рд╛рдиреА рд╕реЗ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдпрд╣ рд╕рдордЭрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдХрдо рд╕реЗ рдХрдо рд▓рд┐рдирдХреНрд╕ рдкрд░ рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬрд╛рдирддреЗ рд╣реИрдВред рдпрд╣ рднреА рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ: рдирд┐рд░реНрджреЗрд╢ рдПрдХ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ рдкреНрд░рдХрд╛рд╢ рд╣реИ, рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рджрд┐рд╢рд╛ рджреЗрддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ 100% рдкреВрд░рд╛ рдХрд░рдиреЗ рдХрд╛ рдЖрдЧреНрд░рд╣ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ 100% рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдХрд╡рд░ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЖрдкрдХреЛ рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдФрд░ mysql рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдореИрдВ рдПрдХ рд╣реЛрд╕реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдХреНрд▓реЛрдбреЛ.ru рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реВрдВрдЧрд╛ред рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ, рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рдЯреБрдХрдбрд╝реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рд╕реА рдЕрдиреНрдп рд╡рд┐рддрд░рдг / рд╣реЛрд╕реНрдЯрд░ рдкрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдЪрд░рдг 1. рд╕рд░реНрд╡рд░ рд╡рд╛рддрд╛рд╡рд░рдг рддреИрдпрд╛рд░ рдХрд░рдирд╛ред
рд╣рдо рд╣реЛрд╕реНрдЯрд░ рдХреЗ рд╕рд╛рде рд░рдЬрд┐рд╕реНрдЯрд░ рдХрд░рддреЗ рд╣реИрдВ, ubuntu lucid 10.04 LTS 32-bit, 512MB рдореЗрдореЛрд░реА, 5GB SAS рдХреЗ рд╕рд╛рде рдПрдХ рд╕реНрдХреЗрд▓-рд╕рд░реНрд╡рд░ рдмрдирд╛рддреЗ рд╣реИрдВред
рд░реВрдЯ рдПрдХреНрд╕реЗрд╕ рдФрд░ рдЕрдиреНрдп рд╡рд┐рд╡рд░рдг рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рд╕рд░реНрд╡рд░ рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВред
рд╣рдо рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддреЗ рд╣реИрдВ рдЬрдм рддрдХ рдХрд┐ dpkg рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдЕрдкрдбреЗрдЯ рди рдХрд░реЗ:
ps uxa | egrep '(firstrun|local|apt|dpkg)'
рдЗрд╕рд╕реЗ рдмрджрд▓реЗрдВ /etc/apt/source.list:
deb ru.archive.ubuntu.com/ubuntu lucid main restricted
deb ru.archive.ubuntu.com/ubuntu lucid-updates main restricted
deb ru.archive.ubuntu.com/ubuntu lucid universe
deb ru.archive.ubuntu.com/ubuntu lucid-updates universe
deb ru.archive.ubuntu.com/ubuntu lucid multiverse
deb ru.archive.ubuntu.com/ubuntu lucid-updates multiverse
deb ru.archive.ubuntu.com/ubuntu lucid-backports main restricted universe multiverse
deb archive.canonical.com/ubuntu lucid partner
deb security.ubuntu.com/ubuntu lucid-security main restricted
deb security.ubuntu.com/ubuntu lucid-security universe
deb security.ubuntu.com/ubuntu lucid-security multiverse
deb packages.spectrum.im lucid spectrum
рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рдлрд╝рд╛рдЗрд▓ /etc/apt/apt.conf.d/03test рдмрдирд╛рдПрдБ:
APT::Install-Recommends "false";
APT::Install-Suggests "false";
рд╕реНрдкреЗрдХреНрдЯреНрд░рдо рдХреБрдВрдЬреА (рд╣рдорд╛рд░реЗ рднрд╡рд┐рд╖реНрдп рдХреЗ Jabber рдкрд░рд┐рд╡рд╣рди) рдЬреЛрдбрд╝реЗрдВ:
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 47A944AF1905866A
рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП рд╣реЛрд╕реНрдЯрдирд╛рдо рдмрджрд▓реЗрдВ:
fgrep -r $(uname -n) /etc
рд╣рдо рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рд▓рд╛рдЗрдиреЛрдВ рдХреА рдЬрдЧрд╣ рд▓реЗрддреЗ рд╣реИрдВред рд╣рдореЗрдВ рдЬрд╝рд░реВрд░рдд рд╣реИ, рдлрд┐рд░ hostname рдмрджрд▓реЗрдВ:
hostname example.org
рд╣рдо рдЕрдкрдиреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП sudo рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╣реИрдВ:
visudo
рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдВрдд рдореЗрдВ, рджрд░реНрдЬ рдХрд░реЗрдВ:
user ALL=(ALL) ALL
рд╣рдо рдХреБрдВрдЬреА рджреНрд╡рд╛рд░рд╛ рдкрд╣реБрдВрдЪ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╣реИрдВ (Google рдпрд╣ рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдмрдирд╛рдП рдЧрдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдХреАрд╡рд░реНрдб ssh-Agent, ssh-keygen -t rsa, ssh-copy-id)ред
рд╣рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЙрдЧ рдЗрди рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ sudo su рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреА рднреА рдЬрд╛рдВрдЪ рдХрд░рддреЗ рд╣реИрдВред рдЙрд╕рдХреЗ рдмрд╛рдж, рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ / рдЖрджрд┐ / ssh / sshd_configред
рдЖрд╡рд╢реНрдпрдХ рд╡рд┐рдХрд▓реНрдк:
PermitRootLogin no
PasswordAuthentication no
RSAAuthentication yes
PubkeyAuthentication yes
рдЙрд╕рдХреЗ рдмрд╛рдж, рд╣рдо SSH рдХреЛ рдкреБрдирдГ рдЖрд░рдВрдн рдХрд░рддреЗ рд╣реИрдВ (рдпрд╣рд╛рдВ, рд╕рд╛рд╡рдзрд╛рди рд░рд╣реЗрдВ, рд╣рдордиреЗ рдкрд╛рд╕рд╡рд░реНрдб, рд╕рд╛рде рд╣реА рд░реВрдЯ рддрдХ рдкрд╣реБрдВрдЪ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░ рджрд┐рдпрд╛ред рд╣рдо рдХреНрд▓реЛрдХреЛ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╡реАрдПрдирд╕реА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдпрд╛ рдХреЗрд╡реАрдПрдо рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдпрд╣рд╛рдВ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдЬрд╛рдо рдХреЛ рдареАрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рд╕рд░реНрд╡рд░ рдХрдВрд╕реЛрд▓ рддрдХ рднреМрддрд┐рдХ рдкрд╣реБрдВрдЪ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ:
service ssh restart
UTF-8 рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рдПрдХ рдкреНрд░рдгрд╛рд▓реА рдХрд╛ рдирд┐рд░реАрдХреНрд╖рдг рдХрд░реЗрдВ:
рдлрд╝рд╛рдЗрд▓ /var/lib/locales/supported.d/locale.gen рдХрд╛ рд╕рдВрдкрд╛рджрди
ru_RU.UTF-8 UTF-8
en_US.UTF-8 UTF-8
рдФрд░ рдлрд╝рд╛рдЗрд▓ / рдЖрджрд┐ / рдкрд░реНрдпрд╛рд╡рд░рдг
LANGUAGE=ru_RU.UTF-8
LANG=ru_RU.UTF-8
рд╣рдо рд╕реНрдерд╛рди рдЙрддреНрдкрдиреНрди рдХрд░рддреЗ рд╣реИрдВ:
dpkg-reconfigure locales
рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░, рдЖрдк SSH рдХреНрд▓рд╛рдЗрдВрдЯ рдореЗрдВ UTF-8 рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдХреЗ рд╕рд░реНрд╡рд░ рдкрд░ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред рд░реВрд╕реА рднрд╛рд╖рд╛ рджрд┐рдЦрд╛рдИ рджреЗрдЧреАред
/Etc/rc.local рдРрдб рдореЗрдВ:
sysctl -w vm.swappiness=100
su -c 'echo 0 > /sys/devices/system/xenmgm/xenmgm0/memmin_bytes'
su -c 'echo 60000000 > /sys/devices/system/xenmgm/xenmgm0/reserve_free_bytes'
рдпрд╣ рд╕рд░реНрд╡рд░ рдкрд░ рдкреИрд╕реЗ рдмрдЪрд╛рдПрдЧрд╛ (рдХреНрд▓реЛрдбреЛ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ)ред
рдЖрд╡рд╢реНрдпрдХ рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ:
apt-get install libpurple0-minimal htop strace apache2 mysql-server spectrum python python-twisted python-imaging postfix iptables fail2ban mailutils mpack subversion
рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рджреМрд░рд╛рди, рд╕рд┐рд╕реНрдЯрдо MySQL рд╕реЗ рд░реВрдЯ рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рд▓рд┐рдП рдкреВрдЫреЗрдЧрд╛ рдХрд┐ рдореЗрд▓ рд╕рд░реНрд╡рд░ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░реЗрдЧрд╛ (рдЗрдВрдЯрд░рдиреЗрдЯ рд╕рд╛рдЗрдЯ, рдбреЛрдореЗрди рдирд╛рдо example.org рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ)ред
Example.org рдХреЗ рд▓рд┐рдП рдЬрд╝реЛрди рдореЗрдВ, рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ:
example.org. A 1.2.3.4 ( IP-)
example.org MX 10 example.org.
_xmpp-server._tcp.example.org. SRV 0 0 5269 example.org.
_xmpp-client._tcp.example.org. SRV 0 0 5222 example.org.
_jabber._tcp.example.org. SRV 0 0 5269 example.org.
example.org. TXT "v=spf1 a mx ~all"
* CNAME @
рд╣рдо / etc / рдЙрдкрдирд╛рдо рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдХреЗ рдЙрдкрдирд╛рдореЛрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╣реИрдВ:
root: myemail@gmail.com
user:: myemail@gmail.com
рдЙрдкрд╕рд░реНрдЧ рдХреЗ рд▓рд┐рдП рдЙрдкрдирд╛рдо рдЙрддреНрдкрдиреНрди рдХрд░рдирд╛:
newaliases
рд╣рдо рдПрдХ рдкрд░реАрдХреНрд╖рдг рдкрддреНрд░ рднреЗрдЬрддреЗ рд╣реИрдВ:
mail -s test user [ enter]
CC: [ enter]
[ ctrl+d]
рд╣рдо рд▓реЙрдЧ рдЗрди /var/log/mail.info, рд╕рд╛рде рд╣реА рдореЗрд▓рдмреЙрдХреНрд╕ myemail@gmail.com рдореЗрдВ рдкрддреНрд░ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВред
рдпрджрд┐ рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реИ, рддреЛ рдЖрдЧреЗ рдмрдврд╝реЗрдВ!
рдИрдореЗрд▓ рджреНрд╡рд╛рд░рд╛ рд░рд┐рдмреВрдЯ рд╕реВрдЪрдирд╛рдУрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВред
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ, рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВ:
crontab -e
рд╣рдо рд▓рд╛рдЗрди рд▓рд┐рдЦрддреЗ рд╣реИрдВ:
@reboot echo "server rebooted at `date`" | mail -s "Server `uname -n` Rebooted!" user@example.org
рдзреНрдпрд╛рди рджреЗрдВ, рдпрджрд┐ рдЖрдк рджрд┐рдирд╛рдВрдХ рдореЗрдВ +% рд╕рдВрд╢реЛрдзрдХ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдкрд░рд┐рд░рдХреНрд╖рдг рдХреЛ рдкреНрд░рддрд┐рд╢рдд рдХреЗ рд╕рд╛рдордиреЗ рд░рдЦрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: $ (рджрд┐рдирд╛рдВрдХ + \% mредред ред
рдЪрд░рдг 2. рд╣рдорд╛рд░реА рдЬрдмреНрдмрд╛рд░ рдХреА рд╕реНрдерд╛рдкрдирд╛ред
Ejabberd рд╡рд┐рддрд░рдг рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВред
cd /usr/src
wget www.process-one.net/downloads/ejabberd/2.1.6/ejabberd-2.1.6-linux-x86-installer.bin.gz
gunzip ejabberd-2.1.6-linux-x86-installer.bin.gz
chmod +x ejabberd-2.1.6-linux-x86-installer.bin
./ejabberd-2.1.6-linux-x86-installer.bin
рд╕реНрдерд╛рдкрдирд╛ рд╕рд░рд▓ рд╣реИред
рд╣рдо рднрд╛рд╖рд╛ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ, рдкреВрд░реЗ рд▓рд╛рдЗрд╕реЗрдВрд╕ рд╕рдордЭреМрддреЗ рдХреЛ рдзреНрдпрд╛рди рд╕реЗ рдкрдврд╝реЗрдВ, рдкреНрд░рд╢реНрди рдХреЗ рдЙрддреНрддрд░ рдореЗрдВ "y" рдЪреБрдиреЗрдВ: "рдХреНрдпрд╛ рдЖрдк рд▓рд╛рдЗрд╕реЗрдВрд╕ рд╕рдордЭреМрддреЗ рдХреА рд╢рд░реНрддреЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ? : рд╣рдо рдХреНрд▓рд╕реНрдЯрд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ:
[y/N]: N
----------------------------------------------------------------------------
ejabberd .
? [Y/n]: Y
Ejabberd рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдЧрд╛ред
рд╕рд░реНрд╡рд░ рдкреНрд░рдмрдВрдзрди /opt/ejabberd-2.1.6/bin рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реЗ рдЖрддрд╛ рд╣реИ
рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП ejabberd рдкреНрд░рд▓реЗрдЦрди рджреЗрдЦреЗрдВред
рдЕрдм рд╣рдо /opt/ejabberd-2.1.6/conf/ejabberd.cfg рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ, рдЗрд╕реЗ рдЖрд╡рд╢реНрдпрдХ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдХрд░ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ:
{рдореЙрдбреНрдпреВрд▓:
{mod_log_chat, [{path, "/opt/ejabberd-2.1.6/www"}, {format, html}]},
{рд╕реБрдиреЛ,:
{8888, ejabberd_service, [
{access, all},
{shaper_rule, fast},
{ip, {127, 0, 0, 1}},
{hosts, ["icq.example.orgтАЭ, "sms.example.org"],
[{password, "iearhg98a3hg89h3498gha9"}]
}
]},
{8883, ejabberd_service, [
{access, all},
{shaper_rule, fast},
{ip, {127, 0, 0, 1}},
{hosts, ["j2j.example.org"],
[{password, "ojer0jg0a9jg09j0gjreg0"}]
}
]},
рдЬрд╛рдБрдЪ рдХрд░реЗрдВ рдХрд┐ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ /opt/ejabberd-2.1.6/www рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдЙрд╕рдХреЗ рдкрд╛рд╕ 0755 рдЕрдзрд┐рдХрд╛рд░ рдереЗред
рдЕрдм рдЖрдкрдХреЛ mod_log_chat рдореЙрдбреНрдпреВрд▓ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдФрд░ рдЗрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
cd /usr/src
svn co svn.process-one.net/ejabberd-modules
cp ejabberd-modules/mod_log_chat/trunk/src/mod_log_chat.erl /opt/ejabberd-2.1.6/
cd /opt/ejabberd-2.1.6
bin/erlc -I includes/ejabberd/include mod_log_chat.erl
mv mod_log_chat.beam lib/ejabberd-2.1.6/ebin/
rm mod_log_chat.erl
рдЕрдм рдИрдЬрд╝рдмрд░реНрдб рдЪрд▓рд╛рдПрдВ рдФрд░ рдкрд░реАрдХреНрд╖рдг рдХрд░реЗрдВ, рдХрд┐рд╕реА рдХреЛ рд╕рдВрджреЗрд╢ рд▓рд┐рдЦреЗрдВ, рд▓реЙрдЧ рджреЗрдЦреЗрдВред рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдИрдЬрдмрд░реНрдб рдмрдВрдж рдХрд░реЛред
cd /opt/ejabberd-2.1.6/bin
./start
./stop
рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ /etc/rc.local рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ 0:
sleep 10
su -c '/opt/ejabberd-2.1.6/bin/start'
рдЪрд░рдг 3. рд╣рдо ICQ рдкрд░ рдкрд░рд┐рд╡рд╣рди рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╣реИрдВред
рд╣рдо picicq-t рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЬреИрдмрд░ рдЬреЛрдбрд╝реЗрдВ:
useradd -m -s /bin/bash jabber
passwd jabber
su jabber
cd
рдЕрдкрдиреЗ jabber рдШрд░ рдореЗрдВ pyicqt.googlecode.com рд╕реЗ
pyicqt рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ рдФрд░ рдкрд░рд┐рд╡рд╣рди рдХреЛ рдЕрдирдкреИрдХ рдХрд░реЗрдВред
wget pyicqt.googlecode.com/files/pyicqt-0.8.1.5.tar.gz
tar zvxf pyicqt-0.8.1.5.tar.gz
mv pyicqt-0.8.1.5 pyicqt
cd pyicqt
cp config_example.xml config.xml
Config.xml рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ, рдКрдкрд░ рджрд┐рдП рдЧрдП рд╕рдм рдХреБрдЫ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЗрдЯ рдХрд░реЗрдВ, рд╕рд░реНрд╡рд░ 127.0.0.1, рдкреЛрд░реНрдЯ 8888, рдЧреБрдкреНрдд рдЯреЛрдХрди - рдкрд╛рд╕рд╡рд░реНрдб, рдПрдиреНрдХреЛрдбрд┐рдВрдЧ cp1251, login.icq.com, 5190, рднрд╛рд╖рд╛ рдЖрд░рдпреВ - рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реНрд╡рдпрдВ рдХреЗ рд▓рд┐рдП рдмреЛрд▓рддрд╛ рд╣реИред
0 рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ /etc/rc.local рдореЗрдВ рд╕рдВрд▓рдЧреНрди рдХрд░реЗрдВ:
su -c 'python /home/jabber/pyicqt/PyICQt.py > /home/jabber/pyicqt/log 2>&1 &' - jabber
рдЪрд░рдг 4. рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ j2j рдкрд░рд┐рд╡рд╣рди:
cd /etc/spectrum/
wget spectrum.im/attachments/download/14/mysql_schema.sql
Mysql рдХрдорд╛рдВрдб рдкрд╛рд╕рд╡рд░реНрдб рдкрд╛рд╕ рдФрд░ рдбреЗрдЯрд╛рдмреЗрд╕ j2j рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ j2j рдмрдирд╛рддрд╛ рд╣реИред
mysql -u j2j -p'pass' j2j < mysql_schema.sql
mv spectrum.cfg.example spectrum.cfg
рд╕реНрдкреЗрдХреНрдЯреНрд░рдо рдХрд╛ рд╕рдВрдкрд╛рджрдиред
jid=j2j.example.org
password=_
port=8883
filetransfer_cache=/var/lib/spectrum/filetransfer_cache
name=j2j
language=en
enable_public_registration=1
[logging]
log_file=/var/log/spectrum/$jid.log
log_areas=
[database]
type=mysql
host=localhost
user=j2j
password=pass
database=j2j
prefix=j2j_
Log_areas рдкрд░ рдзреНрдпрд╛рди рджреЗрдВ, рдлрд╝реАрд▓реНрдб рдХреЛ рдЦрд╛рд▓реА рдЫреЛрдбрд╝рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ, рдЕрдиреНрдпрдерд╛ / var / log / рд╕реНрдкреЗрдХреНрдЯреНрд░рдо рд▓реЙрдЧ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХрдЪрд░рд╛ рд╣реЛрдЧрд╛ред
рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ /etc/rc.local рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ 0:
/etc/init.d/spectrum start
рдЪрд░рдг 5. рджреЗрдЦрдиреЗ рдХреЗ рд▓реЙрдЧ рд╕реЗрдЯ рдХрд░реЗрдВ:
рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ apache2 рдХреЛ example.org рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП /home/user/www/example.org рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдПрдХ рд╕рд┐рдорд▓рд┐рдВрдХ рдмрдирд╛рдПрдБ:
lrwxrwxrwx 1 рд░реВрдЯ рд░реВрдЯ 24 2011-03-04 13:24 рдЪреИрдЯ -> /opt/ejabberd-2.1.6/www/
рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде /opt/ejabberd-2.1.6/www/.htaccess рдмрдирд╛рдПрдБ:
Options +Indexes
IndexOptions FancyIndexing
IndexOptions +SuppressSize
IndexOrderDefault Descending Date
AuthType Basic
AuthName "wat"
AuthUserFile /opt/ejabberd-2.1.6/www/.htpasswd
Require valid-user
рдЖрдк /opt /ejabberd-2.1.6/www/.htpasswd рдлрд╝рд╛рдЗрд▓ рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрд╕рдХреЗ рд╕рд╛рде:
www.htaccesstools.com/htpasswd-generatorFail2ban рд╣рдореЗрдВ рдкрд╛рд╕рд╡рд░реНрдб рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдиреЗ рд╕реЗ рдмрдЪрд╛рдПрдЧрд╛ред рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рди рднреВрд▓реЗрдВ:
update-rc.d SERVICENAME defaults
рд╡рд╣ рд╕рдм рд╣реИред рд░рд┐рдмреВрдЯ рдХреЗ рдмрд╛рдж, рдЕрдЧрд░ рд╕рдм рдХреБрдЫ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рд╕рд░реНрд╡рд░ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред
рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП, рдореИрдВ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдФрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЙрдкрдирд╛рдо рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд╕рд╛рде PSI + рдЧреНрд░рд╛рд╣рдХ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВред рдпрд╣ рдПрдХ рдЫрд┐рдкрд╛ рд╣реБрдЖ рд╡рд┐рдХрд▓реНрдк рд╣реИ, рд╡рд┐рдХрд▓реНрдк / рд╕рдВрдкрд░реНрдХ рд╕реВрдЪреА рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛:
bool options.contactlist.resolve-nicks-on-contact-add true
Android рдХреЗ рд▓рд┐рдП, рдореИрдВ Xabber рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВред
рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рдкрдврд╝рддреЗ рд╕рдордп рдкрд░реАрдХреНрд╖рдг рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рджреЗрдЦрдиреЗ рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
рдЗрдЬрд╝рдмрд░реНрдб рд▓реЙрдЧ: /opt/ejabberd-2.1.6/logs
рдпреЗ рд▓реЙрдЧ рдХрд╣реЗрдВрдЧреЗ рдХрд┐ рд╕рд░реНрд╡рд░ рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╢реБрд░реВ рд╣реБрдЖ, рдЖрдо рддреМрд░ рдкрд░ рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рд╕рдорд╕реНрдпрд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдореЗрдВ рд╣реЛрддреА рд╣реИ, рдЖрджрд┐ред
рд╕реНрдкреЗрдХреНрдЯреНрд░рдо рд▓реЙрдЧ: / var / рд▓реЙрдЧ / рд╕реНрдкреЗрдХреНрдЯреНрд░рдо
рдЗрд╕реА рддрд░рд╣, рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рд╕рд╛рде, рд╕реНрдкреЗрдХреНрдЯреНрд░рдо рд▓реЙрдЧ рдХреЛ рднрд░ рджреЗрдЧрд╛
Ejabberctl: /opt/ejabberd-2.1.6/bin/ejabberdctl
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкрд╛рд╕рд╡рд░реНрдб рдмрдирд╛рдиреЗ, рд╣рдЯрд╛рдиреЗ, рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЕрд▓реНрдЯреНрд░рд╛-рдЙрдкрдпреЛрдЧреА рдЙрдкрдпреЛрдЧрд┐рддрд╛, рдЬрдм рддрдХ рд╡реЗ рд░реЛрд╕реНрдЯрд░, рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдФрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЙрдкрдирд╛рдореЛрдВ рдХрд╛ рдкрддрд╛ рдирд╣реАрдВ рд▓рдЧрд╛рддреЗ рд╣реИрдВред
рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рд╕рд╛рдЗрдЯреЗрдВ:
ejabberd.imspectrum.imcode.google.com/p/pyicqtgoogle.comрдЖрдк рдХреЗ рд╕рд╛рде рд╕рдВрдкрд░реНрдХ рдореЗрдВ, рдЯрд╛рдЗрдкреЛ рдФрд░ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИрдмреНрд░рд╣реЛрдкрд╢рддрд╛ рдпрд╛ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рд▓рд┐рдЦреЗрдВ, рдореИрдВ рд╕рд╣реА рдХрд░реВрдВрдЧрд╛ред