Напишу ниже простой пример резервного копирования mysql баз данных с помощью mysqldump.
Читать далее «Вариант резервного копирования»Архивы рубрик:Linux
Мониторим подключения по SSH через email
Приведу несколько способов как получать оповещения на электронную почту о том что кто-то подключился к серверу по SSH.
ПЕРВЫЙ СПОСОБ:
Текстовым редактором, например nano, откроем файл /etc/ssh/sshrc (в редакторе nano CTRL+X для выхода, а y/n и Enter для сохранения или отмены изменений):
sudo nano /etc/ssh/sshrc
И добавим в него следующий код:
ip=`echo $SSH_CONNECTION | cut -d " " -f 1` logger -t ssh-wrapper $USER login from $ip (echo "Subject:login($ip) on server"; echo "User $USER just logged in from $ip";) | sendmail -f server@example.com -t your-email@example.com &
Перезапускать SSH не нужно, уведомления уже должны приходить при подключениях.
ВТОРОЙ СПОСОБ:
Добавляем указанные строки в конфиг /etc/rsyslog.conf (перед каждой строкой прокомментировал суть, данный код позволит отсылать сообщения о неудачных подключениях):
# Подключаем модуль отправки сообщений $ModLoad ommail # Указываем адрес почтового сервера $ActionMailSMTPServer mail.domain.com # Указываем email с которого будут отправляться сообщения $ActionMailFrom rsyslog@domain.com # Указываем email на который будут приходить сообщения $ActionMailTo test@domain.com # Указываем тему сообщения $template mailSubject,"SSH Invalid User %hostname%" # Указываем содержание сообщения $template mailBody,"RSYSLOG\r\nmsg='%msg%'" $ActionMailSubject mailSubject # Указываем в секундах как часто могут отправляться сообщения $ActionExecOnlyOnceEveryInterval 10 # Если в логах содержатся указанные в скобках символы, тогда отсылаем сообщение if $msg contains 'Invalid user' then :ommail:;mailBody
Такой же способ отправки через rsyslog, но отсылаются уведомления об успешных подключениях (код без комментариев как выше):
$ActionMailSMTPServer mail.domain.com $ActionMailFrom rsyslog@domain.com $ActionMailTo test@domain.com $template mailSubject,"SSH Accepted pass %hostname%" $template mailBody,"RSYSLOG\r\nmsg='%msg%'" $ActionMailSubject mailSubject $ActionExecOnlyOnceEveryInterval 10 if $msg contains 'Accepted password' then :ommail:;mailBody
В итоге при успешном или не успешном подключении к серверу SSH на электронную почту будут приходить сообщения. Аналогичным способом можно анонсировать на email и другие события которые логируются через rsyslog.
iperf — тестируем пропускную способности сети
Iperf — кроссплатформенная консольная клиент-серверная программа — генератор TCP и UDP трафика для тестирования пропускной способности сети.
Читать далее «iperf — тестируем пропускную способности сети»Запуск сервера Counter-Strike Source на Linux
Создаем и открываем директорию для сервера:
mkdir srcds cd srcds
Скачиваем установщик:
wget http://storefront.steampowered.com/download/hldsupdatetool.bin
Разрешаем права на запуск:
chmod +x hldsupdatetool.bin
Запускаем установщик:
./hldsupdatetool.bin
Если не запускается, устанавливаем необходимую библиотеку:
sudo apt-get install lib32gcc1
Разрешаем права на запуск:
chmod +x steam
Скачаиваем файлы, если требуется, выполнить эту команду несколько раз:
./steam -command update -game "Counter-Strike Source" -dir .
Открываем директорию в которой находится файл запуска сервера:
cd css
Создеем необходимый конфиг server.cfg
Запускаем сервер:
./srcds_run -console -game cstrike +map de_dust -maxplayers 16 -secure -sv_lan 0 -autoupdate +ip айпи -port 27015 Пример запуска через screen: screen AmdS css /home/папкапользователя/srcds/css/srcds_run -game cstrike +map de_dust -maxplayers 16 -secure -sv_lan 0 -autoupdate +ip айпи -port 27015
Немного консольных команд:
+forward двигаться вперед +back двигаться назад +moveleft стрейфиться налево +moveright стрейфиться направо +left повернуться налево +right повернуться направо +jump подпрыгнуть +duck присесть +use использовать +attack стрелять, резать ножом +attack2 альтернативная стрельба / дополнительная функция оружия +reload перезарядить оружие slot1 1-ый слот slot2 2-ой слот slot3 3-ий слот slot4 4-ый слот slot5 5-ый слот slot6 6-ой слот slot7 7-ой слот slot8 8-ой слот slot9 9-ый слот slot10 нулевой слот cancelselect отменить messagemode говорить всем игрокам messagemode2 говорить игрокам своей команды radio1 первая группа радиокоманд radio2 вторая группа радиокоманд radio3 третья группа радиокоманд toggleconsole открыть/закрыть консоль chooseteam выбрать команду, за которую хотите играть +showscores показать статистику drop выбросить текущее оружие nightvision включить/выключить очки ночного видения impulse 201 нарисовать лого impulse 100 включить/выключить фонарь invprev переключиться на предыдущее оружие invnext переключиться на следующее оружие invlast переключиться на последнее оружие buy включить меню покупки buyammo1 купить патроны для основного оружия buyammo2 купить патроны для пистолета buyequip купить допольнительное снаряжение pause запаузить игру +voicerecord использовать голосовую коммуникацию +commandmenu показать встроенное VGUI меню showbriefing показать брифинг к карте snapshot сделать скриншот quit выйти из игры
Текст приветствия изменяется в файле motd.txt.
Карты добавляются в папку maps и прописываются в mapcycle.txt и maplist.txt.
Пример server.cfg
//Включение ведения логов log on //Записвать в лог баны sv_logbans 1 //Отображать логи в консоли сервера sv_logecho 0 //Записывать логи сервера в файл sv_logfile 1 //Записывать в лог повреждения от: 0 - выкл.; 1 - противников; 2 - своих; 3 - всех. mp_logdetail 0 // RCON лог sv_rcon_log "1" //Разрешить ботам использовать гранаты bot_allow_grenades 0 //Разрешить ботам использовать пулемёты bot_allow_machine_guns 0 //Разрешить ботам использовать пистолеты bot_allow_pistols 0 //Разрешить ботам использовать винтовки bot_allow_rifles 0 //Разрешить ботам использовать дробовики bot_allow_shotguns 0 //Разрешить ботам использовать снайперские винтовки bot_allow_snipers 0 //Разрешить ботам использовать мини-пулемёты bot_allow_sub_machine_guns 0 //Разрешить NPC на сервере mp_allowNPCs 1 //Разрешить игрокам после смерти наблюдать за другими игроками mp_allowspectators 1 //Разрешить автоприцеливание mp_autocrosshair 0 //Разрешить автокик за убийство игроков своей команды mp_autokick 0 //Разрешить автоматическую балансировку команд mp_autoteambalance 0 //Время покупки в минутах mp_buytime 0.5 //Время таймера бомбы mp_c4timer 35 //Время в секундах, в течении которого игроки смогут разговаривать между собой после окончания карты mp_chattime 10 //Колличество разрешённых декалей (спреи, пятна крови, пулевые отверстия) mp_decals 200 //После смерти экран становится чёрным, не давая игроку смотреть за другими игроками в режиме спектатора mp_fadetoblack 0 //Получать урон от падения mp_falldamage 1 //Разрешить фонарик mp_flashlight 1 //Разрешить переключения камер в режиме спектатора mp_forcecamera 1 //Максимальное колличество фрагов, при достижении которого определённым игроком карта сменится на следующую mp_fraglimit 0 //Начальный отсчёт времени в начале каждого раунда (для покупки), в секундах mp_freezetime 0 //Звуки шагов mp_footsteps 1 //Разрешить атаковать своих mp_friendlyfire 1 //Кикает игрока при убийстве заданного лимита заложников mp_hostagepenalty 0 //На сколько человек в одной команде может быть больше чем в другой mp_limitteams 1 //Максимальное количество раундов на одной карте mp_maxrounds 0 //Контролирует информацию которую игрок видит на панели статуса: 0 - все имена; 1 - только имена игроков своей команды; 2 - без имён mp_playerid 1 //Кикает игроков которые убивают членов своей команды в течении # секунд после перезапуска раунда mp_spawnprotectiontime 10 //Длина раунда в минутах mp_roundtime 3 //Начальное колличество денег у игроков mp_startmoney 800 //Ограничение по времени на карту, в минутах mp_timelimit 60 //Игрок, убивший товарища по команде, будет убит в следующем раунде mp_tkpunish 0 //Максимальное количество побед, после которой произойдёт смена карты mp_winlimit 0 //Ускорение игрока, когда он находится в воздухе (например падает) sv_airaccelerate 10 //Разрешить загрузку файлов с сервера (например карт) sv_allowdownload 1 //Разрешить загрузку файлов на сервер (например спреев) sv_allowupload 0 //Разрешить всем слышать переговоры друг друга по микрофону, вне зависимости от команды sv_alltalk 1 //Разрешить игровые читы на сервере sv_cheats 0 //Предписывает ли сервер последовательность файла для критических файлов sv_consistency 1 //e-mail администратора сервера sv_contact админ@example.com //Использовать звук шагов при передвижении игрока sv_footsteps 1 //Коэффициент трения в игре sv_friction 4 //Уровень гравитации в игре sv_gravity 800 //Максимальное количество байт в секунду, которое может быть передано сервером (0 - без ограничения) sv_maxrate 20000 //Максимальная скорость игрока sv_maxspeed 320 //Максимальное количество обновлений (количество пакетов) которое разрешено на сервере sv_maxupdaterate 40 //Минимальное количество байт в секунду, которое может быть передано сервером (0 - без ограничения) sv_minrate 0 //Минимальное количество обновлений (количество пакетов) которое разрешено на сервере sv_minupdaterate 10 //Разрешить ставить паузу во время игры sv_pausable 0 //Количество минут на которое банится игрок пытавшийся подобрать rcon пароль к серверу sv_rcon_banpenalty 15 //Максимальное количество попыток при наборе rcon пароля, после истечения которых игрок будет забанен sv_rcon_maxfailures 5 //Колличество попыток при наборе rcon пароля во время заданное sv_rcon_minfailuretime, после истечения которых игрок будет забанен sv_rcon_minfailures 5 //Колличество секунд для определения неверной rcon аутентификации sv_rcon_minfailuretime 30 //Ускорение при передвижения в режиме spectator sv_specaccelerate 5 //Разрешить игроку в режиме spectator пролетать через стены и объекты sv_specnoclip 0 //Скорость передвижения в режиме spectator sv_specspeed 3 //Собирать статистику использования процессора sv_stats 1 //Длинна шага в юнитах sv_stepsize 18 //Минимальная скорость остановки на поверхности sv_stopspeed 75 //Если сервер не получает отклика от клиента в течении # секунд, клиент отключается от сервера sv_timeout 540 //Разрешить использование микрофона sv_voiceenable 1 //rcon пароль для удалённого управления сервером rcon_password "пароль" //Загрузка файла banned_ip.cfg со списком забаненых по IP exec banned_ip.cfg //Загрузка файла banned_ip.cfg со списком забаненых по имени exec banned_user.cfg //Записываем SteamID игроков writeid //Записываем IP игроков writeip //Имя сервера hostname "Имя" //Разрешить доступ к серверу только по локальной сети sv_lan 0 //Пароль для входа на сервер sv_password "" //Регион, место расположения вашего сервера (3 - Европа) sv_region "3" //URL для загрузки файлов sv_downloadurl "" //Разрешить распрыжку sv_enablebunnyhopping 0 // 0 = Игроки могут использовать любые скины, модели и звуки // 1 = Игроки используют только тот контент, который разрешен в pure_server_whitelist.txt // 2 = Используются только оригинальные файлы SteaM (pure_server_whitelist.txt не подгружается). sv_pure // Если 1 и файлы игрока не соответствуют серверным, он будет кикнут. sv_pure_kick_clients "0" // Если 1, то сервер будет выдавать сообщение о том, что файлы клиента проверяются. sv_pure_trace "1" // 1 = Отключить награды на сервере sv_nomvp "0" // 1 = Отключить сбор статистики и награждения достижений. sv_nostats "0" // 1 = Отключить режим мести sv_nonemesis "0" // 1 = Отключить звук и сообщение, когда игрок бросает гранату sv_ignoregrenaderadio "0"
Купить клиент игры можно тут: http://store.steampowered.com/app/240/?snr=1_7_suggest__13
Links:
Модуль статистики: http://hlstats-community.org
Античит Zblock: http://zblock.mgamez.eu
Сообщество: http://hlmod.ru
Mani Admin Plugin: http://code.google.com/p/maniadminplugin/source/list
Мониторинг и администрирование http://www.hlsw.org
https://developer.valvesoftware.com/wiki/Command_Line_Options
Использование и настройка CRON
Cron — планировщик задач в UNIX-подобных операционных системах, использующийся для периодического выполнения заданий в определённое время.
Читать далее «Использование и настройка CRON»Запускаем голосовой сервер Teamspeak3
Скачиваем дистрибутив сервера Teamspeak3 с официального сайта https://www.teamspeak.com/en/downloads/
Возле кнопки Download есть также кнопка копирования ссылки, после чего можно выполнить загрузку прямо на сервер командой:
Установка и использование Screen
GNU Screen — консольная утилита-мультиплексор, предоставляющая пользователю доступ к нескольким сессиям в рамках одной сессии.
Читать далее «Установка и использование Screen»Настройка VLAN в Ubuntu
Устанавливаем пакет Vlan:
Читать далее «Настройка VLAN в Ubuntu»