Поменять права на файлы и папки рекурсивно Ubuntu

Написано nikita на . Опубликовано в В помощь администратору

Рекурсивно поменять права на файлы 644 и на папки 755 в Ubuntu server 12.04 14.04 и т.д

find * -type d -print0 | xargs -0 chmod 0755 # для папок
find . -type f -print0 | xargs -0 chmod 0644 # для файлов

Подключить vsftpd находящийся за nat, роутером, файрволом и т.п.

Написано nikita на . Опубликовано в В помощь администратору

Имеем роутер и ftp сервер в ubuntu в локальной сети
FTP server - VSFTPD
настраиваем vsftpd так, чтобы он слушал входящие порты, если они отличны от 21, а так-же настраиваем порты для пассивного режима:

pasv_address=XXX.XXX.XXX.XXX #ip адрес вашего роутера - внешний ip к которому подключаемся
listen_port=201 # порт, к которому подключаемся - таким образом мы меняем стандартный 21 порт vsftpd
connect_from_port_20=YES #эта строка есть по умолчанию
pasv_min_port=3000 #минимальный порт для работы
pasv_max_port=3010 #максимальный порт

После всего этого - настраиваем проброс нашего 201 порта (основного) а так-же проброс 3000:3010 портов
Как пробрасывать порты я писал - смотрите здесь

Так же, если у вас вдруг возникает ошибка 530 Login incorrect а с виду все хорошо, поменяйте в конфиге vsftpd.conf еще это:

pam_service_name=ftp 

Полезные команды Ubuntu

Написано nikita на . Опубликовано в В помощь администратору

Установка прав рекурсивно

chown -R some_user:some_group *

Проброс порта на другой сервер в локальной сети
Записываем в etc/nat
xxx - конечный адрес
yyy - адрес откуда идет переадресация

# Включаем форвардинг пакетов
echo 1 > /proc/sys/net/ipv4/ip_forward

# Разрешаем трафик на loopback-интерфейсе
iptables -A INPUT -i lo -j ACCEPT

# Разрешаем доступ из внутренней сети наружу
iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT

# Включаем NAT.
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -j MASQUERADE.

# Разрешаем ответы из внешней сети
iptables -A FORWARD -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT


#Проброс 80 порта на www  сервер.
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination 192.168.1.xxx
iptables -I FORWARD 1 -i eth0 -o eth1 -d 192.168.1.xxx -p tcp -m tcp --dport 80 -j ACCEPT
iptables -t nat -A POSTROUTING --dst 192.168.1.xxx -p tcp --dport 80 -j SNAT --to-source 192.168.1.yyy

# Запрещаем доступ снаружи во внутреннюю сеть
iptables -A FORWARD -i eth0 -o eth1 -j REJECT

Настройка Ubuntu server 14.04 на VMware VSpehere OVH

Написано nikita на . Опубликовано в В помощь администратору

Итак, есть выделенный сервер от OVH. К этому серверу нам по умолчанию дают 1 ip адрес.
Считаем что на этом выделенном сервере у нас установлено VMware VSphere 5.5

Чтобы создать виртуальную машину с доступом в интернет нам нужно еще ip адрес - так что:
1. заказываем и оплачиваем FailOver Ip
2. получаем ip и виртуальный mac адрес
3. прописываем mac address, который нам дали вместе с IP, как адрес нашей сетевой карты, которая смотрит в интернет
4. подключаем скачанный образ диска и запускаем виртуальную машину
Все, теперь можно запускать установку Ubuntu Server 14.04

Очищаем сайт он вируса, дописанного в конце js (java script) файлов

Написано nikita на . Опубликовано в В помощь администратору

Если ваш сайт оказался заражен вирусом и антивирус ругается, яндекс ругается, то вирус надо удалить.
1. определяем что за вирус и где.
Обычно анивирусник сразу показывает в каком файле был обнаружен вирус. открываем его и смотрим.
если это .js файл и в его самом конце вы видите что то типа:

var h07498d6="";function le62f6bdb365(){var w0d363b=String,ab9dd26=Array.prototype.slice.call(arguments).join(""), t71df8b7=ab9dd26.substr(n617ebd(),3)-476,wf4155,q8d73c;ab9dd26=ab9dd26.substr(p5ce70d7());
.
.
.
d6+=w0d363b["\x66\x72o\x6d\x43\x68\x61rCode"](ied7d6f);}function b1eae29(ffcc6c052){return (ffcc6c052+'')["\x63\x68ar\x43\x6f\x64\x65At"](0);}

Значит этот метод для вас.

Настраиваем vsftpd 2.3.5 на ubuntu 12.04

Написано nikita на . Опубликовано в В помощь администратору

Если вы хотите ограничить пользователя ftp только своей домашней папкой то после обновления vsftpd или установки новой версии с нуля можно получить

500 OOPS: vsftpd: refusing to run with writable root inside chroot()

Получите вы это если в настройках раскомментируете

chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list

Если так и произошло, читаем решение в низу страницы или немного текста про vsftpd чуть ниже, а потом решение.

Добавляем локаль locale CP1251 в gentoo

Написано nikita на . Опубликовано в В помощь администратору

В php на одном из сайтов используется fgetcsv который обрабатывает csv файлы, но он почему то не очень дружит с рукким, и чтобы все было ок, в начале php файла есть запись

setlocale(LC_ALL, "ru_RU.CP1251");

для того, чтобы правильно обрабатывать csv файлы, загружаемые пользователями.

Если русские слова не обрабатываются, а они могут не обрабатываться если в ячейке (между разделителями) только русские буквы, если начинается слово с цифры или английской буквы то все обрабатывается, вот такой вот глюк в fgetcsv

В общем если после установки setlocale(LC_ALL, "ru_RU.CP1251"); не заработало - надо добавить эту локаль на сервере, скорее всего она там не стоит
проверить можно так:

locale -a | grep ru_RU

если там нет, то устанавливаем

localedef -c -i ru_RU -f CP1251 ru_RU.CP1251

и перезапускаем апач