{
    "version": "https:\/\/jsonfeed.org\/version\/1.1",
    "title": "Аникин: заметки с тегом ftp",
    "_rss_description": "Блог об администрировании Linux, BSD и не только",
    "_rss_language": "ru",
    "_itunes_email": "",
    "_itunes_categories_xml": "",
    "_itunes_image": "",
    "_itunes_explicit": "",
    "home_page_url": "https:\/\/anikin.pw\/tags\/ftp\/",
    "feed_url": "https:\/\/anikin.pw\/tags\/ftp\/json\/",
    "icon": "https:\/\/anikin.pw\/pictures\/userpic\/userpic@2x.jpg?1478690884",
    "authors": [
        {
            "name": "Петр Аникин",
            "url": "https:\/\/anikin.pw\/",
            "avatar": "https:\/\/anikin.pw\/pictures\/userpic\/userpic@2x.jpg?1478690884"
        }
    ],
    "items": [
        {
            "id": "52",
            "url": "https:\/\/anikin.pw\/all\/prostaya-ustanovka-ftp-servera-na-freebsd\/",
            "title": "Простая установка FTP-сервера на FreeBSD.",
            "content_html": "<p>На самом деле по умолчанию во freebsd уже установлен ftp-сервер, нам нужно его только сконфигурировать.<br \/>\nВыполняем для добавления запуска ftp в \/etc\/rc.conf.<\/p>\n<pre class=\"e2-text-code\"><code class=\"\"># echo 'ftpd_enable=&quot;YES&quot;' &gt;&gt; \/etc\/rc.conf\n# echo 'ftpd_flags=&quot;-l -l&quot;' &gt;&gt; \/etc\/rc.conf<\/code><\/pre><p>Далее смотрим файл \/etc\/ftpusers, тут указаны пользователи которым запрещён доступ к ftp.<\/p>\n<pre class=\"e2-text-code\"><code class=\"\"># cat \/etc\/ftpusers<\/code><\/pre><p>При необходимости редактируем его.<br \/>\nЗатем чтобы разрешить доступ пользователя к каталогу выполним.<\/p>\n<pre class=\"e2-text-code\"><code class=\"\"># echo 'user \/var\/www\/site.ru' &gt;&gt; \/etc\/ftpchroot<\/code><\/pre><p>Где <i>user<\/i> — существующий на сервере пользователь, а  \/<i>var\/www\/site.ru<\/i> — его каталог.<br \/>\nЗапускаем ftp-сервер<\/p>\n<pre class=\"e2-text-code\"><code class=\"\"># \/etc\/rc.d\/ftpd start<\/code><\/pre><p>И пробуем подключится с логином и паролем user.<\/p>\n<p><b>Р.S.:<\/b> Если у user в качестве shell используется \/sbin\/nologin, то подключение не произойдет. FTP-клиент сообщит что-то типа:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\">access denied<\/code><\/pre><p>а в логах сервера будет:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\">ftpd: connection from 10.8.0.1 (10.8.0.1)\nftpd: FTP LOGIN REFUSED FROM 10.8.0.1, user<\/code><\/pre><p>Проверить какой shell используется для юзера можно командой:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\"># pw usershow user<\/code><\/pre><p>В этом случае нам нужно создать \/sbin\/nologin-ftp и прописать его у пользователя вместо \/sbin\/nologin. Делается это очень просто:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\"># echo '\/sbin\/nologin-ftp' &gt;&gt; \/etc\/shells\n# ln -s \/usr\/sbin\/nologin \/sbin\/nologin-ftp\n# pw usermod user -s \/sbin\/nologin-ftp<\/code><\/pre><p>Теперь подключение должно происходить без проблем.<\/p>\n",
            "date_published": "2015-03-11T14:28:26+03:00",
            "date_modified": "2015-03-11T14:27:23+03:00",
            "tags": [
                "Freebsd",
                "ftp",
                "ftpd",
                "nologin",
                "nologin-ftp"
            ],
            "_date_published_rfc2822": "Wed, 11 Mar 2015 14:28:26 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "52",
            "_e2_data": {
                "is_favourite": false,
                "links_required": [
                    "highlight\/highlight.js",
                    "highlight\/highlight.css"
                ],
                "og_images": []
            }
        },
        {
            "id": "23",
            "url": "https:\/\/anikin.pw\/all\/prosteyshiy-skript-dlya-bekapa-sayta\/",
            "title": "Простейший скрипт для бекапа сайта.",
            "content_html": "<p>Простейший скрипт для бекапа сайта на ftp по крону. Пример для debian, но скрипт должен работать и на других дистрибутивах.<\/p>\n<p>Всё что нужно для работы скрипта есть в базовой поставке большинства дистрибутивов. Нужно установить только wput. Установим его:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\"># apt-get install wput<\/code><\/pre><p><d><\/p>\n<p>Создаем скрипт:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\"># nano \/usr\/bin\/backup.sh<\/code><\/pre><p><d><br \/>\nСодержание скрипта(исправьте значения переменных в начале скрипта):<\/p>\n<pre class=\"e2-text-code\"><code class=\"\">#!\/bin\/bash\nsitedirectory=\/var\/www\/site.ru # дирректория виртуального хоста без &quot;\/&quot; в конце\nmysqluser=muser # пользователь mysql\nmysqlpasswd=mpasswd # пароль пользователя mysql\ndbname=sitedb # название базы mysql\nftpuser=fuser # пользователь ftp на который складывать бекап\nftppasswd=fpasswd # пароль пользователя ftp\nftphost=10.0.0.1 # ip или домен ftp-сервера на который складывать бекап\n\/usr\/bin\/mysqldump -u $mysqluser -p$mysqlpasswd $dbname &gt; $sitedirectory\/$dbname.sql\nY=`date &quot;+%Y&quot;` \nM=`date &quot;+%m&quot;` \nD=`date &quot;+%d&quot;`\n\/bin\/tar -czf \/tmp\/backup-$D-$M-$Y.tar.gz $sitedirectory\n\/usr\/bin\/wput --reupload \/tmp\/backup-$D-$M-$Y.tar.gz ftp:\/\/$ftpuser:$ftppasswd@$ftphost\/backup\/\n\/bin\/rm -f \/tmp\/backup-$D-$M-$Y.tar.gz\n\/bin\/rm -f $sitedirectory\/$dbname.sql<\/code><\/pre><p><d><\/p>\n<p>Затем делаем скрипт исполняемым<\/p>\n<pre class=\"e2-text-code\"><code class=\"\"># chmod +x \/usr\/bin\/backup.sh<\/code><\/pre><p><d><br \/>\nИ добавляем его в крон:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\"># crontab -e<\/code><\/pre><p><d><\/p>\n<pre class=\"e2-text-code\"><code class=\"\">0 1 * * * \/usr\/bin\/backup.sh<\/code><\/pre><p><d><br \/>\nАрхив с бекапом будет отправляться в час ночи, каждый день на указанный ftp.<\/p>\n",
            "date_published": "2014-04-08T17:32:31+03:00",
            "date_modified": "2014-08-29T12:02:54+03:00",
            "tags": [
                "backup",
                "bash",
                "cron",
                "ftp"
            ],
            "_date_published_rfc2822": "Tue, 08 Apr 2014 17:32:31 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "23",
            "_e2_data": {
                "is_favourite": false,
                "links_required": [
                    "highlight\/highlight.js",
                    "highlight\/highlight.css"
                ],
                "og_images": []
            }
        }
    ],
    "_e2_version": 4134,
    "_e2_ua_string": "Aegea 11.3 (v4134)"
}