Инструкция по установке и настройке dante proxy (он же sockd) с авторизацией через radius. Можно и без радиуса, см комментарии в конфиге.
Если вкратце, то
sudo su
rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum install pam pam-devel pam_radius gcc -y
wget https://www.inet.no/dante/files/dante-1.4.2.tar.gz
tar -xvf dante-1.4.2.tar.gz
cd dante-1.4.2
./configure
make
make install
vi /etc/sockd.conf
vi /etc/init.d/sockd
chmod +x /etc/init.d/sockd
vi /etc/sysconfig/iptables
vi /etc/pam_radius.conf
service iptables restart
service sockd start
chkconfig --level 2345 sockd on
Содержимое конфигурационных файлов:
В продолжении темы про выпуск сертификатов в Крипто-ПРО расскажу про добавление SubjectSignTool к запросу на сертификат (CSR) через командную строку.
Мануал к cryptocp говорит нам использовать -ext /path/to/ext/file
, но вот про то, как создать файл с расширениями, естественно, умалчивает.
Начнем с того, что у нас есть уже установленный Oracle Instant Client и SDK на Ubuntu, процесс его установки описывать не буду тк все это давно описано. Итак, мы хотим подружить наш новомодный Node.js с ораклом. Для этого нам потребуется фирменный node-oracledb - a Node.js driver for Oracle Database.
Скорее всего команда
npm install oracledb
закончится ошибкой, потому, что как обычно это бывает с ораклом, не хватает переменных окружения. В моем случае Oracle Instant Client установлен в /opt/Oracle/instantclient_11_2
, поэтому все буду описывать относительного этого пути. SDK расположен в /opt/Oracle/instantclient_11_2/sdk
.
Идем в /etc/profile.d/oracle.sh
, который вы создали при установке клиента, и добавляем в него OCI_LIB_DIR
и OCI_INC_DIR
, таки образом, чтоб получилось что-то вроде моего:
export PATH=/opt/Oracle/instantclient_11_2:$PATH
export LD_LIBRARY_PATH=/opt/Oracle/instantclient_11_2:$LD_LIBRARY_PATH
export NLS_LANG=AMERICAN_AMERICA.UTF8
export ORACLE_HOME=/opt/Oracle/instantclient_11_2
export TNS_ADMIN=/opt/Oracle
export SQLPATH=/opt/Oracle/instantclient_11_2
export OCI_LIB_DIR=$ORACLE_HOME
export OCI_INC_DIR=$ORACLE_HOME/sdk/include
Так же можно прописать нужные переменные в /root/.bashrc
для того, чтоб они были доступны под суперпользователем.
или как не дать маку и другим клиентам писать назойливые .DS_Store
и Thumbs.db
на файловый сервер.
Решается все достаточно просто - для этого существует директива veto files в конфиге самбы, она может быть установлена глобально или отдельно на каждую шару, вот пример из моего конфига:
veto files = /._*/.DS_Store/.T*/Thumbs.db/Network Trash Folder/Temporary Items delete veto files = yes
И после рестарта самбы рекомендуется зачистить сервер от такого рода файлов командой
find /path/to/samba/shares \( -name ._* -or -name .DS_Store -or -name .T* -or -name Thumbs.db \) -delete
find /path/to/samba/shares -type d \( -name "Network Trash Folder" -or -name "Temporary Items" \) -exec rm -rf {} +
После этого проблема закрыта.
Справочный материал:
PS Так же на стороне мака можно запретить создание подобного рода файлов на сетевых носителях и прочих примонтированных устройствах командой
defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool true
Но по отзывам это применимо не ко всем Mac OS, из быстро-гуглинга так и не понял у кого работает, а у кого нет, но официальный саппорт apple рекомендует именно такой способ.
Получая данные из unix консоли, в результате exec()
и других вызовов, не латинские символы обычно экранируются с помощью \x##, где ## - это шестнадцатеричный код символа, но совсем не UTF8.
Например при получении текста сертификата средствами OpenSSL вместо русских будет что-то вроде этого:
C=RU, L=\xD0\x9C\xD0\xBE\xD1\x81\xD0\xBA\xD0\xB2\xD0\xB0,
Для того чтоб перевести это к читаемому виду в в консоли надо сделать:
<ваша команда> | sed 's@+@ @g;s@%@\\x@g' | xargs -0 printf '%b'
А для PHP вот такой код (на всякий случай, перед x стоит 4 обратных слеша):
preg_replace_callback('/\\\\x([0-9A-F]{2})/', function($a){ return pack('H*', $a[1]); }, $your_string);
В результате получаем русский текст:
C=RU, L=Москва,