Showing posts with label ubuntu. Show all posts
Showing posts with label ubuntu. Show all posts

December 10, 2016

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

Если нужно перенести файлы с одного VPS/VDS или просто сервера на другой, не обязательно сначала скачивать их себе на компьютер, можно скопировать напрямую.

Прежде всего, определимся, что сервер-источник это ОТКУДА нужно перенести, а сервер назначения - это КУДА нужно перенести.

Для этого зайдите по SSH на сервер назначения и воспользуйтесь командой scp:
scp root@source.com:/home/file /home/file

Если нужно перенести всю папку, укажите параметр -r (рекурсивно)
Чтобы сохранить оригинальные даты, укажите -p.
scp -r -p root@source.com:/home/my_dir /home
внимание, дописывать имя нужной папки к пути назначения не нужно
Если на сервере, к которому подключаемся, нестандартный порт SSH. укажите его с помощью -P:
scp -P 22 -r -p root@source.com:/home/my_dir /home

Пароль от пользователя, под которым авторизуетесь, держите наготове, сразу спросит.

Перенесенные файлы сохранят оригинальное время модификации (date changed/modified).

Внимание! В scp нет фильтров по существующим на сервере назначения объектам, и по определённым папкам. Перезапишет всё подряд. Перенося сайт, например, пропустить папку ./.git не выйдет.

September 30, 2014

Как устранить уязвимость Shellshock на сервере или VDS под управлением Debian

Проверьте присутствует ли уязвимость:

env X="() { :;} ; echo busted" bash -c "echo stuff"

Если в выводе содержится "busted", дыра Shellshock присутствует.


Как это выглядит на уязвимой машине под управлением Debian OpenVZ VPS:

Вверху видно что текущая версия Bash это 4.2.


Теперь латаем дыру.


Обновляем список пакетов.

apt-get update

Проверьте свою версию баша. В моем случае это была 4.2+dfsg-0.1+deb7u3. Обновите баш. Здесь описано как выбрать определенную версию пакета для установки в случае если доступны несколько.

apt-get install bash=4.2+dfsg-0.1+deb7u3

Воткак выглядит пропатченный сервер:

Старая версия была 4.2+dfsg-0.1, после обновления стала 4.2+dfsg-0.1+deb7u3. Ну и последний тест, в результате которого значение busted не выводится.


Источник: http://habrahabr.ru/company/mailru/blog/238475/

How to quickly check and fix the Shellshock Bash vulnerability

First, see if this applies to you. Though since all of the bash versions for the last 25 years are vulnerable to this exploit, it most likely does.


To check if your machine has the Shellshock vulnerability, run the following:

env X='() { :;}; echo vulnerable' bash -c "echo this is a test"

If the output includes "busted", the machine is vulnerable to the Shellshock exploit.


Here's an example of how the output looks like on an infected Debian OpenVZ VPS:

At the top of the output you can see the current Bash version being 4.2.


Now, this is the time to update your bash version to the one that is more secure and has the exploit patched.


First, update the package list.

apt-get update

Refer to this in case you get the GPG errors.

Then see what's the latest Bash version you got. In my case it was 4.2+dfsg-0.1+deb7u3. Upgrade Bash to the latest version. Here's how you can specify which version of the package to install in case you have multiple available.

apt-get install bash=4.2+dfsg-0.1+deb7u3

This will install the recent version.


Here's how the patched VPS looks like now:

As you can see, initially the bash version was 4.2+dfsg-0.1, and after the upgrade it's 4.2+dfsg-0.1+deb7u3. Then there's another test which doesn't output the busted value anymore.


Source: http://habrahabr.ru/company/mailru/blog/238475/

UPD: More vulnerabilities to test against: http://en.wikipedia.org/wiki/Shellshock_(software_bug)#Reported_vulnerabilities. Bad news is that not all of those are fixed by the update, so now we wait.

How To Install A Specific Package Version On A Debian Machine

apt-cache policy bash then see what versions are available then type apt-get install package=version see the image for an example
source: http://blog.andrewbeacock.com/2007/03/how-to-install-specific-version-of.html

November 1, 2011

root

Confucius say:
He who play in root, eventually kill tree.

August 23, 2011

Simple Server Backup To FTP Using TAR

vi /root/backup.sh
#!/bin/sh

# prostoorgru.blogspot.com

### MySQL Connection Params ###
MYSQLU="root"
MYSQLP="hackme"
MYSQLS="localhost"

### FTP Connection params ###
FTPD="/backup/server3"
FTPU="ftp_user"
FTPP="ftp_password"
FTPS="ftp_server"

### Binaries ###
TAR="$(which tar)"
FTP="$(which ftp)"
MYSQL="$(which mysql)"
MYSQLDUMP="$(which mysqldump)"
GZIP="$(which gzip)"

## Time format YYYY-MM-DD_HH-II-SS ###
NOW=$(date +%Y-%m-%d_%H-%M-%S)


### Temporary backup directory ###
TMP_BACKUP_DIR=/tmp/backup$NOW
mkdir $TMP_BACKUP_DIR

### Backup itself ###
# Examples #
cd /etc && $TAR -czpf $TMP_BACKUP_DIR/my-etc-configs.tgz *
cd /home/example.com && $TAR -czpf $TMP_BACKUP_DIR/example.com.tgz --exclude=*.log --exclude=*.zip *
cd /root && $TAR -czpf $TMP_BACKUP_DIR/my-shell-scripts-from-root.tgz *.sh

### MySQL ###
DATABASES="$($MYSQL -u$MYSQLU -h $MYSQLS -p$MYSQLP -Bse 'show databases;')"
for db in $DATABASES
  do
    FILE=$TMP_BACKUP_DIR/$db.sql.gz
    $MYSQLDUMP --add-drop-table --allow-keywords -q -c -u $MYSQLU -h $MYSQLS -p$MYSQLP $db $i | $GZIP -9 > $FILE
done


### Now collect everything into one archive ###
ARCHIVE=`hostname`_$NOW.tgz
cd $TMP_BACKUP_DIR && $TAR -czf $TMP_BACKUP_DIR/$ARCHIVE --exclude=$ARCHIVE *

### Upload to FTP ###
cd $TMP_BACKUP_DIR
$FTP -n $FTPS <<END_SCRIPT
quote USER $FTPU
quote PASS $FTPP
cd $FTPD
mput $ARCHIVE
quit
END_SCRIPT

### Clean ###
rm -rf $TMP_BACKUP_DIR

echo ""
Explanation of commands in "Backup itself" section:
cd %folder_to_back-up% && tar to tmp_dir/%archive_name%.tgz --exclude=%something% *pack_everything*
The last * symbol stands for 'archive everything'. If you need to back up only specific file type, pass the *.ext pattern, e.g. *.php.

This will add an entry to the crontab file telling your system to execute a backup task every 12 hours -- at 1AM and 1PM (i.e. 13:00) at top of the hour (i.e. 00 minutes):
chmod +x /root/backup.sh && echo "00 1,13 * * * sh /root/backup.sh 2>/dev/null" >> /etc/crontab
You can generate any cron schedule that specifically fits your needs.

Sources:

August 21, 2011

List and remove optional packages on Debian

First, install aptitude:
apt-get update && apt-get install -y aptitude

That's how you list optional (i.e. unnecessary) packages that are already installed on your system with aptitude:
aptitude search '?installed?priority("optional")'|sed -ne 's/^i [ A] \([^ ]*\).*$/\1/p' | tr '\n' ' ' | sort -u|fold -s>optional.txt

You may also want to delete them:
apt-get purge `cat optional.txt`

Be careful! Manually check optional.txt in order to make sure any needed packages (like openssh-server) won't get removed.
Once again, be careful! The package names you leave in optional.txt are the ones to be removed! Basically, the optional.txt file is the list of packages that will be purged from your system.

These links had helped me a lot:

August 16, 2011

Rumus для работы с ForexClub на удаленном сервере под Ubuntu

Выбираем дешёвый VPS :)

Устанавливаем десктоп и VNC-сервер (для удаленного доступа).

Например, я себе ставил OpenBox. Команда установки и запуска одной строкой:
apt-get update && apt-get install -y xorg openbox tightvncserver && vncserver -geometry 1024x768 -depth 16


Затем, собственно, установка. DEB-пакет заберем с сайта разработчика (forexclub) и установим через dpkg.
(внимание, если apt-get update уже копировали из предыдущей команды, то еще раз не надо):
apt-get update && apt-get install -y libqtcore4 libqtgui4 libqt4-xml libqt4-network && wget http://download.fxclub.org/Rumus2/FxClub/Rumus2.deb && dpkg -i Rumus2.deb


Когда все установится открываем консоль и пишем:
rumus

rumus ubuntu remote

Потребление ресурсов:
rumus ubuntu memory cpu top output

August 8, 2011

Installing desktop, Firefox, Flash Player and TightVNC on Ubuntu Server/Debian

The task is: to install a desktop environment on VPS server (low-end box) with Firefox browser, Adobe Flash Player and TightVNC remote control. Working in a "I'm-no-geek" mode. OS: Debian or Ubuntu.

Note: if you're using Debian, don't use sudo in the commands below.

0. Preparation


  1. For Ubuntu: open /etc/apt/sources.list and enable multiverse repository by just adding ' multiverse' to the end of each line.ubuntu add multiverse repository

  2. sudo apt-get update


We can choose from different window managers.
Note: later you'll be prompted like this:
console-setup xorg ubuntu server debian
I've selected defaults.

1.a. ubuntu-desktop (all-in-one command, memory consuming)


sudo apt-get install -y --no-install-recommends ubuntu-desktop

install ubuntu-desktop ubuntu server top
The first time I tried to install ubuntu-desktop I didn't use --no-install-recommends parameter, so I couldn't even launch System Monitor -- the system couldn't allocate memory.
This is not an option for a low-end box.

1.b. fluxbox (light-weight option)


sudo apt-get install -y xorg fluxbox

install fluxbox ubuntu server debian top

1.c. IceWM


sudo apt-get install -y xorg icewm

Installed IceWM running on Debian box.
installed icewm debian server

1.d. Openbox

sudo apt-get install -y xorg openbox

По правому клику выпадает меню. Чтобы иметь возможность его настраивать установите obmenu (впрочем, это необязательно/optional):
sudo apt-get install -y obmenu

Themes (optional):
sudo apt-get install -y openbox-themes obconf
Download themes to ~/themes then right-click desktop and select ObConf.
debian vps openbox memory usage
Panel (optional).
Gnome panel:
sudo apt-get install -y gnome-panel
openbox debian 5 gnome-panel memory usage
Или fbpanel:
sudo apt-get install -y fbpanel

Обои на рабочий стол (в параметрах передается путь к картинке):
sudo apt-get install hsetroot && hsetroot -full /root/wallpapers/wallpaper.jpg


2. TightVNC Server

Install TightVNC server:
sudo apt-get install -y tightvncserver
Start TightVNC server:
vncserver -geometry 800x600 -depth 16
Autostart TightVNC Server:
echo "@reboot root /usr/bin/vncserver -geometry 800x600 -depth 16 2>/dev/null" >> /etc/crontab
(didn't work for me...)
launch start tightvnc debian ubuntu
Now you can connect to your server with VNC Viewer. If you don't know which port to connect to, check netstat:
netstat -a
Usually it's 5901.
connecting to tightvnc server with vnc viewer
I mean "your server IP goes here", not home IP.

3.1. Firefox

Ubuntu:
sudo apt-get install -y firefox
Debian:
apt-get install -y iceweasel

3.2. Adobe Flash Player to Firefox

Gonna need cURL library:
sudo apt-get install -y curl
On Ubuntu:
sudo apt-get install -y flashplugin-nonfree
On Debian:
apt-get install -y flashplugin-nonfree
On Ubuntu (easy non-console way):
Launch Firefox (open console/terminal, type "firefox" and hit Enter), go to Youtube.

Screenshot by captain obvious:installing adobe flash player ubuntu firefox
And here we go:
youtube video ubuntu

Useful links:
https://help.ubuntu.com/community/Installation/LowMemorySystems
http://knol.google.com/k/ubuntu-minimal-desktop-installation-guide
http://www.ubuntugeek.com/how-to-install-gui-in-ubuntu-10-04-lucid-lynx-server.html

March 28, 2010

Установка темы Ubuntu Studio в обычной Ubuntu

Устанавливаем Ubuntu Studio Theme через консоль:
sudo apt-get install ubuntustudio-theme ubuntustudio-icon-theme ubuntustudio-wallpapers ubuntustudio-gdm-theme

Теперь, когда всё установилось (если, конечно, установилось), в System -> Preferences -> Appearance выбираем тему Ubuntu Studio.

Удаление только пустых директорий (Ubuntu Linux)

Для того, чтобы удалить все пустые папки 9работая в Ubuntu Linux), переместитесь в консоли в родительскую директорию (содержащую пустые) командой cd и выполните следующее:
find ./ -type d -exec rmdir 2>/dev/null {} \;

Если сомневаетесь в поведении своей системы, можете для начала создать тестовые папки и провести эксперимент над ними.

Переносим закачки из uTorrent в Deluge под Ubuntu и Windows

Кроссплатформенность -- это хорошо. Особенно чётко преимущества оной ощущаются при работе с закладками в том же Firefox, чего не скажешь про хвалёный uTorrent. В этой статье я планирую описать процесс переноса всех закачек из uTorrenta в Deluge. Если у самого получится, конечно же.

Итак, ставим последнюю версию Deluge. Открываем файл репозиториев /etc/apt/sources.list:
sudo gedit /etc/apt/sources.list
И добавляем в него строчку:
deb http://ppa.launchpad.net/deluge-team/ubuntu karmic main universe
Здесь karmic -- версия Ubuntu (можете подсмотреть свою версию в этом же файле)

Обновляем список приложений:
sudo aptitude update

Устанавливаем Deluge следующей командой, соглашаясь с запросами и подтверждая установку дополнительных приложений:
aptitude install deluge

Автоматическое монтирование NTFS-дисков в Ubuntu

Предположим, нам нужно каждый раз при запуске системы автоматически монтировать два NTFS-раздела: D:\ (DATA) и E:\ (OTHER). Для этого создадим две служебные директории, и назовём их для удобства в соответствии с метками томов: data и other, хотя название директории для монтирования может быть произвольным, главное его правильно указать в дальнейшем. Итак:
sudo mkdir /media/data /media/other

Затем необходимо узнать UUID нужных дисков:
sudo blkid
Пример одной строки из вывода вышеуказанной команды:
/dev/sda2: UUID="8A5F7C5D24F5B0" LABEL="DATA" TYPE="ntfs"
Здесь нам нужно значение UUID, в примере это 8A5F7C5D24F5B0

Теперь отредактируем файл /etc/fstab, отвечающий за файловую систему:
sudo gedit /etc/fstab

В появившемся редакторе добавьте следующие строки:
# DATA D:\
UUID=%uuid_для_data-d% /media/data ntfs-3g defaults,locale=ru_RU.utf8 0 0
# OTHER E:\
UUID=%uuid_для_other-e% /media/other ntfs-3g defaults,locale=ru_RU.utf8 0 0
Здесь /media/data и /media/other -- имена созданных выше директорий.
Если вернуться к примеру, строка для DATA (D:\) будет выглядеть следующим образом:
# DATA D:\
UUID=8A5F7C5D24F5B0 /media/data ntfs-3g defaults,locale=ru_RU.utf8 0 0

Обратите внимание, что нужно указывать ту локаль, которая есть в системе (в примере это ru_RU.utf8). Чтобы проверить это, выполните следующую команду и просмотрите список:
locale -a

Avast Antivirus в Ubuntu

Скачиваем Avast Linux Home Edition в формате .DEB отсюда: http://www.avast.com/linux-home-edition#tab4

Устанавливаем из пакета. Если просит лицензионный ключ, получаем его бесплатно здесь: http://www.avast.com/registration-free-antivirus.php

Добавляем ярлык в меню Applications -> Accessoires:
cd /usr/lib/avast4workstation/share/avast/desktop
sudo ./install-desktop-entries.sh install

Если Вы используете Ubuntu не из-под root'а (как, собственно, и положено), отредактируйте меню (правой кнопкой на Applications -> Edit Menus) и измените команду запуска Avast'a с avastgui на gksudo avastgui.

Готово! Запускаем антивирус из вышеуказанного меню, вводим лицензионный ключ, обновляем и пользуемся.