28 февр. 2012 г.
Redmine русские буквы отображаются знаками вопроса ??? - неправильная кодировка в базе данных.
Если в Redmine русскоязычный интерфейс отображается корректно, а вот содержимое, например, статья в Wiki, вместо русских букв пишет ??? типа как тут:
то суть проблемы заключается в следующем. Вы когда создавали базу данных для редмайна, указали неправильную кодировку для данных.
1. Идем в MYSQL
mysql -uroot -p
2. Узнаем кодировку базы:
use our_database_name;
show variables like "character_set_database";
то суть проблемы заключается в следующем. Вы когда создавали базу данных для редмайна, указали неправильную кодировку для данных.
1. Идем в MYSQL
mysql -uroot -p
2. Узнаем кодировку базы:
use our_database_name;
show variables like "character_set_database";
27 февр. 2012 г.
Работа с историей команд в Linux
Работа с историей команд в Linux:
- !! — ссылается на предыдущую команду;
- !n — ссылается на команду под номером n;
- !-n — ссылается на команду по номером „текущая минус n“;
- history -c — очистить историю команд, удалив все записи
- history -d n — удалить из истории запись под номером n
- history -a — дописать команды, введенные в текущей сессии bash, в конец файла $HISTFILE
Установка сканера уязвимостей Nessus на Debian 6
UPDATE:
Сейчас Nessus устанавливается чуть по-другому:
1. Через lynx уже нельзя скачать nessus прямо на сервер, нужно себе на рабочую стандию, затем с помощью scp или как вам удобнее - на сервер.
2. Регистрацию проходим, ключ активации Home версии приходит на e-mail и вводим его в веб-морде nessus-а при первом входе.
3. Не нужно выполнять команды для скачивания плагинов и установки сертификатов - nessus делает всё сам.
-------------
Установка сканера уязвимостей довольно проста. Я устанавливал его на Debian 6, но на других дистрибутивах также проблем быть не должно, только программы для установки другие.
Вначале качаем на сервер дистрибутив для нашей ОС и архитектуры. Лучше делать это с помощью lynx, т. к. ссылка не прямая и wget качает какую-то ересь, если вы просто скопипастите в него ссылку на пакет.
lynx http://www.nessus.org/products/nessus/select-your-operating-system
Принимаем лицензию (Accept), далее выбираем нужный пакет, сохраняем.
Затем юзаем команду:
dpkg -i Nessus-5.0.0-debian6_amd64.deb
Сейчас Nessus устанавливается чуть по-другому:
1. Через lynx уже нельзя скачать nessus прямо на сервер, нужно себе на рабочую стандию, затем с помощью scp или как вам удобнее - на сервер.
2. Регистрацию проходим, ключ активации Home версии приходит на e-mail и вводим его в веб-морде nessus-а при первом входе.
3. Не нужно выполнять команды для скачивания плагинов и установки сертификатов - nessus делает всё сам.
-------------
Установка сканера уязвимостей довольно проста. Я устанавливал его на Debian 6, но на других дистрибутивах также проблем быть не должно, только программы для установки другие.
Вначале качаем на сервер дистрибутив для нашей ОС и архитектуры. Лучше делать это с помощью lynx, т. к. ссылка не прямая и wget качает какую-то ересь, если вы просто скопипастите в него ссылку на пакет.
lynx http://www.nessus.org/products/nessus/select-your-operating-system
Принимаем лицензию (Accept), далее выбираем нужный пакет, сохраняем.
Затем юзаем команду:
dpkg -i Nessus-5.0.0-debian6_amd64.deb
17 февр. 2012 г.
Генерация самоподписанного сертификата для Apache
Cтавим openssl если еще нет, затем топаем в папку, где будут лежать сертификаты, например, /etc/ssl/ и юзаем команду чтобы сгенерировать ключ:
openssl genrsa -des3 -out server.key 1024
опция -des3 отвечает за пароль, если ее не указывать, ключ будет без пароля.
Далее генерируем CSR? заполнив всё, что команда спрашивает:
openssl genrsa -des3 -out server.key 1024
опция -des3 отвечает за пароль, если ее не указывать, ключ будет без пароля.
Далее генерируем CSR? заполнив всё, что команда спрашивает:
openssl req -new -key server.key -out server.csr
Теперь генерируем самоподписанный сертификат:
openssl x509 -req -days 700 -in server.csr -signkey server.key -out server.cert
Пароли лучше не делать.
Теперь генерируем самоподписанный сертификат:
openssl x509 -req -days 700 -in server.csr -signkey server.key -out server.cert
Пароли лучше не делать.
Теперь можно юзать наши сертификаты в виртуальных хостах апача:
SSLCertificateFile /etc/ssl/server.cert
SSLCertificateKeyFile /etc/ssl/server.key
SSLCertificateFile /etc/ssl/server.cert
SSLCertificateKeyFile /etc/ssl/server.key
Как узнать свой внешний IP через консоль Linux
Юзаем такую команду:
lynx --dump 2ip.ru | egrep -o '([[:digit:]]{1,3}\.){3}[[:digit:]]{1,3}' | uniq;
lynx --dump 2ip.ru | egrep -o '([[:digit:]]{1,3}\.){3}[[:digit:]]{1,3}' | uniq;
В дистрибутивах обычно lynx по-умолчанию не ставится, но это очень полезный консольный браузер и его стоит устанавливать.
16 февр. 2012 г.
Установка и настройка NFS в Debian 6 Linux
Вначале, как всегда, устанавливаем необходимые компоненты:
sudo apt-get install nfs-kernel-server nfs-common portmap
Затем надо отредактировать файлик, содержащий список шар:
sudo nano -w /etc/exports
Здесь я прописал общую шару, доступную всем так:
/home/vsftpd/shared 10.0.1.0/24(rw,all_squash,anonuid=5001,anongid=65534,no_subtree_check)
А индивидуальную шару, доступную только пользователю с IP 10.0.1.2 так:
/home/vsftpd/user 10.0.1.2(rw,all_squash,anonuid=5001,anongid=65534,no_subtree_check)
В скобках такие параметры потому что мне нужно было сделать видимым каталог ftp и all_squash,anonuid=5001 указывает, что будет использоваться юзер vsftpd, а anongid=65534 - его группа. Посмотреть цифры для вашего пользователя можно в /etc/passwd.
sudo apt-get install nfs-kernel-server nfs-common portmap
Затем надо отредактировать файлик, содержащий список шар:
sudo nano -w /etc/exports
Здесь я прописал общую шару, доступную всем так:
/home/vsftpd/shared 10.0.1.0/24(rw,all_squash,anonuid=5001,anongid=65534,no_subtree_check)
А индивидуальную шару, доступную только пользователю с IP 10.0.1.2 так:
/home/vsftpd/user 10.0.1.2(rw,all_squash,anonuid=5001,anongid=65534,no_subtree_check)
В скобках такие параметры потому что мне нужно было сделать видимым каталог ftp и all_squash,anonuid=5001 указывает, что будет использоваться юзер vsftpd, а anongid=65534 - его группа. Посмотреть цифры для вашего пользователя можно в /etc/passwd.
Перезапускаем нфс-сервер:
sudo apt-get install portmap nfs-common
sudo mkdir /mnt/share
sudo mount -t nfs 10.0.1.1:/home/vsftpd/shared /mnt/share
10.0.1.1:/home/vsftpd/shared /mnt/share nfs rw,hard,intr 0
sudo /etc/init.d/nfs-kernel-server restart
Далее можно не дрочить сервис, а применять новые параметры командой:
Далее можно не дрочить сервис, а применять новые параметры командой:
sudo exportfs -a
На клиенте чтобы юзать шару делаем следующее:
На клиенте чтобы юзать шару делаем следующее:
sudo apt-get install portmap nfs-common
sudo mkdir /mnt/share
sudo mount -t nfs 10.0.1.1:/home/vsftpd/shared /mnt/share
Чтобы шара была доступна автоматически без перезагрузки, редактируем
sudo nano /etc/fstab
Добавляем:
Настройка 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 = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
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
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
Вначале ставим самбу:
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 = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
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
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
Как вывести содержимое файла на экран без комментариев (строк, содержащих #)
Я сделал это с помощью двух grep.
cat /etc/some.conf | grep -v '#' | grep -v '^$'
cat /etc/some.conf | grep -v '#' | grep -v '^$'
15 февр. 2012 г.
Подсветка синтаксиса конфигурационных файлов в редакторе 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 будут с подсветкой синтаксиса.
Файлы для подсветки разных языков можно скачать тут
Создаем файл с конфигом для цветовой схемы нано:
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 "#.*$"
sudo nano /etc/nanorc
В конце добавляем:
include "/usr/share/nano/config.nanorc"
Файлы для подсветки разных языков можно скачать тут
Создание виртуального раздела Linux
Иногда полезно создать "виртуальный" раздел (partition) в виде файла с файловой системой.
Делается это с помощью команды dd (создаем пустой файл размером 48М*1024 = 48 Гб):
sudo dd if=/dev/zero of=/mnt/storage1/virtual count=1024 bs=48M
if - откуда брать данные
of - куда пихать файл
bs - размер блока
count - сколько блоков
Затем можно создать в этом файле файловую систему ext4:
/mnt/storage1 /virtual /mnt/virt ext4 loop 0 0
Делается это с помощью команды 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 добавить строчку типа:
Теперь можно его примонтировать командой:
mount -o loop /mnt/storage1/virtual /mnt/virt
Далее чтобы раздел монтировался при перезагрузке системы надо в /etc/fstab добавить строчку типа:
/mnt/storage1 /virtual /mnt/virt ext4 loop 0 0
4 февр. 2012 г.
Редирект сабдомена в папку сайта
Делается это следующим рэгэкспом, записанным в конфиге апача 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]
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]
Расположение Ruby Gems
Узнать расположение Ruby Gems и некоторую другую информацию можно с помощью команды:
gem environment
gem environment
Подписаться на:
Сообщения (Atom)