FreeBSD: установка вебсервера (nginx + PHP + MySQL)



Как и для винды — делаем все по минимуму, тестим с помощью phpMyAdmin.

  1. Инсталлим все:
    # pkg install nginx
    # pkg install php56
    # pkg install php56-json
    # pkg install php56-mbstring
    # pkg install php56-mysqli
    # pkg install php56-session
    # pkg install mysql75-server
    


  2. Открываем /usr/local/etc/nginx/nginx.conf, раскомменчиваем блок location ~ \.php$, где есть fastcgi, там root меняем на /usr/local/www/nginx/, /scripts$fastcgi_script_name; на $document_root$fastcgi_script_name;. Сохраняем, закрываем.

  3. Пихаем все в автозагрузку: # echo -e 'nginx_enable="YES"\nphp_fpm_enable="YES"\nmysql_enable="YES"' >> /etc/rc.conf.

  4. Запускаем все: # /usr/local/etc/rc.d/nginx start && /usr/local/etc/rc.d/php-fpm start && /usr/local/etc/rc.d/mysql-server start. После этого можно проверить работу nginx и PHP, создав спецфайл (echo '<?php phpinfo(); ?>' > /usr/local/www/nginx/i.php) и открыв в браузере http://имя_хоста/i.php.

  5. Смотрим временный мускульный рутопасс (# cat ~/.mysql_recret), логинимся под рутом (# mysql -u root -p), меняем пароль (set password = password('новый_пароль');) и выходим (exit).

  6. Для проверки закачиваем phpMyAdmin в /usr/local/www/nginx/pma, открываем в браузере http://имя_хоста/pma/index.php и логимися под рутом.

FreeBSD: подключаем флешку или HDD

Подключаем, смотрим что добавилось (# dmesg или # camcontrol devlist). Флешка, вероятно, будет da0 (либо, da1, da2 или сколько там до нее еще было подключено). Харды, соответственно ada0, ada1 и т. д. Разделы могут быть da0s1, ada1s2, в таком стиле, короче.

Флешку и временный хард монтируем примерно так: # mount -t msdosfs /dev/da0s1 /mnt.
Для UFS параметр -t вообще не нужен (т. е. просто # mount /dev/что /куда). Кроме msdosfs (это FAT и FAT32) еще бывают: cd9660, mfs, nfs, nullfs, oldnfs, smbfs, udf и unionfs (с NTFS и exFAT все сложнее).

Если хард новый и нужно форматнуть в UFS, то # newfs /dev/ada1.

Постоянную флешку или хард мало просто смонтировать, надо еще добавить строку в /etc/fstab, чтобы подцеплялось при загрузке: /что/смонтировано /куда/смонтировано ufs rw 0 0.

FreeBSD: экстерминатус



Полное стирание данных без возможности восстановления.
Командуем # dd if=/dev/zero of=/dev/устройство bs=1048576.

Если большой хард, то лучше в скрине (долго).
Прогресс можно проверить с помощью Ctrl+T.

FreeBSD: закрываем SSH-доступ всем, кроме...


  1. Создаем /etc/ipfw.conf, пишем там:
    -qf flush
    
    table 1 flush
    table 1 add <ип>
    table 1 add <диапазон>
    
    add 10 allow tcp from table(1) to me 22
    add 10 deny tcp from any to me 22
    add 20 allow ip from any to any


  2. В /etc/rc.conf добавляем:
    firewall_enable="YES"
    firewall_type="/etc/ipfw.conf"
    


  3. В кроне пишем * * * * * /etc/rc.d/ipfw restart.

  4. Командуем # /etc/rc.d/ipfw start — все блочится, выходим.

  5. Через минуту заходим заново и убираем задачу из крона.

FreeBSD: передача файлов по SSH

Отправить: scp /исходный/файл юзер@хост:/конечный/файл.
Принять: scp юзер@хост:/исходный/файл /конечный/файл.

Ориентир: всегда указывается сначала что передать, а потом куда передать. Работает в обе стороны.

Для каталогов: -r.
Нестандартный порт: -P <номер>.