iptables(1)http,sshd
// 一旦入力を許可・転送は不許可・出力は許可
#iptables -P INPUT ACCEPT
#iptables -P FORWARD DROP
#iptables -P OUTPUT ACCEPT#iptables -A INPUT -p icmp -j ACCEPT
#iptables -A INPUT -i lo -j ACCEPT
#iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT //http
#iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT //ssh
#iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
//60秒間に3回認証失敗したら、ログはいて拒否
#iptables -A INPUT -i eth0 -p tcp -m tcp --dport 22 -m state --state NEW -m recent --set --name SSH --rsource
#iptables -A INPUT -i eth0 -p tcp -m tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 3 --rttl --name SSH --rsource -j LOG --log-prefix 'ssh_attack:'
#iptables -A INPUT -i eth0 -p tcp -m tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 3 --rttl --name SSH --rsource -j DROP
//上記以外のアクセスは拒否
#iptables -P INPUT DROP
// セーブして再起動
#/etc/init.d/iptables save
#/etc/init.d/iptables restart
Apache+PHPインストール
apache のビルド・インストール
$cd httpd-2.2.12/
$./configure --prefix=/path/to/apache --enable-so
$sudo make
$sudo make install
phpのビルド・インストール
./configure
--prefix=/opt/php53
--with-apxs2=/opt/apache2/bin/apxs
--with-mysql=/opt/mysql55
--with-mysqli=/opt/mysql55/bin/mysql_config
--with-mysql-socket=/tmp/mysql.sock
--with-pdo-mysql=/opt/mysql55
--enable-pdo
--enable-mbstring
--enable-mbregex
--with-gd
--with-zlib
--with-curl
--with-openssl
--enable-pcntl
--with-mcrypt
--enable-sockets
--enable-zend-multibyte
configure時に要求されたもの
$sudo apt-get install libssl-dev
$sudo apt-get install libxml2-dev
$sudo apt-get install libcurl4-openssl-dev
$sudo apt-get install libmcrypt-dev
$sudo apt-get install libjpeg62-dev
$sudo apt-get install libpng12-dev
↑ 画像系のライブラリは、/usr/lib/にシンボリックリンクを作成
xdebug インストール(http://www.xdebug.org/)
$sudo apt-get install autoconf
$tar zxf xdebug-2.1.1.tgz
$cd xdebug-2.1.1/
$/opt/php53/bin/phpize
$./configure --enable-xdebug --with-php-config=/opt/php53/bin/php-config
$make$sudo cp -i xdebug.so /opt/apache2/modules/
cp /path/to/php_source/php.ini-development /opt/php53/lib/php.ini
cp /path/to/php_source/php.ini-product /opt/php53/lib/php.ini
php.iniの設定
/opt/php53/lib/php.ini
以下の行を追加
zend_extension="/opt/apache2/modules/xdebug.so"
Mysqlインストール
5.5.12 Ubuntu/11.04
ユーザの作成
$sudo groupadd mysql
$sudo useradd -g mysql mysql
$getent group mysql
// cmake がなかったら入れておく
$sudo apt-get install cmake
// 入っていなかったら libncurses5-devを入れておく
$sudo apt-get install libncurses5-dev
※入っていない場合cmake中に、以下のエラー。
libncurses5-devインストール後、remove CMakeCache.txtして、再度cmake
CMake Error at cmake/readline.cmake:82 (MESSAGE):
Curses library not found. Please install appropriate package,remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel.
Call Stack (most recent call first):
cmake/readline.cmake:126 (FIND_CURSES)
cmake/readline.cmake:216 (MYSQL_USE_BUNDLED_LIBEDIT)
CMakeLists.txt:250 (MYSQL_CHECK_READLINE)
- Configuring incomplete, errors occurred!
- -
mysqlのビルドとインストール
$tar -zxf ./mysql-5.5.12.tar.gz
$cd ./mysql-5.5.12
$sudo cmake .
-DCMAKE_INSTALL_PREFIX=/opt/mysql55
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_unicode_ci
-DMYSQLD_USER=mysql$sudo make
$sudo make install
$sudo /opt/mysql55/scripts/mysql_install_db --user=mysql
$sudo cp support-files/my-medium.cnf /etc/my.cnf
$sudo chown -R root /opt/mysql55
$sudo chown -R mysql /opt/mysql55/data
// 既存環境からのダンプとレストア
:dump
$mysqldump -u user_name database_name > dumpfile.sql
:restore
$mysql -u user -p database_name < dumpfile.sql
Python開発環境(1) [ virtualenv + virtualenvwrapper + pip ]
- 使用言語 :Python 2.6
- フレームワーク :Django 1.2.3
- データベース :Postgresql 9.1alpha
- 作るもの :まずToDoリスト的なもの
- 開発:Ubuntu10.04 Desktop
開発用の環境を作成する。virtualenv + virtualenvwrapper + pip を利用する。virtualenvwrapperのインストールは、1.X.Xと2.X.Xではインストール方法が違う。setup.pyがあったのでbuild→installしたらインストールは成功。その他設定はダウンロード元で確認
http://www.doughellmann.com/docs/virtualenvwrapper/
以下はインストールを行った手順。
開発環境のインストール
Virtualenv-1.4.9 のインストール
$ wget http://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.4.9.tar.gz
$ tar -zxf ./virtualenv-1.4.9.tar.gz
$ cd virtualenv-1.4.9
$ python setup.py build
$ sudo python setup.py install
virtualenvwrapper2.5.1のインストール
$ wget http://www.doughellmann.com/downloads/virtualenvwrapper-2.5.1.tar.gz
$ tar -zxf ./virtualenvwrapper-2.5.1.tar.gz
$ python setup.py build
$ sudo python setup.py install
pip0.8.1のインストール
$ wget http://pypi.python.org/packages/source/p/pip/pip-0.8.1.tar.gz
$ tar -zxf pip-0.8.1.tar.gz
$ cd pip-0.8.1/
$ sudo python setup.py install
インストール後の動作確認
WORKON_HOME用のディレクトリを作成して~/.bashrc に以下を定義
$ mkdir ~/.virtualenv
$ vi ~/.bashrc
[.bashrc]----------------------------------------------
export WORKON_HOME=$HOME/.virtualenv
source /usr/local/bin/virtualenvwrapper.sh
- -
仮想環境(amenbo)作成
もう一個(test)作成
切り替えてみる
そして用済みは消してみる
$ deactivate
$ rmvirtualenv test
最後、djangoのインストール
(amenbo)$ pip -E ~/.virtualenv/amenbo install django
RHEL5.3 WEB、SSL設定
1.mod_sslのインストール
2.秘密鍵の作成
3.証明書の作成
# make server.crt
:keyファイル作成時のパスフレーズ入力
Country Name (2 letter code) [GB]:JP #国
State or Province Name (full name) [Berkshire]:Saitama #都道府県
Locality Name (eg, city) [Newbury]:Toda #市
Organization Name (eg, company) [My Company Ltd]:hoge corp #組織
Organizational Unit Name (eg, section) : #組織
Common Name (eg, your name or your server's hostname) :hoge.com #ホスト名
Email Address []:webmaster@hoge.com
4.sslのコンフィグ設定
vi /etc/httpd/conf.d/ssl.config
SSLCertificateFile /etc/pki/tls/certs/server.crt #証明書
SSLCertificateKeyFile /etc/pki/tls/certs/server.key #秘密鍵
5.httpdの再起動
/etc/rc.d/init.d/httpd restart