Настройка samba в Linux Debian

Всё написанное далее я сам делал и работало на Debian 6.

Вначале ставим самбу:

aptitude install samba

Затем редактируем конфиг /etc/samba/smb.conf:

[global]                                                           
   workgroup = WORKGROUP                                           
   netbios name = ftp-server                                       
   server string = %h server                                       
   wins support = no                                                                                        
   dns proxy = no                                                  
   name resolve order = host wins bcast                            
   log file = /var/log/samba/log.%m                                
   max log size = 1000                                             
   syslog = 0                                                      
   panic action = /usr/share/samba/panic-action %d                 
   security = user                                                 
   encrypt passwords = true                                        
   passdb backend = tdbsam                                         
   null passwords = true                                           
   obey pam restrictions = yes                                     
   username map /etc/samba/smbusers                                
   unix password sync = yes                                        
   passwd program = /usr/bin/passwd %u                             
   passwd chat = *Entersnews*spassword:* %nn *Retypesnews*spassword:* %nn *passwordsupdatedssuccessfully* .
   pam password change = yes                                                                                         
   printing = cups                                                                                                   
   printcap name = cups                                                                                                                                                         
   socket options = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=8192 SO_SNDBUF=8192                               
[homes]                                                                                                              
   comment = Home Directories                                                                                        
#если надо шарить хомяки пользователей, ставим тут yes
   browseable = no                                                                                                   
   read only = no                                           &nbs
p;                                                        

   create mask = 0700                                                                                                
   directory mask = 0700                                                                                             
[printers]                                                                                                           
   comment = All Printers                                                                                            
   browseable = no                                                                                                   
   path = /var/spool/samba                                                                                           
   printable = yes                                                                                                   
   guest ok = no                                                                                                     
   read only = yes                                                                                                   
   create mask = 0700                                                                                                
[print$]                                                                                                             
   comment = Printer Drivers                                                                                         
   path = /var/lib/samba/printers                                                                                    
   browseable = yes
   read only = yes
   guest ok = no
#это объявление шары, доступной всем
[shared]
path = /home/vsftpd/shared
browseable = yes
read only = no
#тут ставим yes чтобы все могли видеть эту шару
guest ok = yes
create mask = 0660
#в моем случае эта директива играла ключевую роль, т. к. все файлы имеют хозяином пользователя vsftpd и права 660 или 770.
force user = vsftpd
directory mask = 0770
#шара, доступная только пользователю user
[user]
path = /home/vsftpd/user
browseable = yes
read only = no
guest ok = no
create mask = 0660
directory mask = 0770
#здесть через пробел указываем, какому/каким конкретно юзерам будет доступна шара
valid users = user
force user = vsftpd

В принципе, по ходу конфига всё понятно.Далее необходимо создать пользователей. Для создания системных юзаем команды:

useradd -m user
passwd user

Далее надо добавить пользователей в самбу. Добавление:

smbpasswd -a user< /b>

Включить пользователя:

smbpasswd -e user

В принципе, всё. Шара должна быть видна в Windows машинах: набираем в адресной строке эксплорера \ip_addressshare_name и если необходимо, вводим доступы.

Для монтирования Samba шары на клиентских машинах под Linux вначале установим пакет smbfs (для Debian/Ubuntu):

apt-get install smbfs

После этого можно юзать команду (под рутом или судо):

mount -t cifs -o username=user,password=passwd,iocharset=utf8,file_mode=0777,dir_mode=0777 //network/resource /mount/point

Параметры говорят сами за себя.
Чтобы шара монтировалась автоматически при загрузке в файл /etc/fstab добавляем следующее:
//network/resource /mount/point cifs username=user,password=passwd,iocharset=utf8,file_mode=0777,dir_mode=0777  0   0
http://geckich.blogspot.com/

Подсветка синтаксиса конфигурационных файлов в редакторе nano

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

sudo nano /usr/share/nano/config.nanorc

Туда пишем следующее:

## several config files
syntax “conf” “(.|/|)conf$” “(.|/|)logout$” “(.|/|)COLORS$” “(.|/|)colors$”
color yellow “/.*$” “TERM” “..*$” “=.*$” “*.*$”
color white “:unscaled” “[0-9]”
color blue “setenv|export” “;”
color green “#.*$”

Далее редактируем конфиг nano:

sudo nano /etc/nanorc

В конце добавляем:

include “/usr/share/nano/config.nanorc”

Теперь файлы типа *.conf будут с подсветкой синтаксиса.

Файлы для подсветки разных языков можно скачать тут

http://geckich.blogspot.com/

Создание виртуального раздела Linux

Иногда полезно создать “виртуальный” раздел (partition) в виде файла с файловой системой.
Делается это с помощью команды dd (создаем пустой файл размером 48М*1024 = 48 Гб):

sudo dd if=/dev/zero of=/mnt/storage1/virtual count=1024 bs=48M

if – откуда брать данные
of – куда пихать файл
bs – размер блока
count – сколько блоков
Затем можно создать в этом файле файловую систему ext4:

sudo mkfs.ext4 /mnt/storage1/virtual
Виртуальный раздел готов.
Теперь можно его примонтировать командой:

mount -o loop /mnt/storage1/virtual /mnt/virt

Далее чтобы раздел монтировался при перезагрузке системы надо в /etc/fstab добавить строчку типа:

/mnt/storage1       /virtual /mnt/virt       ext4       loop      0      0

http://geckich.blogspot.com/

Редирект сабдомена в папку сайта

Делается это следующим рэгэкспом, записанным в конфиге апача httpd.conf (apache2.conf),  виртуального хоста или в файле .htaccess в папке:

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www.sub.domain.com)|(sub.domain.com .com) [NC]
RewriteRule ^(.*)$ http://domain.com/dest_folder/$1 [L,R=301]
http://geckich.blogspot.com/

Изменить пароль админа (admin) Sugar CRM через MYSQL

Заходим на сервере в мускуль и выполняем команды:

Используем БД шугара (ваше имя может отличаться):

use sugarcrm;

Меняем пароль:

UPDATE users SET user_hash = MD5(‘new_password_here’) WHERE id = 1;
Дело в шляпе.
http://geckich.blogspot.com/

Повышение безопасности PHP с помощью директивы disable_functions и при этом сохранение работоспособности WordPress

У PHP есть замечательная директива конфигурационного файла –  disable_functions, которая позволяет запретить выполнение определенных (в т. ч. и потенциально опасных) функций.

Для использования такой полезной функции открываем php.ini (по дефолту) командой:

nano /etc/php.ini

Далее изменяем строчку или добавляем, если нет:

disable_functions=exec,passthru,shell_exec,system,proc_open,popen,curl_multi_exec,parse_ini_file,show_source

Во многих источниках рекомендуют еще отключать функцию curl_exec, но если сделать так, то WordPress не будет корректно работать.
http://geckich.blogspot.com/