admin / 27.08.2018

Установка VSftpd FTP Сервера на CentOS/RHEL — ShellHacks

Установка FTP сервера — VsFTPd — CentOS Wiki

Vsftpd: установка, настройка и работа

FTP сервер vsftpd (Very Secure FTP daemon) является одним из надежнейших и простых в настройке ftp серверов. Это оптимальный выбор для большинства пользователей, которым нужен ftp сервер.

Установка vsftpd

Под root-ом, наберите в консоли:

# yum install vsftpd

Этот пакет входит в стандартный репозитарий CentOS, поэтому проблем с установкой возикнуть не должно.

Добавим запуск сервера при старте системы:

# chkconfig vsftpd on

Для интереса проверим теперь уровни запуска:

# chkconfig —list vsftpd

получаем:

vsftpd 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл

На этом можно считать законченным процесс установки. При перезагрузке системы — сервер будет активирован. Если вы его хотите запустить сейчас, то набирите:

service vsftpd start

Внимание. В настройках файрвола вы должны разрешить подключения к своему серверу. Например через текстовую утилиту настройки:

system-config-securitylevel

Для CentOS 6 и 7:

system-config-firewall-tui

Настройка vsftpd

Все настройки сервера находятся в файле /etc/vsftpd/vsftpd.conf. Ваш сервер и при установке по-умолчанию будет работать, но вы можете провести дополнительную настройку "под себя".

Параметры Параметр по умолчанию Пояснение
allow_anon_ssl NO Значение YES позволяет анонимным пользователям подключаться через SSL-соединение.
anon_mkdir_write_enable NO Значение YES позволяет анонимным пользователям при определённых условиях создавать каталоги. Чтобы они могли это делать, должен быть включен параметр write_enable и анонимный пользователь должен иметь права на запись для родительского каталога.
anon_other_write_enable NO Значение YES позволяет анонимным пользователям выполнять не только операции закачки файлов и создания каталогов, но и операции удаления и переименования.
anon_upload_enable NO Значение YES позволяет анонимным пользователям осуществлять закачку файлов на сервер при определённых условиях: должен быть включен параметр write_enable и анонимные пользователи должны иметь права на запись в каталог закачки. Этот параметр также должен быть включен для того, чтобы виртуальные пользователи могли закачивать файлы так как по умолчанию виртуальные пользователи считаются анонимными./td>
anon_world_readable_only YES Значение YES говорит, что анонимные пользователи могут скачивать только файлы, доступные на чтение всем. Это такие файлы, владельцем которых является пользователь ftp, что особенно касается закаченных файлов.
anonymous_enable YES Значение YES разрешает подключаться к серверу анонимным пользователям с именами ftp и anonymous.
ascii_download_enable NO Значение YES позволяет выбрать для скачивания файлов режим ASCII
ascii_upload_enable NO Значение YES позволяет выбрать для закачивания файлов режим ASCII
async_abor_enable NO Значение YES включает возможность использования специальной команды FTP, известной как "async ABOR". Не все клиенты поддерживают эту команду, к тому же, её неудобно управлять. Но к сожалению, некоторые FTP-клиенты будут "зависать" при отмене передачи файлов, если данная команда будет недоступна, так что возможно вы захотите включить её.
background YES Значение YES включае выполнение vsftpd в фоновом режиме.
check_shell YES Внимание! Данная опция работает только для vsftpd, собранного без PAM!. Если NO, то vsftpd не проверяет наличие shell локального пользователя в /etc/shells. Обычно же, если shell пользователя не найден в /etc/shells, то в доступе по FTP этому пользователю будет отказано!
chmod_enable YES Значение YES позволяет локальным пользователям использовать команду SITE CHMOD. Анонимным пользователи НИКОГДА не разрешается использовать эту команду!
chown_uploads NO Значение YES приводит к тому, что для всех файлов, которые закачивают анонимные пользователи, владелец будет изменён на пользователя, указанного в параметре chown_user-name.

Antananarivo

Это полезно для административных целей и возможно из соображений безопасности.

chroot_list_enable NO Значение YES позволяет задать список локальных пользователей, для которых после входа будет выполнен chroot() в их домашний каталог. Есть параметр chroot_local_user установлен в YES, то всё работает с точностью до наоборот: для локальных пользователей в предоставляемом списке НЕ БУДЕТ выполняться chroot(). По умолчанию, список пользователей находится в файле /etc/vsftpd/chroot_list, однако вы можете указать другое имя файла с помощью параметра chroot_list_file
chroot_local_user NO Значение YES приводит к тому, что после входа, для локальных пользователей будет выполнен chroot() в их домашний каталог. Внимание! Данный параметр может нанести ущерб безопасности, особенно в случае, когда пользователи могут закачивать файлы или имеют shell доступ. Включайте его только если понимаете, что делаете!
connect_from_port_20 NO Значение YES позволяет использовать на сервере порт 20 (ftp-data) для передачи данных. По соображениям безопасности, некоторые клиенты могут требовать такого поведения от сервера. Наоборот, выключение данного параметра, позволяет запускать vsftpd с меньшими превилегиями.
debug_ssl NO Значение YES приводит к протоколированию работы подключений по SSL. (Добавлено в 2.0.6)
deny_email_enable NO Значение YES позволяет предоставить для анонимных пользователей список паролей в стиле E-mail адресов, для которых доступ будет запрещён. По умолчанию, список находится в файле /etc/vsftpd/banned_emails, но можно задать другой файл с помощью параметра banned_email_file.
dirlist_enable YES Значение NO запрещает доступ на выполнение команд просмотра содержимого каталогов.
dirmessage_enable NO Значение YES позволяет показывать сообщения пользователям, которые первый раз заходят в какой-либо каталог. По умолчанию, сообщения находятся в файлах .message, но можно указать другой файл с помощью параметра message_file.
download_enable YES Значение NO запрещает выполнять скачивание файлов.
dual_log_enable NO Значение YES включает параллельную генерацию двух журналов /var/log/xferlog и /var/log/vsftpd.log. Первый формируется в стиле wu-ftpd, второй в собственном формате vsftpd.
force_dot_files NO Значение YES включает показ файлов и каталогов, имя которых начинается с точки. Исключения составляют имена "." и ".."
force_anon_data_ssl NO Работает только если включен параметр ssl_enable. Значение YES принудительно переключает соединения всех анонимных пользователей в режим SSL при скачивании и закачивании файлов.
force_anon_logins_ssl NO Работает только если включен параметр ssl_enable. Значение YES принудительно переключает соединения всех анонимных пользователей при отправке пароля.
force_local_data_ssl YES Работает только если включен параметр ssl_enable. Значение YES принудительно переключает соединения всех НЕ-анонимных пользователей в режим SSL при скачивании и закачивании файлов.
force_local_logins_ssl YES Работает только если включен параметр ssl_enable. Значение YES принудительно переключает соединения всех НЕ-анонимных пользователей в режим SSL при отправке пароля.
guest_enable NO Значение YES говорит о том, что все анонимные соединения должны рассматриваться как "гостевые". Гостевой вход будет переназначен на пользователя, который задан параметром guest_username.
hide_ids NO Значение YES приводит к тому, что при показе для всех файлов и каталогов, группа и владелец всегда будут "ftp".
listen YES Значение YES приводит к запуску vsftpd в режиме "демона". Это означает, что vsftpd не может быть запущен из inetd. Вместо этого, vsftpd запускается напрямую один раз и далее сам будет обслуживать входящие соединения.
listen_ipv6 NO Тоже что и для параметра listen, только vsftpd будет обслуживать IPv6, а не только IPv4. Этот параметр и параметр listen являются взаимоисключающими.
local_enable NO Значение YES позволяет входить по FTP локальным пользователям (из /etc/passwd или авторизуемых через PAM). Данный параметр должен быть включен, если вы хотите организовать работу НЕ-анонимных пользователей, включая и виртуальных.
lock_upload_files YES Значение YES включает блокировку на запись для всех закачиваемых файлов. Все скачиваемые файлы имеют разделяемую блокировку на чтение. Внимание! Перед тем как включить этот параметр помните, что злонамеренное чтение может привести к тому, что пользователи, закачивающие файлы не смогут их дозаписать.
log_ftp_protocol NO Значение YES приводит к протоколированию всех запросов и ответов протокола FTP, а также в выключению параметра xferlog_std_format.
ls_recurse_enable NO Значение YES включает использоваение "ls -R". Это создаёт значительный риск безопасности, потому что выполнение "ls -R" для каталога верхнего уровня, который содежит множество подкаталогов и файлов, может привести к очень большому потреблению ресурсов.
mdtm_write YES Значение YES включает MDTM установку времени изменения файлов (полезно для проверки доступа)
no_anon_password NO При установленом YES, vstpd не спрашивает пароля у анонимных пользователей.
no_log_lock NO Значение YES говорит vsftpd не выполнять блокировку при записи в файлы журналов. Обычно данный параметр выключен. В Solaris в связке с файловой системой Veritas иногда появляется ошибка, выражающаяся в зависании при попытке установить блокировку на файлы журналов.
one_process_model NO Для ядер 2.4 поддерживается другая модель безопасности: один процесс на одно соединение. Такая модель менее безопасна, но более производительна. Не включайте, если не понимаете что делаете и если вашему серверу не нужна поддержка огромного количества отдельных соединений.
passwd_chroot_enable NO Значение YES совместно сchroot_local_user, включает chroot() отдельно для каждого пользователя, исходя из данных о его домашнем каталоге, взятых из /etc/passwd.

При этом, значение "/./" в строке, задающей домашний каталог, означает отдельное местоположение в пути.

pasv_addr_resolve NO Установите YES, если вы хотите использовать имя (вместо IP адреса) в pasv_addres
pasv_enable YES Установите NO, если вы хотите запретить метод PASV в полученном соединении для приёма/передачи данных.
pasv_promiscuous NO Установите YES если вы хотите запретить проверку безопасности, назначение которой убедиться, что соединение на приём/передачу данных осуществляется с того же IP-адреса, что и управляющее соединение. Включайте только если понимаете, что вы делаете! Такое необходимо только в некоторых случаях при организации безопасных туннелей или поддержке FXP.
port_enable YES Установите NO, если вы хотите запретить метод PORT в полученном соединении для приёма/передачи данных.
port_promiscuous NO Установите YES, если вы хотите запретить проверку безопастности PORT, назначение которой убедиться, что исходяще соединение подключено именно к клиенту. Включайте только если понимаете, что делаете!
require_cert NO Значение YES требует от всех SSL клиентов наличия клиентского сертификата. Уменьшение подлинности, применимое к этому сертификату, управляется параметром validate_cert (добавлен в 2.0.6).
run_as_launching_user NO Установите YES, если вы хотите запускать vsftpd от пользователя, который собственно и производит запуск. Обычно это нужно в тех случаях, когда доступ от пользователя root недоступен. СЕРЬЁЗНЕЙШЕЕ ЗАМЕЧАНИЕ! НЕ включайте этот параметр пока вы полностью не осознаете то, что вы делаете, так как использование этого параметра может создать серьёзную проблему с безопасностью. Особенно важно, чтобы vsftpd не мог использовать / в качестве корневого каталога, а также используйте chroot для ограничения доступа к файлам, когда включен данный параметр (даже если vsftpd запущен от root). Менее подходящим решением может быть использование deny_file с такими аргментами как {/*,*..*}, но надёжность такого решения не может сравниться с chroot, так что сильно на это не полагайтесь. При использовании этого параметра, вводятся ограничения на другие опции. Например не ждите, что будут работать опции требущие привелегий, такие как неанонимные входы, закачка файлов с изменением владельца, соединение по 20 порту и подключение по портам меньше, чем 1024, а также и другие подобные.
secure_email_list_enable NO Установите YES, если вы хотите, чтобы для анонимных входов, в качестве паролей, использовался только указанный вами список E-mail адресов. Это полезно для некоторого ограничения доступа к содержимому сервера, без создания виртуальных пользователей. Анонимным пользователям будет отказано во входе, если пароль, который они указали не будет в списке, который находится в файл email_password_file. Формат файла: один пароль на строку без дополнительных пробелов. Местоположение файла по умолчанию: /etc/vsftpd/email_passwords
session_support NO При значении YES, vsftpd будет пытаться вести сессии. При этом он будет пытаться обновлять wtmp и utmp. Если для авторизации используется PAM, то vsftpd также будет пытаться открывать pam_session при входе и закрывать его только при выходе пользователя. Если вам не нужно протоколирование сессий, вы можете запретить это, а также вы можете указать vsftpd запускать меньше процессов и/или с меньшими привелегиями. Модификация wtmp и utmp работает только, если vsftpd собран с поддержкой PAM.
setproctitle_enable NO Если YES, то vsftpd будет пытаться показывать информацию о состояние сессий в списке процессов. Другими словами, показываемое имя процесса будет изменено, чтобы отражать состояние сессии vsftpd (idle, downloading и т.д.) Из соображений безопасности, возможно вам лучше оставить этот параметр выключенным.
ssl_enable NO Если YES и vsftpd был собран с библиотекой openSSL, то vsftpd будет обслуживать безопасные соединения через SSL. Это относится как к управляющим соединениям, так и к соединениям передающим данные. Также необходимо, чтобы и клиент поддерживал SSL соединения. Используйте этот параметр с осторожностью, потому что vsftpd целиком полагается на библиотеку openSSL в плане безопаснотсти SSL соединений и не может гарантировать, что эта библиотека свободна от ошибок.
ssl_request_cert YES Если YES, то vsftpd запрашивает (но не делает из этого необходимости) у клиента сертификат. Обычно, это не вызывает проблем, но IBM zOS считает иначе (добавлено в 2.0.7)
ssl_sslv2 NO Применяется только если включен параметр ssl_enable. В случае YES допускаются соединения про протоколу SSL v2. Предпочтительными являются соединения по протоколу TLS V1.
ssl_sslv3 NO Применяется только если включен параметр ssl_enable. В случае YES допускаются соединения про протоколу SSL v3. Предпочтительными являются соединения по протоколу TLS V1.
ssl_tlsv1 YES Применяется только если включен параметр ssl_enable. В случае YES допускаются соединения про протоколу TLS V1. Предпочтительными являются соединения по протоколу TLS V1.
     

 

════Текстовым редактором (text editor) называют программу, которая предназначена для редактирования (составления и изменения) файлов, содержащих только текст, например: письмо, программа на языке C, системный конфигурационный файл. При том, что имеется много различных редакторов для системы , единственный, чьё присутствие будет гарантировано в любой системе или ═ — это vi (visual editor). Редактор vi не является самым простым в использовании, и его интерфейс не очень понятен сам по себе. Однако ввиду своей распространённости, а отчасти и потому, что владение им в некоторых ситуациях необходимо, ему посвящается внимание в этой книге.

═══ Выбор текстового редактора обычно является вопросом индивидуального вкуса. Многие пользователи предпочитают пышный, мощный и наделённый подсказками редактор emacs. Этот редактор имеет больше функций, чем любая другая программа в мире . К примеру, в редакторе emacs имеется собственный встроенный диалект языка программирования LISP. Кроме того, у этого редактора имеется множество расширений (одно из них═ — программа искусственного интеллекта типа программы Eliza). Однако, поскольку сам редактор и файлы, которые его поддерживают, сравнительно велики, этот редактор может не быть установлен на некоторых системах. Напротив, редактор vi является небольшим и мощным, однако использовать его сложнее. Тем не менее, при знакомстве с редактором vi он в действительности оказывается очень простым.

В этом разделе даётся лишь введение в vi═ — мы будем обсуждать не все его функции, а лишь нужные для того, чтобы начать работать в нем. Дополнительную информацию можно получить из экранной документации к команде vi.

В любой момент при работе в редакторе vi вы находитесь в одном из трёх режимов редактора: командный режим (command mode), режим ввода (insert mode) и режим последней строки (last line mode).

══ При запуске редактора vi вы оказываетесь в командном режиме. В этом режиме можно давать команды для редактирования файлов или перейти в другой режим. Например, вводя в командном режиме мы удаляем символ, на который указывает курсор. Клавиши-стрелки перемещают курсор по редактируемому файлу. Как правило, команды, используемые в командном режиме, состоят из одного или двух символов.

════ Основной ввод и редактирование текста осуществляется в режиме ввода. При использовании редактора vi основное время, скорее всего, будет проводиться именно в этом режиме. Переход в режим ввода из командного режима осуществляется командой i (от слова insert). Находясь в режиме ввода, можно вводить текст в то место, куда указывает курсор. Выход из режима ввода в командный режим осуществляется клавишей Esc.

══Режим последней строки═ — это специальный режим, в котором редактору даются сложные команды. При вводе этих команд они отображаются в последней строке экрана (отсюда пошло название режима). Например, если ввести в командном режиме команду :, то осуществится переход в режим последней строки, и можно будет вводить такие команды, как wq (записать файл и покинуть редактор vi) или q! (выйти из редактора vi без сохранения изменений). В режиме последней строки обычно вводятся команды, название которых состоит из нескольких символов. В этом режиме в последнюю строку вводится команда, после чего нажимается клавиша Enter, и команда исполняется.

Наилучшим способом уяснить для себя все концепции редактора vi будет запустить его и отредактировать в нем некоторый файл. В приводимых ниже «экранчиках» будет показано всего несколько строк текста, как будто текстовый экран имеет по высоте всего 6 строк вместо 24. Синтаксис редактора vi таков:

vi filename

где filename — имя файла, который надо редактировать.

Запустим редактор vi и создадим новый файл по имени командой

/home/larry# vi test

На экране будет примерно следующая картинка:

_ ~ ~ ~ ~ ~ «test» [New file]

Колонка символов обозначает пустые строки, иначе говоря, указывает, что мы находимся в конце файла. Символ обозначает курсор.

Редактор vi сейчас находится в командном режиме. Нажмём клавишу i, и редактор перейдёт в режим ввода текста. Теперь вводим, например, следующий текст:

Now is the time for all good men to come to the meeting. ~ ~ ~ ~ ~

Введите любое количество строк, после каждой нажимая клавишу Enter. Исправлять опечатки можно с помощью клавиши Backspace. Для выхода из режима ввода и возвращения в командный режим нажмём клавишу Esc.

В командном режиме для движения по файлу можно использовать клавиши-стрелки. Если в файле всего одна строка, то при попытке нажать клавишу со стрелкой вверх либо вниз редактор, возможно, будет подавать звуковой сигнал.

Помимо команды i, есть ещё несколько способов вставить текст. Так, команда a начинает вставлять текст после текущего положения курсора, а не прямо в текущую. Например, приведём с помощью клавиш-стрелок курсор к пробелу, разделяющему слова и :

Now is the time for all good men to come to the meeting. ~ ~ ~ ~ ~

Нажмём теперь клавишу a (редактор перейдёт в режим ввода) и введём , после чего нажмём клавишу Esc и вернёмся в командный режим. На экране будет следующее:

Now is the time for all good women to come to the meeting. ~ ~ ~ ~ ~

Для того, чтобы начать вводить текст со следующей строки, используем команду o. Нажмём эту клавишу и введём одну-две строки текста:

Now is the time for all good women to come to the meeting. Afterwards, we’ll go out for pizza and beer. ~ ~ ~ ~

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

Now is the time for all good women to come to the meeting. Afterwards, we’ll go out for pizza and ~ ~ ~ ~

Теперь нажмём клавишу a и введём некоторый текст, после чего опять нажмём клавишу Esc:

Now is the time for all good women to come to the meeting. Afterwards, we’ll go out for pizza and Diet Coke. ~ ~ ~ ~

Можно удалять целые строки командой dd (т. е. нажав клавишу d два раза подряд). Если курсор стоит на второй строке, и вы введёте команду dd, на экране останется следующее:

Now is the time for all good women to come to the meeting. ~ ~ ~ ~ ~

Для того, чтобы удалить слово, на которое показывает курсор, можно использовать команду dw. Подведите курсор к слову и введите dw. Результат будет следующим:

Now is the time for all women to come to the meeting. ~ ~ ~ ~ ~

══ Отдельные части текста можно заменять на другие; для этого используется команда R. Подведите курсор к первому символу в слове , нажмите клавишу R и введите слово .

Now is the time for all women to come to the session. ~ ~ ~ ~

Действие команды R напоминает действие команд i и a, однако при команде R новый текст не вставляется, а стирает старый.

Команда r заменяет один символ, а именно тот, на который указывает курсор. Например, подведём курсор к началу слова , введём команду r и за ней букву .

На экране возникнет следующее:

Cow is the time for all women to come to the session. ~ ~ ~ ~

С помощью команды ~ можно поменять регистр буквы, на которую указывает курсор (с верхнего на нижний и наоборот). Например, если подвести курсор к букве в слове и нажимать клавишу ~, то в конце концов возникнет:

COW IS THE TIME FOR ALL WOMEN TO COME TO THE SESSION.

══ Вы уже знаете, что передвигаться по экрану (и по документу) можно с помощью клавиш-стрелок. В дополнение можно для движения курсора использовать клавиши h, j, k и l. Они будут сдвигать курсор соответственно влево, вниз, вверх и вправо. Этими командами можно воспользоваться, если (по какой-нибудь причине) клавиши-стрелки действуют неправильно. Команда w перемещает курсор на начало следующего слова; команда b перемещает курсор на начало предыдущего слова.

Команда 0 (клавиша ) перемещает курсор на начало текущей строки, а команда $ перемещает курсор в её конец.

При редактировании больших файлов вам, возможно, захочется «перелистывать» целые экраны вперёд (т. е. вниз) и назад (вверх); для этого используются команды соответственно CtrlF и CtrlB.

Для того, чтобы переместить курсор в конец файла, используется команда G. Можно также поместить курсор на строку с данным номером; например, команда 10G поместит курсор на строку с номером 10. Для того, чтобы переместить курсор в начало файла, можно использовать команду 1G.

Команды движения курсора можно совмещать с другими командами, например, с командами удаления текста. Например, команда d$ удалит все, что находится между текущим положением курсора и концом строки; команда dG удалит все, что находится между текущим положением курсора и концом файла и т. д.

Команды для движения курсора

══════ Для выхода из редактора vi без сохранения изменений, сделанных в файле, используется команда :q!. Когда вводится команда :, курсор переходит на последнюю строку экрана, и таким образом редактор оказывается в режиме последней строки:

COW IS THE TIME FOR ALL WOMEN TO COME TO THE SESSION. ~ ~ ~ :_

В этом режиме возможно вводить некоторые расширенные команды. Одна из них — команда q!, которой завершается работа с редактором vi без сохранения сделанных изменений.

Команда :wq сначала сохраняет файл со сделанными изменениями, а затем выходит из редактора vi. Команда ZZ (выданная в командном режиме, т. е. без введения команды :) эквивалентна команде :wq. Если файл со времени последней модификации не изменялся, то время создания файла также не будет изменено. Напомним, что в режиме последней строки введение команды завершается клавишей Enter.

Чтобы сохранить файл, но не выходить из редактора vi, используется команда :w.

Сохранение изменений и выход из редактора vi

══ Для того, чтобы приступить к редактированию другого файла, используется команда :e. Например, чтобы прекратить редактирование файла и вместо этого начать редактирование файла , надо ввести команду

COW IS THE TIME FOR ALL WOMEN TO COME TO THE SESSION. ~ ~ ~ :e foo_

Если команда :e будет введена без предварительного сохранения файла на диск, будет выдано сообщение об ошибке:

No write since last change («:edit!» overrides)

Это сообщение означает, что после последней модификации не было сохранения файла, и редактор vi отказывается приступить к редактированию другого файла. Сейчас можно либо сохранить сделанные изменения командой :w и затем вводить команду :e, либо использовать команду

COW IS THE TIME FOR ALL WOMEN TO COME TO THE SESSION. ~ ~ ~ :e! foo_

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

Переключение между файлами

══ Включить в текущий файл содержимое другого файла можно командой :r. Например, команда

:r foo.txt

вставит содержимое файла в текст начиная с текущего положения курсора.

Вставка содержимого других файлов

══ Из редактора vi можно выполнять команды оболочки. Команда :r! работает аналогично команде :r, но вместо содержимого другого файла она вставляет в редактируемый файл выдачу некоторой команды. Например, введя команду

:r! ls -F

мы получим следующее:

COW IS THE TIME FOR ALL WOMEN TO COME TO THE SESSION. letters/ misc/ papers/

Можно также «временно выйти» из редактора, запустить команду и затем вернуться обратно. Например, если будет введена команда

:! ls -F

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

:shell

то редактор vi запускает сеанс (instance) командной оболочки, прерывая редактирование на время исполнения команд. Для выхода из оболочки и возвращения к редактированию надо ввести команду exit.

Как и в случае с любой программой в системе в первую очередь следует обратиться к экранной документации к программе vi. Следует знать также, что редактор vi является пользовательским интерфейсом редактора ex, который выполняет многие из команд режима последней строки редактора vi. Поэтому, в дополнение к сказанному выше, можно также читать экранную документацию к редактору ex. Обычно (кроме режимов восстановления после системных сбоев) вам доступна более современная и улучшенная версия vi — vim, который имеет аналогичный vi интерфейс, поддерживает все команды vi и кроме того — массу дополнительных возможностей. Подробное руководство по vim можно получить, запустив этот редактор и отдав команду :help.

Помощь в работе с редактором vi

Часто используемые команды CentOS

Файловые команды
ls                     – список файлов и каталогов
ls -al                – форматированный список со скрытыми каталогами и файлами
cd dir              – сменить директорию на dir
cd                    – сменить на домашний каталог
pwd                 – показать текущий каталог
mkdir dir         – создать каталог dir
rm file             – удалить file
rm -r dir          – удалить каталог dir
rm -f file         – удалить форсированно file
rm -rf dir         – удалить форсированно каталог dir *
cp file1 file2    – скопировать file1 в file2
cp -r dir1 dir2  – скопировать dir1 в dir2; создаст каталог dir2, если он не существует
mv file1 file2  – переименовать или переместить file1 в file2.

Antananarivo

если file2 существующий каталог – переместить file1 в каталог file2
ln -s file link   – создать символическую ссылку link к файлу file
touch file        – создать file
cat > file         – направить стандартный ввод в file
more file        – вывести содержимое file
head file        – вывести первые 10 строк file
tail file          – вывести последние 10 строк file
tail -f file       – вывести содержимое file по мере роста, начинает с последних 10 строк

Управление процессами
ps – вывести ваши текущие активные процессы
top – показать все запущенные процессы
kill pid – убить процесс с id pid
killall proc – убить все процессы с именем proc *
bg – список остановленных и фоновых задач; продолжить выполнение остановленной задачи в фоне
fg – выносит на передний план последние задачи
fg n – вынести задачу n на передний план

Права доступа на файлы
chmod octal file – сменить права file на octal, раздельно для пользователя, группы и для всех добавлением:
● 4 – чтение (r)
● 2 – запись (w)
● 1 – исполнение (x)
Примеры:
chmod 777 – чтение, запись, исполнение для всех
chmod 755 – rwx для владельца, rx для группы и остальных.
Дополнительные опции: man chmod.

SSH
ssh user@host – подключится к host как user
ssh -p port user@host – подключится к host на порт
port как user
ssh-copy-id user@host – добавить ваш ключ на host для user чтобы включить логин без пароля и по ключам

Поиск
grep pattern files – искать pattern в files
grep -r pattern dir – искать рекурсивно pattern в dir
command | grep pattern – искать pattern в выводе
command
locate file – найти все файлы с именем file

Системная информация
date – вывести текущую дату и время
cal – вывести календарь на текущий месяц
uptime – показать текущий аптайм
w – показать пользователей онлайн
whoami – имя, под которым вы залогинены
finger user – показать информацию о user
uname -a – показать информацию о ядре
cat /proc/cpuinfo – информация ЦПУ
cat /proc/meminfo – информация о памяти
man command – показать мануал для command
df – показать инф. о использовании дисков
du – вывести “вес” текущего каталога
free – использование памяти и swap
whereis app – возможное расположение программы app
which app – какая app будет запущена по умолчанию

Архивация
tar cf file.tar files – создать tar-архив с именем
file.tar содержащий files
tar xf file.tar – распаковать file.tar
tar czf file.tar.gz files – создать архив tar с сжатием Gzip
tar xzf file.tar.gz – распаковать tar с Gzip
tar cjf file.tar.bz2 – создать архив tar с сжатием Bzip2
tar xjf file.tar.bz2 – распаковать tar с Bzip2
gzip file – сжать file и переименовать в file.gz
gzip -d file.gz – разжать file.gz в file
tar -pczf имяархива.tar.gz * — сжать текущию папку

Сеть
ping host – пропинговать host и вывести результат
whois domain – получить информацию whois для domain
dig domain – получить DNS информацию domain
dig -x host – реверсивно искать host
wget file – скачать file
wget -c file – продолжить остановленную закачку

Установка пакетов
Установка из исходников:
./configure
make
make install
dpkg -i pkg.deb – установить пакет (Debian)
rpm -Uvh pkg.rpm – установить пакет (RPM)

Клавиатурные сочетания
Ctrl+C – завершить текущую команду
Ctrl+Z – остановить текущую команду, продолжть с fg
на переднем плане или bg в фоне
Ctrl+D – разлогиниться, тоже самое, что и exit
Ctrl+W – удалить одно слово в текущей строке
Ctrl+U – удалить строку
!! – повторить последнюю команду
exit – разлогиниться

 

Добавить комментарий

Чаще всего операционная система CentOS используется для управления серверами, поэтому зачастую нет необходимости устанавливать и запускать графический интерфейс пользователя X Window на этих серверах. Это позволяет не только экономить системные ресурсы, но упрощает установку системы CentOS (ее можно поставить в режиме minimal, а затем добавлять только необходимые для данного сервера пакеты). Однако, также бывает, что необходимость установить и запустить графическую оболочку в системе CentOS возникает уже после установки операционной системы, например, для выполнения конфигурирования системы в графическом режиме или если возникает потребность в запуске приложений с графическим интерфейсом пользователя. Поэтому рассмотрим как установить и запустить графическую оболочку (GNOME или KDE) в CentOS 6.
Все описанные ниже процедуры нужно выполнять уже после настройки сетевого подключения в CentOS, поскольку нам необходимо будет иметь доступ к репозиториям в сети интернет.
Для того, чтобы установить графический интерфейс и оболочку GNOME нам необходимо установить несколько групп пакетов. Выполняем следующую команду для уставноки пакетов:

yum groupinstall basic-desktop desktop-platform x11 fonts

Можно также запустить установку групп пакетов, указав их полные имена:

yum groupinstall “Desktop” “Desktop Platform” “X Window System” “Fonts”

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

startx

Для того, чтобы выйти из графической оболочки выбираем в верхнем меню пункт «System», а затем нажимаем на «Log Out …»
Если при перезагрузке системы после установки графического интерфейса в CentOS будет запущена утилита setup, которая будет предлагать выполнить настройку сетевого интерфейса, клавиатуры и т.д., то никаких настроек производить не нужно, а нужно просто выйти из этой утилиты, выбрав для этого кнопку quit.
После того, как мы установили графический интерфейс и запустили оболочку GNOME, можно также установить оболочку KDE, выполнив для этого команду:
yum -y groupinstall kde-desktop
После успешной установки пакетов KDE нам теперь нужно настроить, какую именно из двух установленных оболочек мы будем запускать при старте графического интерфейса X11. Для этого мы создаем файл с именем .xinitrc и записываем в него строчку startkde для запуска среды KDE или строчку GNOME-session для запуска среды GNOME.
То есть для настройки запуска KDE выполняем команду:
echo startkde > ~/.xinitrc
А для настройки запуска GNOME выполняем команду:
echo gnome-session > ~/.xinitrc

Стоит помнить о том, что обе эти команды полностью перезаписывают файл .xinitrc, так что, если у вас в этом файле содержатся какие-либо дополнительные параметры, то добавление строки определяющей запуск графической оболочки стоит производить вручную, у примеру, при помощи текстового редактора vi.
После внесения необходимых настроек, попробуем запустить KDE командой:
startx
Убедимся, что все стартовало успешно и можем выйти из оконного менеджера KDE обратно, в текстовую консоль, выбрав в главном меню пункт «Leave», а затем «Log Out».

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

Набор Graphical Administration Tools – включает в себя графические средства администрирования, такие как средства настройки брандмауэра, служб, пользователей и т.п.

Antananarivo

Установка пакета производится командой:
yum groupinstall “Graphical Administration Tools”
Набор Internet Browser – включает браузер Firefox с необходимыми дополнениями. Установка пакета производится командой:
yum groupinstall “Internet Browser”
Набор General Purpose Desktop – включает программы общего назначения, такие как просмотр документов, запись компакт-дисков, простой текстовый редактор, просмотр изображений, проигрыватели видео и аудиофайлов и т.д. Установка пакета производится командой:
yum groupinstall “General Purpose Desktop”
Набор Office Suite and Productivity – включает в себя полноценный офисный пакет LibreOffice. Установка пакета производится командой:
yum groupinstall “Office Suite and Productivity”
Набор Graphics Creation Tools – предназначен для работы с графикой и сканерами (включает в себя gimp и xsane). Установка пакета производится командой:
yum groupinstall “Graphics Creation Tools”

Скорее всего вам захочется чтобы графический интерфейс запускался сразу после загрузки CentOS. Для настройки такого автоматического запуска нам необходимо внести изменения в файл /etc/inittab. Находим в нем следующую строку, которая отвечает за режим запуска интерфейса операционной системы:
id:3:initdefault:
Здесь цифра 3 означает, что система запустится в режиме интерфейса командной строки, а для запуска системы с графическим интерфейсом нужно поменять значение с 3 на 5:
id:5:initdefault:
Теперь, после перезагрузки системы мы увидим графический интерфейс входа в систему.

Если мы захотим при запущенном графическом интерфейсе переключится в текстовую консоль, то нужно нажать комбинацию клавиш Ctrl + Alt + F6, а для обратного переключения в графический режим нужно использовать комбинацию клавиш Ctrl + Alt + F1. И напоследок пру слов об интересном и быстром компьютерном сервисе в Белгороде, в нем замена матрицы на ноутбуке производится в день приема ноутбука.

В этой статье я расскажу вам, как установить CentOS 6 на сервер для дальнейшего использования его в качестве хостинговой машины. На момент написания этой статьи уже вышел CentOS 7, но виртуальное окружение битрикс его еще не поддерживает. Поэтому, будем использовать старый релиз.

Для начала скачаем образ дистрибутива CentOS 6.6 с одного из зеркал. Я буду скачивать образ с Яндекса, так как мой провайдер имеет с ним пиринг и скорость скачки достигает максимума.

Запишем образ на компакт диск, смонтируем в нужный комп и приступим к установке.

На первом экране мы видим приглашение в установщик операционной системы. Он предлагает нам несколько вариантов:

  1. Установка или обновление существующей системы
  2. Установку с базовым драйвером на видео карту (в нашем случае не нужно)
  3. Восстановление системы
  4. Загрузку с жесткого диска
  5. Проверку оперативной памяти

Выбираем первый вариант и продолжаем установку.

 

Следующим шагом система предлагает нам убедиться, что на диске нет повреждений. Если вы не уверены, что все записали правильно, можно пройти проверку. Я пропущу, выбрав «Skip».

Нажимаем «Next» и приступаем непосредственно к настройке установщика.

 

Выбираем язык установки установки операционной системы и нажимаем «Next». Я выберу русский.

 

После выбора языка установки, вся дальнейшая настройка ОС будет на выбранном языке. Поэтому, после настройки раскладки клавиатуры можно нажать «Далее» =)

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

 

Теперь нам необходимо подтвердить, что мы согласны с удалением данных на не размеченном винте. Удалим их и приступим к настройке сети.

В качестве хоста я выберу имя intranet.lanlinux.local. Это никак не повлияет на доступ к серверу из внешней сети. Чтобы переключиться на английскую раскладку, необходимо одновременно нажать левый и правый shift. Довольно интересный способ переключения раскладки клавиатуры =)

Далее необходимо настроить сеть. Нажимаем на кнопку «Настроить сеть», выбираем сетевое подключение и нажимаем «Изменить».

У меня в локальной сети имеется DHCP сервер, поэтому я выберу автоматическое получение ip адреса. Так же, необходимо поставить галочку «Подключаться автоматически», чтобы сеть поднималась при загрузке компьютера.

Следующим шагом выбираем часовой пояс. Я оставлю Москву.

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

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

Я устанавливаю CentOS на виртуальную машину, поэтому у меня всего один жесткий диск. О том, как настроить рейд, я рассажу в следующих статьях.

Создаем первый раздел на нашем жестком диске. Выбираем «Стандартный раздел».

 

Далее выбираем точку монтирования /boot, указываем тип файловой системы ext3, устанавливаем фиксированный размер (у меня он будет 512 мегабайт) и помечаем диск, как загрузочный.

 

Далее необходимо добавить раздел для файла подкачки.

Выбираем тип файловой системы swap, устанавливаем фиксированный размер (у меня 2 гигабайта) и нажимаем «Ok».

 

Теперь создадим корневой раздел.

В целом, процедура идентична созданию раздела /boot, за исключением отсутствия пометки диска, как загрузочный и выбора более новой файловой системы.

Так как у меня виртуальная машина, я занял все доступное пространство корневым разделам, но вам рекомендую разделить его еще на два. Создать корень с размером 100 гигабайт (этого хватит даже с учетом сессий в /tmp ), а все оставшееся свободное пространство занять разделом /home. Там и будут находиться файлы нашего корпоративного портала.

После внесения всех изменений нажимаем далее и соглашаемся с тем, что разделы будут отформатированы.

Сохраняем изменения на диск и продолжаем установку нашей операционной системы.

На следующем шаге инсталляционная программа предложит установить начальный загрузчик в первичную область. Так как у нас не будет других операционных систем, согласимся с предложением и нажмем «Далее», после чего запустится процесс автоматической установки.

По завершению процесса установки, система предложит перезагрузиться, и вы получите приглашение входа в новую установленную CentOS 6.

 

О дальнейшей настройке CentOS в качестве сервера для корпоративного портала «битрикс 24» я расскажу в следующей статье.

 

 

FILED UNDER : IT

Submit a Comment

Must be required * marked fields.

:*
:*