Freebsd не работает ftp

Работа с ftp из командной строки FreeBSD ­ Дневник ­ Максим Боголепов

Работа с ftp из командной строки FreeBSD

Недавно у меня возникла необходимость передачи по ftp файлов с одного сервера, на другой. На принимающей стороне работает zFTPserver на сервере под управлением операционной системы MS Windows 2003 Server Standard Edition SP2. На передающей стороне работает сервер под управлением FreeBSD 8.2- RELEASE . Передачу файлов пытаюсь осуществить с помощью встроенной команды ftp – Internet file transfer program.

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

Как показывает man ftp , существует возможность указать имя пользователя и его пароль, и даже выполнить некоторые команды ftp на удаленном сервере, при авто-логине. Нас интересует секция THE .netrc FILE помощи.

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

Примечание: если вы не сделаете этот файл доступным только для root (в данном случае) – chmod 600 /root/.netrc , при выполнении команды ftp вы получите следующее сообщение об ошибке:

С помощью вашего любимого текстового редактора занесите в этот файл следующие строки:

Где 192.168.10.1 – ip адрес удаленной машины с работающим ftp, user – имя пользователя на этом ftp, sword – пароль пользователя user на этом ftp.

Полный набор переменных, которые можно указать в этом файле, вы обнаружите в man ftp .

Для решения поставленной задачи, мне осталось только написать небольшой скриптик и заставить выполняться его по расписанию в cron .

Данный скриптик передаст по ftp все файлы по маске etc_** из каталога */var/backups в корневой каталог пользователя user на удаленном ftp-сервере 192.168.10.1

Если вы разместили файл .netrc в ином месте (не в каталоге пользователя, от имени которого будет выполняться команда ftp), существует возможность указать его расположения с помощью флага -N. Команда будет выглядеть так:

Где /some_place – иное расположение файла .netrc

Rating: 4.1/5(7 votes cast)

Источник

Freebsd не работает ftp

Процесс по шагам:

1. Если нам нужен анонимный доступ к серверу (через логины anonymous или ftp), то нужно добавить пользователя ftp:
# adduser
Username: ftp
Full name: anonymous ftp
Uid (Leave empty for default): Enter
Login group [ftp]: Enter
Login group is ftp. Invite ftp into other groups? []: Enter
Login class [default]: Enter
Shell (sh csh tcsh bash rbash nologin) [sh]: nologin
Home directory [/home/ftp]: Enter
Use password-based authentication? [yes]: Enter
Use an empty password? (yes/no) [no]: yes
Lock out the account after creation? [no]: Enter
Username : ftp
Password :
Full Name : anonymous ftp
Uid : 1002
Class :
Groups : ftp
Home : /home/ftp
Shell : /usr/sbin/nologin
Locked : no
OK? (yes/no): yes
adduser: INFO: Successfully added (ftp) to the user database.
Add another user? (yes/no): no
Goodbye!

Читайте также:  Как настроить или установить скайп

2. Добавляем в /etc/rc.conf строчки:
ftpd_enable=»YES»
ftpd_flags=»-D -l»

Теперь после перезагрузки ftpd у Вас запустится автоматически. Можно его запустить прямо сейчас:
# /usr/libexec/ftpd -D -l

Второй вариант запуска связан с использованием демона inetd (если он у Вас работает, см. результат команды ps -ax | grep inetd). Этот способ не так хорош, если пользователей сервера ftp будет много, так как для каждого пользователя ftp в этом случае запускается отдельный экземпляр ftpd, что связано с повышенным расходом памяти. Но почему-то в FreeBSD Handbook описан именно это способ, поэтому я его тоже приведу. В этом случае пункт 2 будет таким:

2. Файл /etc/rc.conf трогать не надо. Просто раскомментируем в файле /etc/inetd.conf следующую строчку:
ftp stream tcp nowait root /usr/libexec/ftpd ftpd -l

Посылаем демону inetd команду перечитать конфигурацию:
# killall -HUP inetd

Всё! После этой нехитрой процедуры запустится сервер ftp, на который будет разрешен только анонимный доступ под логинами anonymous или ftp (если у Вас кроме root нет других пользователей) — пользователю root доступ будет запрещен. При логине anonymous Вы увидите содержимое папки /home/ftp (это то же самое, что и /usr/home/ftp, так как /home просто мягкая ссылка на папку /usr/home). По ftp в папку /home/ftp Вы можете также записывать файлы и делать в ней папки, но удалить из этой папки файлы у Вас не получится.

Можно еще разрешить пользователю root доступ по ftp, удалив его из списка пользователей в файле /etc/ftpusers (или закомментировав строчку с root). Тогда при логине пользователя root ему будет предоставлен ПОЛНЫЙ доступ на всю файловую систему. Насколько это опасно — думаю, объяснять не нужно. Одним нечаянным движением мышки можно отправить систему вникуда. Таким образом, всё вышеописанное подходит только в том случае, если Вы не публикуете сервер для доступа других пользователей, да и самому надо быть очень осторожным, не пользоваться постоянно логином root.

Если Ваш сервер FTP будет использоваться «не понарошку», то сначала нужно определиться, кому давать доступ на ftp, разрешать ли анонимный доступ, и потом поднастроить права на каталоги и подправить конфигурационные файлы. Вариантов настройки может быть несколько, опишу парочку.

Читайте также:  Как починить картридж для минифит

Вариант 1.
— доступ пользователю root запрещен.
— доступ пользователю anonymous разрешен на папку /distr только на чтение, и на папку /pub на чтение и запись (такой способ задания прав на pub для Интернета не подходит, поскольку из папки pub быстро сделают файлообменник).

Пункты 1 и 2 остаются без изменений. Начнем сразу с пункта 3.

3. Проверяем, что в файле /etc/ftpusers есть пользователь root, удостоверяемся, что по ftp коннект пользователю root запрещен.

4. Меняем владельца папки /usr/home/ftp с пользователя ftp на root, группу меняем с ftp на wheel. Устанавливаем права на папку 555.

5. Делаем папку /usr/home/ftp/pub, владелец root, группа wheel, права на папку 777.

6. Делаем папку /usr/home/ftp/distr, владелец root, группа wheel, права на папку 755.

7. С целью разрешить anonymous удалять файлы подправим чуток команду запуска ftpd, для запуска из /etc/rc.conf:
ftpd_flags=»-D -l -m»

Для запуска через inetd правим /etc/inetd.conf:
ftp stream tcp nowait root /usr/libexec/ftpd ftpd -l -m

8. Перезапускаем сервер ftpd. Если ftpd запускается через rc.conf, то выполним команды:
# killall -TERM ftpd
# /usr/libexec/ftpd -D -l -m

Если ftpd запускается через inetd, то выполним команду:
# killall -HUP inetd

Вариант 2.
— доступ пользователю root запрещен.
— доступ пользователю anonymous разрешен на папку /distr только на чтение, на папку /pub на чтение и запись, но список папки pub недоступен (это затрудняет использование ftp-сервера в качестве файлообменника).

3. То же самое, что и в варианте 1.
4. То же самое, что и в варианте 1.

5. Делаем папку /usr/home/ftp/pub, владелец root, группа wheel, права на папку 733. Это позволит anonymous зайти в папку pub и скопировать туда файлы, но список этих файлов и папок не виден (это затрудняет пиратский файлообмен). Однако файл скачать оттуда все-таки можно, если знать имя файла и путь до него. Кроме того, если скопировать туда папку вместе с файлами в ней, например папку ARC (она будет лежать физически на диске как /usr/home/ftp/pub/ARC, а для пользователя anonymous как /pub/ARC), то папка ARC будет не видна, но зайти в неё и увидеть список файлов в ней anonymous все-таки сможет. Это происходит потому, что при копировании в папку pub под anonymous файлы и папки получают владельцем пользователя ftp. Кроме того, доступны и операции над файлами (удаление, переименование, перемещение).

6. То же самое, что и в варианте 1.
7. То же самое, что и в варианте 1.
8. То же самое, что и в варианте 1.

Еще совет: папку pub лучше держать на отдельном разделе, чтобы предотвратить переполнение основного раздела.

Читайте также:  Как настроить яндекс браузер браузером по умолчанию

Источник

BSDPORTAL.RU

На этом сайте обсуждаются вопросы использования ОС FreeBSD

Часовой пояс: UTC + 4 часа

подключение к FTP

Страница 1 из 1 [ Сообщений: 11 ]
Автор Сообщение
Влад

]# ftp localhost
Trying 127.0.0.1.
Connected to localhost.
220 freebsd.local FTP server (Version 6.00LS) ready.
Name (localhost:alex): ftp.
331 Password required for ftp.
Password:
230 User ftp logged in, access restrictions apply.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
229 Entering Extended Passive Mode (|||62332|)
150 Opening ASCII mode data connection for ‘/bin/ls’.
total 32
-rw-r—r— 1 1002 1002 763 Aug 15 17:49 .cshrc
-rw-r—r— 1 1002 1002 261 Aug 15 17:49 .login
-rw-r—r— 1 1002 1002 171 Aug 15 17:49 .login_conf
-rw——- 1 1002 1002 383 Aug 15 17:49 .mail_aliases
-rw-r—r— 1 1002 1002 343 Aug 15 17:49 .mailrc
-rw-r—r— 1 1002 1002 789 Aug 15 17:49 .profile
-rw——- 1 1002 1002 288 Aug 15 17:49 .rhosts
-rw-r—r— 1 1002 1002 984 Aug 15 17:49 .shrc
В чем может быть трабла ?

arrowdodger

Зарегистрирован: Чт 14 май, 2009 6:56 pm
Сообщения: 839

Влад

добрый день.
простите за ложный вопрос. У меня прокся после ребута пк на мозиле выставилась.
но вопрос остается чуть актуальным.
Почему когда через firefox захожу он запрашивает логин и пароль, а когда ломлюсь через ie сразу выдает ошибку ( Internet Explorer не может отобразить эту веб-страницу

Попробуйте сделать следующее:
Диагностика проблем подключения

Эта проблема может быть вызвана различными причинами, например:

•Потеряно подключение к Интернету.
•Этот веб-узел временно недоступен.
•Нет доступа к DNS-серверу.
•На DNS-сервере не найден адрес для домена этого веб-узла.
•Возможно, сделана опечатка в адресе.
•Если это безопасный адрес (HTTPS), выберите команду «Сервис», «Свойства обозревателя», «Дополнительно», и проверьте, что протоколы SSL и TLS в секции безопасности включены.)

olexande

Зарегистрирован: Вт 03 янв, 2006 12:49 pm
Сообщения: 1043
Откуда: Киев

На сервере сервис работает (проверить можно командой sockstat).

Настройки клиентских программ сравнивали.

Влад
olexande

Зарегистрирован: Вт 03 янв, 2006 12:49 pm
Сообщения: 1043
Откуда: Киев

Что вбиваете в адресную строку?

разберитесь со своими настройками . Прокся, появляющяяся от «лампочки» — не есть нормально .

Если мозилла подключается — значит с сервером у Вас все нормально, проблема в локальном (пользовательском) ПО.

Рекомендую пользоваться «адекватными» FTP-клиентами.

Влад
Влад
AMDmi3
Модератор

Зарегистрирован: Сб 11 сен, 2004 6:33 am
Сообщения: 5357
Откуда: Москва

Влад
Влад
Страница 1 из 1 [ Сообщений: 11 ]
Версия для печати Пред. тема | След. тема

Часовой пояс: UTC + 4 часа

Кто сейчас на конференции

Зарегистрированные пользователи: Bing [Bot] , Google [Bot]

Источник

Оцените статью