14 заметок с тегом

ubuntu

Ctrl + ↑ Позднее

Cron в Ubuntu. + bash-cкрипт резервного копирования.

4 мая 2012, 12:17
Ubuntu, Системное администрирование
Tagged Under : bash, Ubuntu, Скрипты

Иногда системным администраторам, программистам, web-дизайнерам и много кому ещё нужно запускать одни и те же команды или скрипт с некоторой периодичностью. Для таких целей используется специальная утилита Cron, встроенная во все дистрибутивы Unix. Пользоваться Cron’ом необычайно легко. Сейчас расскажу как.

Для начала создадим какой-нибудь простой bash-скрипт, например скрип резервного копирования и архивирования конфигурационных файлов, в моём случае конфигурационных файлов Apache2 и ftp-сервера.
#!/bin/bash

mkdir /home/user/bash-scripts/backup
cp /etc/apache2/apache2.conf /home/user/bash-scripts/backup/apache2.conf-backup
cp /etc/apache2/sites-available/site /home/user/bash-scripts/backup/site-backup
cp /etc/proftpd/proftpd.conf /home/user/bash-scripts/backup/proftpd.conf-backup
tar cvvzf «/home/user/bash-scripts/backup-`date +%F-%X`.tar.gz» /home/user/bash-scripts/backup/
rm -r /home/user/bash-scripts/backup

Этот скрипт копирует конфигурационные файлы и архивирует их в папку, в названии которой присутствует дата и время сохранения. Назовём его ‘backup-script‘ а лежать он у нас будет в домашнем каталоге (/home/user/). Теперь нам надо чтобы этот скрипт запускался, ну допустим, каждые 10 минут. Для этого введём команду
crontab -e

Этой командой мы открываем для редактирования файл crontab для данного пользователя, в моём случае это user. Если нашему скрипту нужны права супер пользователя, то нужно редактировать crontab суперпользователя. Делается это командой
sudo crontab -u root -e

Ну и если заменить root а логин другого пользователя, мы будем редактировать его crontab.
Сразу напишу, чтобы посмотреть файл crontab введите команду.
crontab -l

Файл crontab имеет следующую структуру:

поле1 поле2 поле3 поле4 поле5 команда

Значения первых пяти полей:
1.минуты— число от 0 до 59
2.часы — число от 0 до 23
3.день месяца — число от 1 до 31
4.номер месяца в году — число от 1 до 12
5.день недели — число от 0 до 7 (0-Вс,1-Пн,2-Вт,3-Ср,4-Чт,5-Пт,6-Сб,7-Вс)

Все поля обязательны для заполнения. Не сложно догадаться что первые 5 отвечают за определения периодичности запуска команды, а последняя собственно команда или полный путь к скрипту. Таким образом, чтобы запустить наш скрипт резервного копирования раз в 10 минут надо вписать следующую строчку.
*/10 * * * * /home/user/backup-script

* — значит все возможные варианты, / служит для определения периодичности выполнения задания. Если нужно будет выполнять скрипт раз в 3 часа впишите в значения часы */3 а в минуты просто *, если раз в сутки — впишите */23, ну почти сутки. Так же в одно поле можно вводить несколько значений через запятую, например если хотите выполнять скрипт 1ого, 5ого, и 25ог числа каждого месяца введите 1,5,25 вместо третей звёздочки. Ещё можно вводить промежуток времени, если ,допустим, в часы ввести 12-17 то скрипт будет выполняться с 12 до 17 включительно раз в час.
Ну вот и всё, в заключение пару примеров:
0 */3 * * 2,5 /home/user/backup-script
#Каждые три часа только по вторникам и пятницам
15 */3 * * * /home/user/backup-script
#Каждые три часа в 15 минут
45 15 * * 1 /home/user/backup-script
#По понедельникам в 15:45
13 13 13 * 5 /home/user/backup-script
#в пяnницу 13 числа в 13 часов 13 минут
30 00 * * 0 /home/user/backup-script
#Раз в н
cron   linux   ubuntu

Удаленный рабочий стол (VNC, x11vnc). Настройка

4 мая 2012, 12:15
9.10 Karmic Koala
Voyageur — 24 Июнь, 2009 — 13:30


С линуксом жизнь становится интересней, я бы даже сказал экспериментальней!
Меня потянуло на эксперименты с ssh, и то, что я получил в итоге — доступ с работы к домашнему компу — мне очень понравилось! Еще бы — классно управлять домашним компом, обновлять его и т. п. С девушкой даже с помощью festival разговаривал)))
Однако, захотелось пойти дальше, интересно, можно ли настроить удаленный доступ к рабочему столу, как позволяет это RAdmin в Windows? Можно конечно! Надо только настроить))

Покопался в интернете, нашел несколько статей про VNC — Virtual Network Computing, решил такое счастье сделать и у себя!
Для этого сначала необходимо было поставить несколько утилит:
sudo aptitude install vnc4-common vnc4server xvnc4viewer
Эти утилиты необходимы непосредственно для того, чтобы запускать удаленный сервер (vnc4server) и подключаться к нему с удаленного клиента (xvnc4viewer).
Установили! Теперь дело остается за малым: сначала нужно запустить vnc-сервер, а потом подключиться к нему.
Для запуска удаленного сервера, нужно в консоли набрать
vncserver
Если это первый запуск vncserver в системе с этой учётной записью пользователя, тогда вы должны ввести пароль, который клиенты будут использовать при подключении, после чего запустится сервер, который будет доступен на порту 5901. Кстати, при запуске сервера в консоль выведется номер дисплея (виртуального), на котором он будет доступен, отсчет ведется с 1 (так как 0 — текущий дисплей). Пример запуска:
igor@Voyageur:~$ vncserver

New 'Voyageur:1 (igor)' desktop is Voyageur:1

Starting applications specified in /home/igor/.vnc/xstartup
Log file is /home/igor/.vnc/Voyageur:1.log
Здесь строчка New 'Voyageur:1 (igor)' desktop is Voyageur:1 как раз говорит о том, что у меня компе запустился сервер на дисплее 1, доступен он на порту 5901.
Если vncserver запустить еще раз, то загрузится новый терминальный сервер :2 на порту 5902 и т. д.
Теперь попробуем зайти на этот сервер с удаленной машины. Для этого необходимо в консоли удаленного клиента ввести команду:
vncviewer __hostname__:1
В этой команде __hostname__ — это имя или ip машины, на которой запущен удаленный сервер. Далее необходимо будет ввести пароль и в результате появится приблизительно вот такое окно:


Немного не то я ожидал увидеть если честно)) Начал разбираться, и оказалось, что vncserver запускает лишь новую сессию, а не подключается к текущей, именно для этого и нужны виртуальные дисплеи. А в этой сессии запущены twm (Tab Window Manager for the X Window System) и xterm.
Между прочим это все добро запускается из скрипта ~/.vnc/xtartup, который можно редактировать, удаляя ненужные и добавляя свои строчки запуска необходимых приложений. В самом верху скрипта есть небольшой комментарий:
# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc
То есть, чтобы получить нормальный рабочий стол, нужно раскомментировать 2 строчки. Я их раскомментировал, но ничего хорошего из этого у меня не вышло.
Посмотрел я на этот twm, и решил, что с этим убожеством работать нельзя. Я установил fluxbox (занимает всего 6 Мб) и в скрипте xstartup заменил строчку
twm &
на
fluxbox &
В итоге у меня получилось вот так:


Нормально для работы. Но не айс! Оперу можно запустить, еще некоторые приложения, но далеко не все (приложения kde выламываются)! Пробовал я вместо fluxbox'a запустить kde, но не пошло...Играет приветствие входа в систему, но вылетает окно с крахом плазмы и все, черный экран, занавес...

В итоге я получил удаленный доступ, но не такой как хотел! Мне-то хотелось иметь доступ к текущему рабочему столу, а не к мифическому дисплею 1, на котором загружается fluxbox, но не kde.

Что делать? Надо копать еще!!!
Я поискал в репозиториях пакеты, в названии которых присутствует «vnc», список оказался не очень большой, я начал читать комментарии к утилитам и библиотекам...В самом конце списка я увидел такую строчку:
p xvnc4viewer  — Virtual network computing client software for X
Очень похоже на то, что мне нужно!
Я установил x11vnc...man у этой утилиты знатный, несколько тысяч строк)) После небольшого его изучения я более менее разобрался с процедурой запуска и назначением утилиты.
Итак, x11vnc является фактически удаленным сервером (как и vncserver), но позволяет получать доступ к уже существующей X-сессии!
На машине, к которой необходимо подключиться:
x11vnc -storepasswd
Эта команда позволит позаимствовать пароль для подключения к серверу из файла ~/.vnc/passwd (тут лежит пароль, который был задан при первом запуске vncserver). Далее непосредственно запустим x11vnc:
x11vnc -usepw -display :0
Опция -usepw задействует использования пароля при подключении к серверу, -display :0 — запускает сервер на нулевом дисплее (так, где открыта текущая X-сессия).
Теперь мы с удаленной машины можем подключиться к текущей X-сессии, выполнив
vncviewer __hostaname__:0
и введя пароль.


При закрытии окна удаленного рабочего стола, завершается и работа x11vnc (на сервере)
Таким образом, я получил то, что хотел))))
Напоследок приведу несколько опций для утилит vncserver, x11vnc и vncviewer, облегчающих траффик и жизнь))
vncserver
-kill :n — завершает работу терминального сервера на дисплее n (порту 590n), если он раньше был запущен
-geometry 800x600 — устанавливает размер создаваемого рабочего стола (по умолчанию 1024x768)
-depth depth — устанавливает глубину цвета в битах, по умолчанию 16 бит, можно изменить на 8, 15, 24
Для запуска VNC-сервера с определенным номером (дисплеем) используется команда vncserver :n

x11vnc
-q — уменьшает вывод отладочной информации в stderr
-forever — данная опция не завершает работу x11vnc-сервера, когда первый клиент отключается, а ждет следующих подключений

vncviewer
-geometry 800x600 — устанавливает размер окна, в котором будет отображаться удаленный рабочий стол. Если указанный размер меньше размера удаленного стола, то появятся полосы прокрутки
-compresslevel n — устанавливает уровень сжатия данных. Значение n варьируется от 0 до 9, 9 — наилучшее сжатие (качество, соответственно, хуже)
-quality m — влияет на качество картинки. m варьируется от 0 до 9, 0 — наихудшее качество изображения (меньше траффик)
-depth depth — если X-сервер поддерживает различные значения глубины цвета, то можно попытаться подобратьоптимальное значение (в битах)
-viewonly — опция, позволяющая подключившемуся пользователю только наблюдать за тем, что происходит на удаленной машине, средства управления (мышь, клавиатура) недоступны

P.S. Кстати, если нужно, чтобы x11vnc запускался автоматически, то для этого его нужно добавить в автозагрузку: в Настройках системы выбрать пункт Автозагрузка (на второй вкладке), там добавить скрипт
x11vnc -usepw -display :0 -q -forever &
и указать, что он должен запускаться до старта KDE!
linux vnc   ubuntu

Обновление Ubuntu server 11.04 до 11.10

4 мая 2012, 12:04
Только что была выпущена новая Ubuntu 11.10 (Natty Narwhal). Это руководство показывает, как можно обновить Ubuntu 11.04 серверных установок до Ubuntu 11.10.

Убедитесь, что Вы вошли в систему с правами root:sudo su


Затем запустите:apt-get update


и установить пакет update-manager-core (менеджер-обновления-ядра):apt-get install update-manager-core


Откройте файл /etc/update-manager/release-upgrades ...nano /etc/update-manager/release-upgrades


... и убедитесь, что в нем имеется Prompt=normal:
[...]
Prompt=normal

Затем запустите:do-release-upgrade


... чтобы началось обновление:
root@server1:~# do-release-upgrade
Checking for a new ubuntu release
Get:1 Upgrade tool signature [198 B]
Get:2 Upgrade tool [1164 kB]
Fetched 1164 kB in 0s (0 B/s)
extracting 'oneiric.tar.gz'
authenticate 'oneiric.tar.gz' against 'oneiric.tar.gz.gpg'

Reading cache

Checking package manager

Continue running under SSH?

This session appears to be running under ssh. It is not recommended
to perform a upgrade over ssh currently because in case of failure it
is harder to recover.

If you continue, an additional ssh daemon will be started at port
'1022'.
Do you want to continue?

Continue [yN] — y

Starting additional sshd

To make recovery in case of failure easier, an additional sshd will
be started on port '1022'. If anything goes wrong with the running
ssh you can still connect to the additional one.

To continue please press [ENTER] — ENTER
Confirm that you want to do the upgrade:
Third party sources disabled

Some third party entries in your sources.list were disabled. You can
re-enable them after the upgrade with the 'software-properties' tool
or your package manager.

To continue please press [ENTER] — ENTER

[...]

Do you want to start the upgrade?

6 installed packages are no longer supported by Canonical. You can
still get support from the community.

5 packages are going to be removed. 88 new packages are going to be
installed. 611 packages are going to be upgraded.

You have to download a total of 392 M. This download will take about
2 minutes with your connection.

Fetching and installing the upgrade can take several hours. Once the
  download has finished, the process cannot be cancelled.

Continue [yN] Details [d] — y

Во время обновления некоторых службы, возможно, потребуется перезагрузка. Если менеджер обновлений указывает Вам, какие услуги должен быть перезапущен (она отображается список услуг), оставите их по умолчанию, нажав кнопку ENTER.

В конце процесса обновления, вы должны удалить устаревшие пакеты:
Remove obsolete packages?
45 packages are going to be removed.

Continue [yN] Details [d] — y

Сервер должен быть перезагружен для завершения обновления:
System upgrade is complete.
Restart required
To finish the upgrade, a restart is required.
If you select 'y' the system will be restarted.

Continue [yN] — y

После перезагрузки, Ваш сервер работает под управлением Ubuntu 11.10. Надо можно увидеть взглянуть на /etc/issue:cat /etc/issue

root@server1:~# cat /etc/issue
Ubuntu 11.10 \n \l

root@server1:~#
ubuntu

Debian, безопасность сервера. Ставим fail2ban на Debian и немного настраиваем его.

4 мая 2012, 10:17
fail2ban может защитить почти любой из ваших сервисов от брутфорса. Подбора пароля то есть.
Информации в целом в инете про него много, но не упомянуть fail2ban в рамках нового цикла статей «Безопасность в Debian» просто нельзя.

Итак. Каждый администратор сервера на Debian должен выполнить команду:
debian:~# aptitude install fail2ban

После установки и запуска fail2ban мы получаем намного более защищенный ssh. После 3х попыток неправильного ввода пароля с одного ip адреса — этому ip адресу будет закрыт 22й порт на сервере. Но это всё по умолчанию.
Сейчас же мы будем настраивать fail2ban.
Основная часть настроек хранится в конфигурационном файле /etc/fail2ban/jail.conf
Рассмотрим некоторые директивы:
ignoreip = 127.0.0.1 # указываем, на какие ip адреса, маски или хостнеймы не распространяется действие fail2ban
bantime = 600 # указываем сколько действует бан в секундах. Я указываю либо огромное число, либо -1 — что значит «навечно».
maxretry = 3 # через сколько неправильных попыток ввода пароля банить гада
destemail = root@localhost # на какой адрес слать уведомления о банах. Можно поменять, но нужно будет написать правила для писем.
banaction = iptables-multiport # через что банить. Если у вас нет shorewall, то менять это значение я не рекомендую.
mta = sendmail # через что отправлять письма админу о банах. Exim/sendmail/etc. Пишем тут тот MTA, который стоит у вас на сервере.

Чуть ниже следуют секции конфига, которые отвечают за блокировку тех, кто брутфорсит что-либо. Конечно же, здесь есть почти все сервисы, которые можно брутфорсить) списочек будет чуть ниже. Не изменяйте эти секции ни в коем случае! Те jails, которые вам необходимо включить — дописывайте в файл /etc/fail2ban/jail.local в форме:
[jail_name]
enabled = true
Например:
[apache]
enabled = true

Рассмотрим параметры секции [ssh] (который отвечает за бан тех, кто пытается сбрутить ssh-аккаунт).
enabled = true # включаем сервис.
port = ssh # указываем на каком порту/портах висит сервис. Некоторые умеют определяться автоматически по имени сервиса — вот как ssh
filter = sshd # указываем фильтр, по которому парсятся логи. Не следует менять. Вообще же можно написать свои фильтры и использовать их для любого вашего сервиса. Именно этот порт в нашем случае будет блокироваться для брутфорсера через iptables.
logpath = /var/log/auth.log # какой лог парсить. Нужно на тот случай, если вы изменяли дефолтный путь до лога сервиса
maxretry = 6 # количество попыток, после которых человека или бота банят.

Какие есть шаблоны по умолчанию: ssh, pam-generic, xinetd-fail, ssh-ddos, apache (неверные авторизации в каталогах, защищенных через .htpasswd), apache-noscript, apache-overflows, vsftpd, proftpd, wuftpd, postfix, couriersmtp, courierauth, sasl, named-refused-udp, named-refused-tcp.

Не забываем перезапускать fail2ban после изменения конфигурации командой /etc/init.d/fail2ban restart

Этого вполне достаточно, чтобы окопаться от брутфорса по самое «нехочу». Если вы поняли систему работы fail2ban — вы легко сможете написать скрипт, который будет защищать вас от http-ddos, udp-ddos, исходящего спама и много другого. Правила писать очень просто, нужно лишь указать правильный regexp в файле /etc/fail2ban/filter.d/имя_фильтра.conf
Тем более, что там есть примеры.
Только не дописывайте свои сервисы c опций enabled = true в jail.conf. Пишите шаблон в jail.conf, а включайте свой jail уже в jail.local.
fail2ban   linux   ubuntu

Debian, ftpd, vtpd, vsftpd. Very fast way.

4 мая 2012, 10:16
https://debian.pro/72

Извиняюсь, что давно ничего не писал. Работа и эксперименты с виртуализацией отнимают очень много времени. Пока что ничего нового и особенного не откопал, лишь сделал некоторые выводы, которые напишу в финальной статье про KVM.
А сейчас, пожалуй, напишу как быстро настроить FTP сервер на Debian/Ubuntu. Способ действительно быстрый и не требует особого ковыряния в конфигах и базах.
За основу, как можно догадаться из заголовка, я беру vsftpd. Почему? Ну во-первых его название расшифровывается как very secure ftp daemon. Во-вторых именно его можно установить и настроить максимально быстро.
Что мы получим в итоге:
1) авторизоваться нужно (можно) будет по системным пользователям. То есть список пользователей и их домашние директории будут браться из /etc/passwd. Root в параде не участвует.
2) пользователи не могут выйти выше домашнего каталога в структуре ФС. То есть мы организуем ftp-chroot. Редки случаи, когда он помешает конечным пользователям, а вот безопасность он повышает ощутимо. Рут же может пользоваться sshfs, чтобы работать со всей ФС сразу.
3) Анонимы отключены. В принципе включаются 3мя строчками в конфиге, но в рамках данной статьи они не требуются.
Итак. Проверяем, что у нас не установлено никаких ftpd, если установлены — удаляем. Они нам не понадобятся.
Установим vsftpd:
root@Debian:~# aptitude install vsftpd
Скопируем стандартный конфиг на всякий случай (необязательно):
root@Debian:~# cp /etc/vsftpd.conf /etc/vsftpd.conf.default
Почистим стандартный конфиг от флуда разработчиков =) (вообще там интересно, советую почитать как-нибудь. )
root@Debian:~# echo » » > /etc/vsftpd.conf
И начнём писать новый. Собственно, чтобы следовать заголовку «Very fast way», предлагаю взять мой готовый конфиг.
Открываем /etc/vsftpd.conf нашим любимым редактором, например:
root@Debian:~# nano /etc/vsftpd.conf
и вставим в файл следующее:
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
#anon_upload_enable=YES
#anon_mkdir_write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
#ascii_upload_enable=YES
#ascii_download_enable=YES
ftpd_banner=Welcome to debian.pro ftpd!
#banned_email_file=/etc/vsftpd.banned_emails
chroot_local_user=YES
#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd.chroot_list
ls_recurse_enable=YES
secure_chroot_dir=/var/run/vsftpd
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key

В файл /etc/vsftpd.chroot_list мы можем записать пользователей, на которых не распространяется правило chroot. Для того, чтобы эта функция заработала — расскоментируйте строку #chroot_list_file=/etc/vsftpd.chroot_list в vsftpd.conf. Ну и не забудьте создать сам файл:
root@Debian:~# touch /etc/vsftpd.chroot_list
Перезагрузим vsftpd:
root@Debian:~# /etc/init.d/vsftpd restart

Ну и проверим наш ftpd. Много флуда, дальше читать совсем не обязательно) статья, собственно, закончена:
Попробуем зайти под анонимом:

root@support-desktop:~# ftp localhost
Connected to localhost.
220 Welcome to debian.pro ftpd!
Name (localhost:inky): anonymous
331 Please specify the password.
Password:
530 Login incorrect.
Login failed.

Попробуем зайти под локальным пользователем, немного погулять по хомяку и попробовать выйти из chroot:
root@support-desktop:~# ftp localhost
Connected to localhost.
220 Welcome to debian.pro ftpd!
Name (localhost:inky): inky
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
-rwxrwxrwx 1 1001 1001 316 Feb 26 17:27 diff.sh
-rwxr-xr-x 1 1001 1001 2281 Feb 26 22:35 diff2.sh
-rw-r—r— 1 1001 1001 1185 Feb 26 20:26 diff2.sh?
-rw-r—r— 1 1001 1001 357 Feb 07 14:47 examples.desktop
drwxr-xr-x 5 1001 1001 4096 Feb 23 05:06 iMacros
-rwxr-xr-x 1 1001 1001 57 Jun 09 15:53 script100
drwxr-xr-x 3 1001 1001 4096 Jul 25 13:10 scripts
-rw-r—r— 1 0 0 30888 Dec 13 2006 thunder.au
-rw-r—r— 1 1001 1001 22626 Feb 26 20:19 thunder2
-rw-r—r— 1 1001 1001 1642496 Feb 26 20:11 thunder2.au
drwxr-xr-x 2 1001 1001 4096 Feb 26 17:27 tmp
-rwxr-xr-x 1 1001 1001 7422 Jun 09 15:43 urgent
226 Directory send OK.
ftp> cd iMacros
250 Directory successfully changed.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
drwxr-xr-x 2 1001 1001 4096 Feb 22 01:43 Datasources
drwxr-xr-x 5 1001 1001 4096 Apr 11 16:41 Downloads
drwxr-xr-x 2 1001 1001 4096 Feb 22 01:46 Macros
-rwxr-xr-x 1 1001 1001 188 Feb 27 00:19 iMacros.log
226 Directory send OK.
ftp> cd ../
250 Directory successfully changed.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
-rwxrwxrwx 1 1001 1001 316 Feb 26 17:27 diff.sh
-rwxr-xr-x 1 1001 1001 2281 Feb 26 22:35 diff2.sh
-rw-r—r— 1 1001 1001 1185 Feb 26 20:26 diff2.sh?
-rw-r—r— 1 1001 1001 357 Feb 07 14:47 examples.desktop
drwxr-xr-x 5 1001 1001 4096 Feb 23 05:06 iMacros
-rwxr-xr-x 1 1001 1001 57 Jun 09 15:53 script100
drwxr-xr-x 3 1001 1001 4096 Jul 25 13:10 scripts
-rw-r—r— 1 0 0 30888 Dec 13 2006 thunder.au
-rw-r—r— 1 1001 1001 22626 Feb 26 20:19 thunder2
-rw-r—r— 1 1001 1001 1642496 Feb 26 20:11 thunder2.au
drwxr-xr-x 2 1001 1001 4096 Feb 26 17:27 tmp
-rwxr-xr-x 1 1001 1001 7422 Jun 09 15:43 urgent
226 Directory send OK.
ftp> cd ../
250 Directory successfully changed.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
-rwxrwxrwx 1 1001 1001 316 Feb 26 17:27 diff.sh
-rwxr-xr-x 1 1001 1001 2281 Feb 26 22:35 diff2.sh
-rw-r—r— 1 1001 1001 1185 Feb 26 20:26 diff2.sh?
-rw-r—r— 1 1001 1001 357 Feb 07 14:47 examples.desktop
drwxr-xr-x 5 1001 1001 4096 Feb 23 05:06 iMacros
-rwxr-xr-x 1 1001 1001 57 Jun 09 15:53 script100
drwxr-xr-x 3 1001 1001 4096 Jul 25 13:10 scripts
-rw-r—r— 1 0 0 30888 Dec 13 2006 thunder.au
-rw-r—r— 1 1001 1001 22626 Feb 26 20:19 thunder2
-rw-r—r— 1 1001 1001 1642496 Feb 26 20:11 thunder2.au
drwxr-xr-x 2 1001 1001 4096 Feb 26 17:27 tmp
-rwxr-xr-x 1 1001 1001 7422 Jun 09 15:43 urgent
226 Directory send OK.

И попробуем зайти под рутом:
root@support-desktop:~# ftp localhost
Connected to localhost.
220 Welcome to debian.pro ftpd!
Name (localhost:inky): root
331 Please specify the password.
Password:
530 Login incorrect.
Login failed.

Всё работает. Спасибо за внимание, удачного использования =)
ftp   linux   ubuntu
Ctrl + ↓ Ранее