ドメインやURLに英語のキーワードを含める場合で、複数の語句を含める場合、一般的にハイフンで区切る。(過去にアンダーバーで区切られた語句は個別の語句と認識しないとGoogle関係者が明言しているため)
JavaScriptのリンク
検索エンジンにおいて、以前は、JavaScriptで記述されたリンクはインデックスしなかったが、
現在、簡単な記述のものやAタグを利用しているものはインデックスされる傾向にある。
php-4.4.4インストール
事前に必要なパッケージインストール
apt-get update
apt-get install flex \
apache-devel \
bzip2-devel \
libmcrypt libmcrypt-devel \
ncurses ncurses-devel \
openssl-devel \
libjpeg-devel zlib-devel libpng-devel \
t1lib-devel \
imap imap-devel \
openldap openldap-devel \
db4-devel
アーカイブダウンロード
展開
展開したディレクトリへ移動
===================================
MysqlとPostgresqlはソースから
/usr/local/mysql,/usr/local/pgsql/
にインストールしている
===================================
./configure \
–with-mysql=/usr/local/mysql \
–with-pgsql=/usr/local/pgsql/ \
–enable-bcmath \
–enable-calendar \
–enable-dio \
–enable-exif \
–enable-ftp \
–enable-mbregex \
–enable-mbstring \
–enable-pcntl \
–enable-shmop \
–enable-sockets \
–enable-sysvmsg \
–enable-sysvsem \
–enable-sysvshm \
–enable-wddx \
–enable-zend-multibyte \
–prefix=/usr \
–with-apxs \
–with-bz2 \
–with-config-file-path=/etc \
–with-gettext \
–with-iconv \
–with-libmbfl \
–with-mcrypt \
–with-mime-magic \
–with-mod_charset \
–with-ncurses \
–with-openssl \
–with-gd –with-jpeg-dir=/usr –with-zlib-dir=/usr \
–enable-gd-jis-conv \
–enable-gd-native-ttf \
–with-t1lib \
–with-ttf \
–with-ldap \
–enable-dba \
–with-db4 \
–with-flatfile \
–with-inifile
make
make install
Apache再起動
/etc/rc.d/init.d/httpd restart
Samba 別セグメントからアクセス
以下のPortをあける
UDP 137
UDP 138
TCP 139
これでWindowsのコンピュータ検索でサーバーIPを検索するとアクセスできる。
だれでもアクセスできるのはまずいので制限かける。
globalセクション
hosts allow にアクセスさせるIPを指定。
security = user(要認証となる)
共有ディレクトリのセクション
guest only = no
guest ok = no
(パスワード設定)
Windowsユーザーと同じユーザーをLinux側に作成。
例)
useradd test
passwd test
smbpasswd -a test
パスワード要求されるのでWindowsと同じパスワードを入力。
以上
Postfix 特定ドメイン・IPアドレス受信拒否
main.cf に以下を記述。
smtpd_client_restrictions=permit_mynetworks,check_client_access hash:/etc/postfix/reject_list,permit
受信拒否リスト作成。
/etc/postfix/reject_list というファイルを作成
hoge.com REJECT
123.123.123.123 REJECT
といった感じで記述。
対象のドメイン・IPアドレスを受信拒否する。
reject_listをDB形式に変換。
/usr/sbin/postmap /etc/postfix/reject_list
Postfixをリロードして終了。
/usr/sbin/postfix reload
SSHアタック防止
sshd_configに以下を追記
MaxStartups 2:80:5
2回認証受付後80%の確立で拒否。
5回超えると無条件で拒否。
SSHの公開鍵認証
■鍵作成
以下3種類のうちからクライアントの対応状況などで選択。
安全度 SSH Ver.1 RSA < SSH Ver.2 RSA < SSH Ver.2 DSA らしい。
SSH Ver.1 RSA
ssh-keygen -t rsa1
SSH Ver.2 RSA
ssh-keygen -t rsa
SSH Ver.2 DSA
ssh-keygen -t dsa
クライアントUTF-TeraTerm ProはDSAに対応してるので、DSAを例とする。
※鍵を使用するユーザーで作業
$ ssh-keygen -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/home/******/.ssh/id_dsa):
※そのままenterでディフォルトのファイル保存先
Enter passphrase (empty for no passphrase):[パスフレーズ]
Enter same passphrase again:[パスフレーズ]
id_dsa(秘密鍵)
id_dsa.pub(公開鍵)
が生成される。
$ mv id_dsa.pub authorized_keys
$ chmod 600 authorized_keys
などとしてファイル名とパーミッション変更
■クライアントへ鍵導入
id_dsaをなにかでコピーしてTeraTermがインストールされてるディレクトリへ配置して、ログイン時使用する。
※ここで、実際ログインできることを確認しておく。
■SSHのユーザ認証を変更
sshd_confに下記を追記。
PasswordAuthentication no
# /etc/rc.d/init.d/sshd restart
などで再起動
以上で完了。
=======================================
以下はクライアントマクロファイルの例
■マクロファイル作成
(マクロ言語補足)
connect: 接続
strconcat: 変数に文字列付けたし
wait: Hostからの受信待ち
sendln: Clientから送信
(以下記述例)
;各種値設定
Host = ‘host_name’
User1 = ‘user_name’
Password1 = ‘password’
Ini = ‘TERATERM.INI’
KeyFile = ‘keyfile’;
Prompt1 = ‘$’
PromptPW = ‘Password:’
Df = ‘df’
;接続コマンド作成
;Iniはなくてもよい。
;Hostごとにマクロを複数作るときなど
;マクロごとに背景色の違うTERATERM.INIを指定し、区別するといいかも
;/2のところはssh2が使えなければ/1とする
Cmd = ”
strconcat Cmd Host
strconcat Cmd ‘ /ssh /2 /auth=publickey’
strconcat Cmd ‘ /user=’
strconcat Cmd User1
strconcat Cmd ‘ /passwd=’
strconcat Cmd Password1
strconcat Cmd ‘ /keyfile=’
strconcat Cmd KeyFile
strconcat Cmd ‘ /f=’
strconcat Cmd Ini
;接続
connect Cmd
;対話的処理スタート(dfコマンド発行)
wait Prompt1
sendln Df
※このマクロファイルをttpmacro.exeと同じフォルダにfilename.ttlなどとして保存する。
■マクロショートカットへ関連付け
ttpmacro.exeのショートカットをどこかに作る
プロパティのリンク先に
引数としてマクロファイル名を記述
(記述例)
“C:\Program Files\teraterm\ttpmacro.exe” “filename.ttl”
メールアドレス正規表現
/^[a-zA-Z0-9_\.\-]+?@[A-Za-z0-9_\.\-]+$/
URL正規表現
/^(https?|ftp)(:\/\/[-_.!~*\'()a-zA-Z0-9;\/?:\@&=+\$,%#]+)$/
FTP自動実行(cron&expect)
基本的な流れ
spawnでftp起動
expectで応答待ち
sendで入力文字列送信
※expectオプション「-re」は正規表現利用時
以下参考スクリプト
(cronなどで実行する)
#!/usr/bin/expect
set host “hostname”
set user “username”
set pass “password”
set file “filename”
set prompt “Name.*”
set lcd_cmd “lcd /local/to/dir”
spawn ftp $host;
expect -re “$prompt”
send “$user\r”
expect “Password:”
send “$pass\r”
expect “ftp>”
send “$lcd_cmd\r”
expect “ftp>”
send “get $file\r”
expect “ftp>”
send “bye\r”
interact
exit
====================================
ディフォルトのタイムアウトは10秒。
大きいファイルを転送する場合などは
expect -timeout -1 “ftp>”
などとしてタイムアウトしないようにする。
(任意の値(秒数)も設定可能)