SCROLL

Monthly Archives: Июль 2017

Разберем как автоматизировать процесс создания бекапов серверных систем, применимый к Windows Server 2008 R2, 2012 R2. Делать бекапы мы будем с помощью скрипта для PowerShell.

Данная статья будет мне памяткой, как добавлять пользователей, изменять, удалять пользователей в консольном режиме Debian 8 Jessie.

 

Добавление пользователя

Пользователь создается командой useradd:

sudo useradd username

 

Полезные ключи используемые при создании пользователя:

-m (--create-home) Создать домашний каталог. По-умолчанию домашний каталог не создается.
-M (--no-create-home) Не создавать домашний каталог.
-d (--home-dir HOME_DIR) Указать расположение домашнего каталога.
-N (--no-user-group) Не создавать группу с таким же именем, как имя пользователя.
-g (--gid GROUP) Название или ID первичной группы пользователя.
-G (--groups GROUPS) Указать список дополнительных групп для пользователя.
-p (--password PASSWORD) Задание пароль пользователя.
-s (--shell SHELL) Указание оболочки пользователя (прим. /bin/bash). По-умолчанию /bin/sh.
-c (--comment COMMENT) Добавить комментарий к пользователю.

 

Изменение пользователя

Изменить пользователя можно командой usermod (прим. добавление пользователя в группу):

sudo usermod -a -G www-data jakonda

 

Изменить пароль пользователю можно при помощи утилиты passwd:

sudo passwd jakonda

Иногда все мы сталкиваемся с ситуацией передачи файлов с сервера, на сервер. Легко, удобно и безопасно это делать через SSH.

Для Linux используется утилита scp (secure copy) входящая в состав OpenSSH, а для Windows аналогичная утилита pscp которая входит в состав пакета инструментов PuTTY.

Пример использования SCP на Linux

Общий синтаксис scp выглядит так:

scp [опция] [источник] [получатель]

Скачать файл с удаленного сервера на локальный:

scp [имя пользователя]@[имя сервера/ip-адрес]:[путь к файлу] [путь к файлу]

Пример:

scp root@192.168.1.10:/root/file.tar.gz /opt
В случае если на сервере используется не стандартный порт SSH, то необходимо использовать в качестве опции, ключ -P с указанием нужного порта.

Скачать папку со всеми файлами и подпапками:

scp -r [источник] [получатель]

Пример:

scp –r /var/www root@192.168.1.10:/root

Загрузить файл на удаленный сервер:

scp [путь к файлу] [имя пользователя]@[имя сервера/ip-адрес]:[путь к файлу]

Пример:

scp file.tar.gz root@192.168.1.10:/root

Пример использования PSCP на Windows

В общем и целом, синтаксис pscp не отличается от scp, но все равно рассмотрим как выполнить аналогичные операции с использованием pscp.

Скачать файл на локальную сервер:

pscp [имя пользователя]@[имя сервера/ip-адрес]:[путь к файлу] [путь к файлу]

Пример:

pscp.exe root@192.168.1.10:/home/user/file.tar.gz .
В случае если на сервере используется не стандартный порт SSH, то необходимо использовать в качестве опции, ключ -P с указанием нужного порта.

Загрузить файл на удаленный сервер:

pscp [путь к файлу] [имя пользователя]@[имя сервера/ip-адрес]:[путь к файлу]

Пример:

pscp.exe file.tar.gz root@192.168.1.10:/root

Разберем как делать резервные копии имеющихся Subversion (SVN) репозиториев в Linux среде. Все ниже описанное производилось на Debian 8 Jessie.

 

Резервное копирование репозитория

Создаем резервную копию указанного репозитория:

sudo svnadmin dump /path/to/repository > svnexport.dump

 

Создаем резервную копию указанного репозитория и сжимаем его:

sudo svnadmin dump /path/to/repository | gzip > svnexport.dump.gz

 

Резервное копирование все репозиториев (bash скриптом)

Для того чтобы автоматизировать процесс резервирования всех имеющихся репозиториев, создадим скрипт, который будет выполнять эту задачу. Скрипт с коментариями, разобратся в нем не составит труда:

#!/bin/bash
# 06/01/2018 Jakonda (http://jakondo.ru)

# Резервное копирование репозиториев (SVN)

PATH_REPO="/var/svn/"
LOCAL_DIR="/srv/backups/svn"

EXPIRATION_DAYS=28
DATE=$(date +"%y_%m_%d")

# Создаем каталог для размещения бекапов, если он не создан
if ! [ -d $LOCAL_DIR ]; then
mkdir $LOCAL_DIR
fi

# Создаем каталог с текущей датой
mkdir -p $LOCAL_DIR/$DATE

# Создание дампа всех репозиториев
cd $PATH_REPO
for REPO in *; do
 test -d "$REPO" && /usr/bin/svnadmin dump $REPO | gzip > $LOCAL_DIR/$DATE/$REPO.dump.gz
done

# Удаление старых резервных копий
find $LOCAL_DIR* -mtime +${EXPIRATION_DAYS} -exec rm {} \;
# Удаление пустых каталогов
find $LOCAL_DIR* -type d -empty -exec rmdir {} \;

 

Рассмотрим практический перенос почтового сервера на базе MS Exchange 2010 SP3, с одного сервера Windows Small Business Server 2011 на другой Windows Server 2012 R2.

Рассмотрим как сбросить забытый/утерянный пароль от root в MySQL. Рассмотрим варианты сброса пароля под Windows и Unix системах.

По умолчанию, Firewall роутеров Mikrotik разрешает все подключения. Поэтому целесообразно обезопасить роутер и локальную сеть от несанкционированного доступа из интернета. В качестве примера будет рассмотрена основная/базовая настройка Firewall.

 

Исходные данные:

  • Локальная сеть — 10.5.5.0/24
  • Интернет (Bridge соединение) — Ethernet

 

Правила начинают работать от первого к последнему. Поэтому сначала размещаем разрешающие правила, а затем запрещающие. Так же при удаленной настройке Firewall учтите, что внесенные изменения применяются сразу же, поэтому есть шанс заблокировать самих себя.

 

Определения назначения основных цепочек
  • Цепочка INPUT — Действия с пакетами, которые направляются в роутер. То есть адресованы именно на адрес роутера и дальше не пойдут.
  • Цепочка FORWARD — Действия с пакетами, проходящими через роутер. То есть пакеты посылаются какому-то адресату от какого-то адресата и через роутер проходят по пути следования. Например, когда ваш локальный компьютер хочет открыть какой либо сайт.
  • Цепочка OUTPUT — Действия с пакетами, источником которых является сам роутер.