Обычно Debian уже установлен на арендуемой площадке, напрмиер, если речь про Digital Ocean или Hetzner.
apt-get update && apt-get upgrade
update - обновить информацию о пакетах, содержащихся в репозиториях.
upgrade - обновление пакетов, для которых в репозитории доступны новые версии.
Пароль придумать и сохранить в соответствующей документации
adduser admin --home /home/admin
vi /etc/ssh/sshd_config
Отредактировать чтобы было PermitRootLogin no
/etc/init.d/ssh restart
apt-get -y install sudo
Прописать в конфиге доступ без пароля (вопрос безопасности?!)
vi /etc/sudoers
Внести необходимые дополнения
# User privilege specification root ALL=(ALL) ALL admin ALL=(ALL) NOPASSWD: ALL %%sudo ALL=NOPASSWD: ALL %%admin ALL=NOPASSWD: ALL
Для генерации ключей нужно выполнить
ssh-keygen
Оболочка сообщит, где сохранены сгенерированные ключи
Your identification has been saved in ~/.ssh/id_rsa
Your public key has been saved in ~/.ssh/id_rsa.pub
Копируем публичный ключ на удалённый сервер
scp ./.ssh/id_rsa.pub admin@8.8.8.8:id_rsa.pub
Далее заходим на указанный сервер
ssh admin@8.8.8.8
После чего выполняем последовательность команд, складывающую ключ, куда надо
mkdir -p .ssh
chmod 700 .ssh
cd .ssh
cat ../id_rsa.pub >> authorized_keys
cat authorized_keys
chmod 600 authorized_keys
rm ../id_rsa.pub
sudo apt-get -y install vim
vi ~/.vimrc
syntax on au BufNewFile,BufRead *.html.ep set filetype=html
Это повышает комфорт работы с терминалом
vi /home/admin/.bash_profile
export PS1='\[\033[0;31m\]\u\[\033[0;33m\]@\[\033[0;36m\]\h \[\033[0;33m\]\w \[\033[0;35m\]\$ \[\033[00m\]' eval "`dircolors`" alias ls='ls $LS_OPTIONS' alias la='ls $LS_OPTIONS -lA' alias ..='cd ..' export HISTFILESIZE=99999999 export HISTSIZE=99999999 export HISTCONTROL="ignoreboth" export LS_OPTIONS='--color=auto -h' alias gs='git status ' alias ga='git add ' alias gb='git branch ' alias gc='git commit -m' alias gca='git commit -a -m' alias gac='git commit -a -m' alias gd='git diff' alias go='git checkout ' alias gk='gitk --all&' alias gx='gitx --all' alias got='git ' alias get='git '
Если например у сервера такое имя dorothy.movealong.org, то dorothy cледует указать в качестве hostname
sudo vi /etc/hostname
sudo hostname server1
hostname
Далее в /etc/hosts прописывается полное имя
sudo vi /etc/hosts
69.56.173.86 dorothy.movealong.org dorothy
https://www.movealong.org/hostname.html
Отделить лог cron'а
sudo vi /etc/rsyslog.conf
Раскомментировать строку cron.* /var/log/cron
Прописать почту для информирования об ошибках
vi /etc/crontab
MAILTO=mail@mail.ru
sudo service rsyslog restart
sudo service cron restart
Пароль придумать и сохранить в соответствующей документации
apt-get install mysql-server mysql-client
Прописать InnoDB File-Per-Table Mode: To make file-per-table mode the default for a MySQL server add this line to the [mysqld] section of my.cnf:
vi /etc/mysql/my.cnf
[mysqld] innodb_file_per_table
Прописывать аккаунт в mysqlworkbench
apt-get install apache2
a2enmod rewrite
apt-get install nginx
apt-get install git-core git-doc
Права доступа для хранилища веб-сервера
chown -R admin:admin /var/www
Настройка Apache
vi /etc/apache2/ports.conf
NameVirtualHost *:8080 Listen 127.0.0.1:8080
vi /etc/apache2/apache2.conf
Дописать в конец
ServerName hostname.com
Настройка логов Apache за Nginx'ом
Luckily, nginx provides a HTTP X-Forwarded-For header containing the clients real IP address, although apache doesn’t pick it up by default. To allow apache to recognize the original client IP, we need to install the mod_rpaf module. On ubuntu, this is as simple as installing a package
apt-get install libapache2-mod-rpaf
Once you have installed mod_rpaf, you need to configure apache. Add something similar to the following to your apache config (alter the RPAFproxy_ips setting as appropriate to match the IP address(es) of your nginx server(s)
vi /etc/apache2/apache2.conf
<IfModule mod_rpaf.c> RPAFenable On RPAFsethostname On RPAFproxy_ips 127.0.0.1 </IfModule>
apt-get install curl
apt-get install make
NET::SMTP::SSL
apt-get install libnet-smtp-ssl-perl
apt-get install libauthen-sasl-perl
curl get.mojolicio.us | sh
HTML::Template
apt-get install libhtml-template-perl
MIME/Lite.pm
apt-get install libmime-lite-perl
Image/Magick.pm
apt-get install perlmagick
GD.pm
apt-get install libgd-gd2-perl
PDF::API2
apt-get install libpdf-api2-perl
Excel::Writer::XLSX
apt-get install libexcel-writer-xlsx-perl
LWP/UserAgent
apt-get install libwww-perl
Date/Calc.pm
apt-get install libdate-calc-perl
MIME::Base64
apt-get install libemail-mime-encodings-perl
Memcached + Cache/Memcached.pm
apt-get install memcached
apt-get install libcache-memcached-perl
mysql_tzinfo_to_sql /usr/share/zoneinfo/ | mysql -u root -p mysql
Для начала убедимся, что утилиту sendmail заменяет exim4 из базовой поставки Debian:
stat /usr/sbin/sendmail
Результат должен быть таким: File: `/usr/sbin/sendmail' -> `exim4'
Если это не так, необходимо установить exim4
apt-get install exim4
dpkg-reconfigure exim4-config
Среди предлагаемых параметров выбрать отличный от предустановленных только на
первом экране: internet site; mail is sent and received directly using SMTP
и на втором экране - имя хоста.
Из под обычного пользователя
ssh-keygen
cat ~/.ssh/id_rsa.pub
После чего добавить ключ в профайл
Из под root
apt-get install hunspell
русский словарь: https://code.google.com/p/hunspell-ru/
wget https://bitbucket.org/Shaman_Alex/russian-dictionary-hunspell/downloads/ru_RU_UTF-8_20131101.zip
копируем словари в /usr/share/hunspell
apt-get install unzip
unzip ru_RU_UTF-8_20131101.zip
mv ru_RU.dic /usr/share/hunspell/
mv ru_RU.aff /usr/share/hunspell/
узнаём версию дебиан:
Use the command:
/bin/uname -m
You will typically get: «i686» for 32-bit (maybe 'i586' is an possibility too?), and: «x86_64» for 64-bit.
lsb_release -a
cat /etc/debian_version
Из под root
скачиваем нужный пакет: http://sphinxsearch.com/downloads/release/
Debian 7 / 32:
wget http://sphinxsearch.com/files/sphinxsearch_2.1.4-release-1~wheezy_i386.deb
Debian 7 / 64:
wget http://sphinxsearch.com/files/sphinxsearch_2.1.6-release-1~wheezy_amd64.deb
apt-get install libpq5
Debian 7 / 32:
dpkg -i sphinxsearch_2.1.4-release-1~wheezy_i386.deb
Debian 7 / 64:
dpkg -i sphinxsearch_2.1.6-release-1~wheezy_amd64.deb
Автозапуск Sphinx
в файл
vi /etc/rc.local
добавить
mkdir -p /var/run/sphinxsearch /etc/init.d/sphinxsearch start