HTTPD
2017������12·���13������
Let's Encrypt¹¹���·\³\���\���\���
��������⡭��䏢����������3\���·���¡�cron������»���¹��Џ����я�����½��쏪�»��������������¡�
�돪�²¼\³\���\���\���¼���¹���·���²���
Upgrading certbot-auto 0.18.1 to 0.20.0...
Replacing certbot-auto...
Creating virtual environment...
Installing Python packages...
Installation succeeded.
/opt/eff.org/certbot/venv/lib/python2.6/site-packages/cryptography/__init__.py:26: DeprecationWarning: Python 2.6 is no longer supported by the Python core team, please upgrade your Python. A future version of cryptography will drop support for Python 2.6
DeprecationWarning
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator webroot, Installer None
Cert is due for renewal, auto-renewing...
Renewing an existing certificate
/opt/eff.org/certbot/venv/lib/python2.6/site-packages/acme/jose/jwa.py:110: DeprecationWarning: signer and verifier have been deprecated. Please use sign and verify instead.
signer = key.signer(self.padding, self.hash)
Performing the following challenges:
http-01 challenge for \���\���\���\��я��¾
Using the webroot path /home/web/\���\���\���\��я��¾/html for all unmatched domains.
Waiting for verification...
Cleaning up challenges
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/\���\���\���\��я��¾/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/\���\���\���\��я��¾/privkey.pem
Your cert will expire on 2018-03-12. To obtain a new or tweaked
version of this certificate in the future, simply run certbot-auto
again. To non-interactively renew *all* of your certificates, run
"certbot-auto renew"
- If you like Certbot, please consider supporting our work by:
Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le
#
2009������11·���24������
lighttpd������\���\��\������¼\������¼\���
µ��������������������ď�����\���\�돢�̏����叢���������叢�����������돫������������������������ď�¡�
lighttpd¼«��ď��������������(������������)\���\��\������¼\������¼\���µ����½������������������(���������·������)����������
cronlog������������\��\���\��\���\���������²��Ï��·������\���\��\������¼\������¼\������¹��������¡�
���Ï�����¼��HP
http://cronolog.org/
���\���\���\¹\������¼\���
# wget http://cronolog.org/download/cronolog-1.6.2.tar.gz
# tar xvfz cronolog-1.6.2.tar.gz
# cd cronolog-1.6.2 ; pwd
# ./configure && make && make install
���lighttpd.conf������½���
server.errorlog = "|/usr/local/sbin/cronolog /usr/local/lighttpd/logs/error.log.%Y%m%d"
accesslog.filename = "|/usr/local/sbin/cronolog /usr/local/lighttpd/logs/access.log.%Y%m%d"
�����Ώ�����������reload
���³������
# ls -1 /usr/local/lighttpd/logs/*.log.2009*
/usr/local/lighttpd/logs/access.log.20091124
/usr/local/lighttpd/logs/error.log.20091124
2009������10·���21������
apache2������lighttpd������ab���·�����������Ώ����ď������돫������䏪�����³������������������
����conf���������������\���\���\���\���\���
����apache2������ab���\µ���¼\Ð\���\��ӏ��¼\������lighttpd������ab
\���\���\��������������� -n 8000 -c 800
��-n 10000 -c 1000������������apache2���«�������ޏ�Џ����⏢�̏��µ�����������������������ď�������
���·���²���
Server Software: Apache/2.2.13
Server Hostname: ******
Server Port: 80
Document Path: /index.html
Document Length: 14 bytes
Concurrency Level: 800
Time taken for tests: 17.741 seconds
Complete requests: 8000
Failed requests: 0
Write errors: 0
Total transferred: 2480000 bytes
HTML transferred: 112000 bytes
Requests per second: 450.94 [#/sec] (mean)
Time per request: 1774.052 [ms] (mean)
Time per request: 2.218 [ms] (mean, across all concurrent requests)
Transfer rate: 136.52 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 424 1442.3 1 9005
Processing: 1 609 2036.8 236 17639
Waiting: 1 608 2036.8 236 17639
Total: 182 1032 2446.9 240 17719
Percentage of the requests served within a certain time (ms)
50% 240
66% 251
75% 305
80% 498
90% 3225
95% 3734
98% 9295
99% 16639
100% 17719 (longest request)
==============================
Server Software: lighttpd/1.4.23
Server Hostname: ******
Server Port: 80
Document Path: /index.html
Document Length: 14 bytes
Concurrency Level: 800
Time taken for tests: 9.898 seconds
Complete requests: 8000
Failed requests: 0
Write errors: 0
Total transferred: 1976000 bytes
HTML transferred: 112000 bytes
Requests per second: 808.21 [#/sec] (mean)
Time per request: 989.844 [ms] (mean)
Time per request: 1.237 [ms] (mean, across all concurrent requests)
Transfer rate: 194.95 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 339 1520.3 1 9018
Processing: 1 253 778.3 142 8526
Waiting: 1 253 778.3 141 8526
Total: 96 592 1779.0 144 9521
Percentage of the requests served within a certain time (ms)
50% 144
66% 150
75% 157
80% 163
90% 210
95% 3164
98% 9108
99% 9272
100% 9521 (longest request)
2009������10·���20������
apache����������ޏ�����������������������lighttpd�����ҏ����Ώ��������·�����������Ώ�����
<Files ~ "^\.ht">
Order allow,deny
Deny from all
Satisfy All
</Files>
<VirtualHost *:80>
ServerName vh-01.com
ServerAlias www.vh-01.com vh-01.net www.vh-01.net
DocumentRoot /home/vh-01.com/htdocs
ScriptAlias /cgi-bin/ /home/vh-01.com/cgi-bin/
ErrorLog /home/vh-01.com/logs/error_log
CustomLog /home/vh-01.com/logs/access_log combined
<Directory /home/vh-01.com/htdocs>
Options FollowSymLinks
DirectoryIndex index.html index.htm
</Directory>
<Directory /home/vh-01.com/htdocs/basic>
AuthType Basic
AuthName Common
AuthUserFile /home/vh-01.com/.htpasswd
Require valid-user
</Directory>
<Directory /home/vh-01.com/htdocs/acl>
Order Deny,Allow
Deny from ALL
Allow from 192.169.11.0/24
</Directory>
</VirtualHost>
<IfDefine SSL>
<VirtualHost *:443>
ServerName vh-01.com
DocumentRoot /home/web/vh-01.com/html
ScriptAlias /cgi-bin/ /home/web/vh-01.com/cgi-bin/
ErrorLog /home/web/vh-01.com/logs/error_log
CustomLog /home/web/vh-01.com/logs/access_log combined
SSLEngine on
SSLCertificateFile /usr/local/apache/conf/ssl.crt/vh-01.com.crt
SSLCertificateKeyFile /usr/local/apache/conf/ssl.key/vh-01.com.key
SSLCertificateChainFile /usr/local/apache/conf/ssl.ca/vh-01.com.ca
<Directory /home/vh-01.com/htdocs>
Options FollowSymLinks
DirectoryIndex index.html index.htm
</Directory>
<Directory /home/vh-01.com/htdocs/basic>
AuthType Basic
AuthName Common
AuthUserFile /home/vh-01.com/.htpasswd
Require valid-user
</Directory>
<Directory /home/vh-01.com/htdocs/acl>
Order Deny,Allow
Deny from ALL
Allow from 192.169.11.0/24
</Directory>
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
</VirtualHost>
</IfDefine>
==============================
���lighttpd 1.4.23
$HTTP["host"] =~ "(www\.|)vh-01\.(com|net)" {
url.access-deny = ( "~", ".htpasswd", ".htaccess" )
server.document-root = "/home/vh-01.con/htdocs"
alias.url = ("/cgi-bin/" => "/home/vh-01.con/cgi-bin/")
accesslog.filename = "/home/vh-01.con/logs/access_log"
server.follow-symlink = "enable"
index-file.names = ( "index.html", "index.php" )
auth.backend = "htpasswd"
auth.backend.htpasswd.userfile = "/home/vh-01.con/.htpasswd"
auth.require = ( "/basic/" =>
( "method" => "basic",
"realm" => "Common",
"require" => "valid-user"
)
)
$HTTP["remoteip"] != "192.168.11.0/24" {
$HTTP["url"] =~ "^/acl" {
url.access-deny = ( "" )
}
}
}
$SERVER["socket"] == "*:443" {
url.access-deny = ( "~", ".htpasswd", ".htaccess" )
server.name = "vh-01.con"
ssl.engine = "enable"
ssl.pemfile = "/usr/local/lighttpd/conf/ssl/vh-01.com.pem"
server.document-root = "/home/vh-01.con/htdocs"
alias.url = ("/cgi-bin/" => "/home/vh-01.con/cgi-bin/")
accesslog.filename = "/home/vh-01.con/logs/ssl_access_log"
server.follow-symlink = "enable"
index-file.names = ( "index.html", "index.php" )
auth.backend = "htpasswd"
auth.backend.htpasswd.userfile = "/home/vh-01.con/.htpasswd"
auth.require = ( "/basic/" =>
( "method" => "basic",
"realm" => "Common",
"require" => "valid-user"
)
)
$HTTP["remoteip"] != "192.168.11.0/24" {
$HTTP["url"] =~ "^/acl" {
url.access-deny = ( "" )
}
}
}
2009������10·���12������
lighttpd(vh ssl �����¾���)
�����¼��HP
����lighttpd
http://www.lighttpd.net/
����fastcgi
http://www.fastcgi.com/drupal/
����openssl
http://www.openssl.org/
���vh�����Ώ�����
����$HTTP["host"] =~���������¹���������³���������������µµ�̏��½���½����»�����𡯏�����(������¾���������$HTTP["host"] ==)
����apache�����������������Ï���ServerAlias��¡ߏ������������������������������µµ�̏��½���½�����������������Џ���
����error\���\�돢����1���������·���«�����Ώ��������������������������(�돫������ӏ�돪�������������µ½��ҏ��µ������������������������error\���\�돢�������Ώ���돢돫�)
����lighttpd.conf���������������������µµ�̏��½���½����»�����𡯏����������������ď�����*.conf�����㏪���¼�ޏ��·������������������������������
��������Ώ���������
$HTTP["host"] =~ "(www\.|)vh-01\.(com|net)" {
server.document-root = "/home/vh-01.com/htdocs"
accesslog.filename = "/home/vh-01.com/logs/access_log"
index-file.names = ( "index.php", "index.html" )
}
$HTTP["host"] == "vh-02.com" {
server.document-root = "/home/vh-02.com/htdocs"
accesslog.filename = "/home/vh-02.com/logs/access_log"
index-file.names = ( "index.html", "index.php" )
}
���SSL
����pem=crt+key
����\���\¹�����������·������key������pem���������¹������»��ӏ�������돩�µ��������»��Џ�����������\���\¹\���\������¼\��돢���ҏ��¹���«������������������������������
��������Ώ���������
$SERVER["socket"] == "192.168.11.50:443" {
ssl.engine = "enable"
ssl.pemfile = "/usr/local/lighttpd/conf/ssl/vh-01.com.pem"
server.name = "vh-01.com"
server.document-root= "/home/vh-01.net/htdocs"
accesslog.filename = "/home/vh-01.net/logs/ssl_access_log"
}
����¾���
����lighttpd.conf������ server.modules ������ mod_auth������\³\���\���\���\���\���
���basic�����¾��⏪��
auth.backend = "htpasswd"
auth.backend.htpasswd.userfile = "/home/vh-01.com/.htpasswd"
auth.require = ( "/admin/basic/" =>
(
"method" => "basic",
"realm" => "Common",
"require" => "valid-user"
)
)
���digest�����¾��⏪��
auth.backend = "htdigest"
auth.backend.htdigest.userfile = "/home/vh-01.com/.htdigest"
auth.require = ( "/admin/digest/" =>
(
"method" => "digest",
"realm" => "secret",
"require" => "valid-user"
)
)
2009������06·���10������
subsonic������mp3\¹\���\������¼\���\���\��
������������������������²��ď����㏢�«Try���·�����ď��ޏ�����(windows\µ���¼\Ð�돪�³�돢����������)������»���²½���ޏ��������������«�����������������������������ď�¡�
��ď��¾������������������⏢�«���������¹������������subsonic������»����·�����������Ώ����ď�¡�
��OS������FreeBSD7.0
���³���������¼��HP
http://www.freebsdfoundation.org/downloads/java.shtml
http://java.sun.com/javase/downloads/index.jsp
http://subsonic.sourceforge.net/
���ports¹¹���·
# portsnap fetch extract update
���java\���\���\¹\������¼\���
diablo-caffe-freebsd7-i386-1.6.0_07-b02.tar.bz2 ������DL������
/usr/ports/distfiles/ �������돪䏩���
tzupdater-1_3_15-2009g.zip ������DL������
/usr/ports/distfiles/ �������돪䏩���
���Ð�����ď��̏���̏����
# cd /usr/ports/java/jdk16/ ; pwd
# make install clean
���subsonic\���\���\¹\������¼\���
# cd /usr/local/src/ ; pwd
# wget http://jaist.dl.sourceforge.net/sourceforge/subsonic/subsonic-3.7.beta1-standalone.tar.gz
# mkdir /usr/local/src/subsonic
# tar xvzf subsonic-3.7.beta1-standalone.tar.gz -C subsonic
# mv -i ./subsonic /usr/local/.
# cd /usr/local/subsonic ; pwd
# vi subsonic.sh
������¹¹�����ԏ����
SUBSONIC_HOME=/usr/local/subsonic
SUBSONIC_PORT=���������·������������
# ./subsonic.sh
http://your.domain:\����¼\���������¹���
���mp3upload
mp3\���\�돢����utf-16���������¹������»��ӏ�����������»���²½���ޏ�����²��я�����
������������������\���\��\���\���\���\������������䏪���䏢����������»���²½���ޏ���������
2009������03·���17������
apache������yum���«������\���\���\¹\������¼\������·�����ď�����web\��⏢�¼\������̏�����»���²½���ޏ��·�����ď�����
�����������������я��폢�폢��
# cat /etc/issue
CentOS release 4.7 (Final)
Kernel \r on an \m
# yum list installed httpd
Failed to set locale, defaulting to C
Installed Packages
httpd.i386 2.0.52-41.ent.2.centos installed
#
���������돩�(httpd.conf)
AddDefaultCharset UTF-8
������Ð��돫�(httpd.conf)
AddDefaultCharset off
������������������\½���¼\¹���«������\���\���\¹\������¼\������·�����������������я�����µ������������«���������«�����������ď�����orz
2009������03·���04������
vh�����������������ѡ돫������폢���� mod-cband
apache2�����������Џ�����·���¹½��돪㏢�«�����������Ώ��������̏����������������¡�
������������������������¼��HP���̏�������돢ď��·������\½���¼\¹�����ҏ��«���������ޏ�����������������»��ӡ��
���\���\���\¹\������¼\���
# ./configure --with-apxs=/usr/local/apache2/bin/apxs
# make
# make install
����돫������������쏢���������Ώ�����
����CBandSpeed 2042 100 20
\Ð���¼\���\���\���\���\¹\���������������������Ώ�����
����CBandRemoteSpeed 1024 50 10
�����䏪�³\���\���\���\��\���\������������������Ώ�����
��¾���µ2�����Ώ����������������� CBandExceededURL ��������������⏢����������������������������
ErrorDocument 503 ���������Ð�ޏ�Џ��¹������»���
��돪����������������
1����������ӏ�����돪�������\���\���\��\¹\�����ď��
1����������ӏ��������»��Џ����䏪�³��ď��
���¾����ޡ돪�
���������
kbps, Mbps, Gbps - "\���\���\���"������������
kb/s, Mb/s, Gb/s - "\Ð\���\���"������������
»������������·������������¾���¹�����¡�kbps
���¾���������
K, M, G - 1000/1000*1000/1000*1000*1000 \Ð\���\���
Ki, Mi, Gi - 1024/1024*1024/1024*1024*1024 \Ð\���\���
»������������·������������¾���¹�����¡�K
����䡭���
S, M, H, D, W - ������/�����/»��С����/������/½µ
»������������·������������¾���¹�����¡�S
������¾��������������Ώ�����
����CBandLimit 100M
���¾���������¾���������
����CBandPeriod 4W
¾���µ���¾���������������·��»»���¹����������䡭���
��¾���µ2������������1\���·���(4½µ�����)�������¾���������¾���������������100M�����������Ώ�����
������¾��������������ҏ������𡯏�����¾���¹������������Ώ�����
����CBandExceededSpeed 128 10 5
����CBandExceededURL http://hoge.hoge/hoge.html
503\��⏢�¼\���������������������������������������������URL�����������ԏ��Ð���¹
ErrorDocument 503 ������������²������½���«����������
����³���������·�����������Ώ�����
���¾\µ���¼\Ð������������ab�����������������䏪�³
# ab -n 2000 -c 5 -A id:pass http://hoge.hoge/index.html
apache\���\�돢����³������(�������ď��)����OK
[04/Mar/2009:00:55:30 +0900] "GET /index.html HTTP/1.1" 200 802 "-" "ApacheBench/1.3d"
[04/Mar/2009:00:55:30 +0900] "GET /index.html HTTP/1.1" 503 323 "-" "ApacheBench/1.3d"
[04/Mar/2009:00:55:30 +0900] "GET /index.html HTTP/1.1" 503 323 "-" "ApacheBench/1.3d"
[04/Mar/2009:00:55:30 +0900] "GET /index.html HTTP/1.1" 200 802 "-" "ApacheBench/1.3d"
[04/Mar/2009:00:55:30 +0900] "GET /index.html HTTP/1.1" 503 323 "-" "ApacheBench/1.3d"
[04/Mar/2009:00:55:30 +0900] "GET /index.html HTTP/1.1" 503 323 "-" "ApacheBench/1.3d"
[04/Mar/2009:00:55:30 +0900] "GET /index.html HTTP/1.1" 503 323 "-" "ApacheBench/1.3d"
[04/Mar/2009:00:55:30 +0900] "GET /index.html HTTP/1.1" 503 323 "-" "ApacheBench/1.3d"
[04/Mar/2009:00:55:30 +0900] "GET /index.html HTTP/1.1" 200 802 "-" "ApacheBench/1.3d"
[04/Mar/2009:00:55:30 +0900] "GET /index.html HTTP/1.1" 200 802 "-" "ApacheBench/1.3d"
���web������������¾��آ�·³������
²¼µµ½��ҏ����ҏ����ġޏ�����µ���»������»��ӏ�����web¾������«������¾��آ�·³���������̏��������������
[Location /cband-status]
SetHandler cband-status
[/Location]
http://hoge.hoge/cband-status
2009������02·���23������
apache php \Ð���¼\���\���\��я�����³«¼��
1¹��ԏ��«���������������������\»\\���\���\���\��
��proftpd
http://blog.livedoor.jp/tuzzy92/archives/51724690.html
���apache 1.3.12�돪�¹���
httpd.conf �������������ҏ�����µ
ServerSignature Off
ServerTokens Prod
���PHP
php.ini ������µ½��ҏ�����¹¹
expose_php = On ������ Off������
����Ï�����apache������돩�µ��������(graceful������������)���̏���̏����
��������Ώ����������
HTTP/1.1 200 OK
Server: Apache/2.2.11 (Unix) mod_ssl/2.2.11 OpenSSL/0.9.8i DAV/2 PHP/4.4.9
X-Powered-By: PHP/4.4.9
��������Ώ�����������
HTTP/1.1 200 OK
Server: Apache
���»²¹���
��apache.org�������������돫⏪����
ServerTokens Prod[uctOnly]
\µ���¼\Ð������ (������𡯏��Ð): Server: Apache �����������������������ď����������Ï�������������������������¹��¡�
ServerTokens Major
Server sends (e.g.): Server: Apache/2
ServerTokens Minor
Server sends (e.g.): Server: Apache/2.0
ServerTokens Min[imal]
\µ���¼\Ð������ (������𡯏��Ð): Server: Apache/2.0.41 �����������������������ď����������Ï�������������������������¹��¡�
ServerTokens OS
\µ���¼\Ð������ (������𡯏��Ð): Server: Apache/2.0.41 (Unix) �����������������������ď����������Ï�������������������������¹��¡�
ServerTokens Full (���������·������������������»���������)
\µ���¼\Ð������ (������𡯏��Ð): Server: Apache/2.0.41 (Unix) PHP/4.2.2 MyMod/1.2 �����������������������ď����������Ï�������������������������¹��¡�
2008������12·���22������
apache+mod_layout
²��ď�����»��������Ï��«������������»��������Ï��«��������������������¼�����������
����mod_layout
http://tangent.org/362/mod_layout.html
# wget http://download.tangent.org/mod_layout-3.4.tar.gz
# tar xvzf mod_layout-3.4.tar.gz
# cd mod_layout-3.4 ; pwd
��Makefile�����¡������ԏ���̏����ҡ������������¹������������»������������¹¹
APXS
APACHECTL
# make
# make install
strip mod_layout.so
/usr/local/apache/bin/apxs -i -a -n 'layout' mod_layout.so
[activating module `layout' in /usr/local/apache/conf/httpd.conf]
cp mod_layout.so /usr/local/apache/libexec/mod_layout.so
chmod 755 /usr/local/apache/libexec/mod_layout.so
cp /usr/local/apache/conf/httpd.conf /usr/local/apache/conf/httpd.conf.bak
cp /usr/local/apache/conf/httpd.conf.new /usr/local/apache/conf/httpd.conf
rm /usr/local/apache/conf/httpd.conf.new
#
# diff -u0 /usr/local/apache/conf/httpd.conf.bak /usr/local/apache/conf/httpd.conf
--- /usr/local/apache/conf/httpd.conf.bak 2008-12-22 00:33:20.000000000 +0900
+++ /usr/local/apache/conf/httpd.conf 2008-12-22 00:33:20.000000000 +0900
@@ -246,0 +247 @@
+LoadModule layout_module libexec/mod_layout.so
@@ -295,0 +297 @@
+AddModule mod_layout.c
#
==============================
������������������������������������������������·���������ޏ��������������ޏ����������Ώ�����
����LayoutMerge On (body\���\�돢�����¾������/body\���\�돢�����¾����돢�������½¼�����¹������)
��apache2������������OutputFilter
��Off(\���\���\���\���\���)������������html\���\�돢������돢�������������½¼�����µ������������
����LayoutHeader
1)\���\���\���\¹������µ½���
���²¼�돪�\���\��\���\���\���\��������������������ġޏ��
2) /header.html������µ½���
���²¼�돪�\���\��\���\���\���\��������������������ġޏ��
3)header.html������µ½���
��쏩��ޡ돫�\���\��\���\���\���\������������������Ώ����������ġޏ��
���³���\���\��\���\���\���\���������header.html���̏����ġޏ��
4)./header.html������µ½���
���³���\���\��\���\���\���\���������header.html���̏����ġޏ��
����LayoutIgnoreURI(����̏����Џ��·������������\���\��\���\���\���\��������ҏ����Ώ��������������������)
¼«����̏����쏪���Ώ������������������³�����я���������������
LayoutMerge On
LayoutHeader /header.html
LayoutFooter /footer.html
LayoutIgnoreURI /test/*
������³«���·������\���\��\���\���\���\���������������faq.html���̏��������������������«�����������Ώ����������Ï�������������¡�
2008������02·���04������
�����������������я��폢�폢��
���������������̏������������ď�������
\»\\���\���\���\��¾������������������������㏢����½������µ���·������ Apache HTTP Server 2.2.8 ����\���\������¼\¹���µ���������������·�����ď�¡����������쏢¡�2.2.7 ������\���\������¼\¹���µ���������������»�����я��������·�����ď�¡�
\»\\���\���\���\��¾������������������������㏢����½������µ���·������ Apache HTTP Server 2.0.63 ����\���\������¼\¹���µ���������������·�����ď�¡����������쏢¡�2.0.62 ������\���\������¼\¹���µ���������������»�����я��������·�����ď�¡�
\»\\���\���\���\��¾������������������������㏢����½������µ���·������ Apache HTTP Server 1.3.41 ����\���\������¼\¹���µ���������������·�����ď�¡����������쏢¡�1.3.40 ������\���\������¼\¹���µ���������������»�����я��������·�����ď�¡�
2007������10·���03������
httpd.conf cgi²��я���������������돪����
���¡�
cgi�돪�³�돢����html/²��������䏪���㏢���ҏ����ӏ�����������������cgi�����������Ώ��������µ������Internal Server Error������������������
���¡�
html������html/²��������䏢����²��������䏢���������¼�ޏ��µ���»���������Ð������������
ex)
[Directory "/usr/local/apache/cgi-bin"]
AllowOverride None
Options None
Order allow,deny
Allow from all
AddHandler image/gif .gif :������²���
[/Directory]
���¾������³������\»��ҏ����� mime.types �����ҏ��«���������ÐOK
AddHandler text/html .html .htm
AddHandler image/jpeg .jpeg .jpg .jpe
����ScriptAlias������������������������»������������µ������������������������������\���\��\���\���\���\���������cgi������¼���¹��ԏ��¹������������������
���¡�
1:cgi¼���¹��ԏ�����µ���²��������ҏ����ď��
2:.cgi������cgi������������������¼�����¹���������Ð������������
ex)
[Directory /home/web/example.jp/html]
AllowOverride None
Options ExecCGI
AddHandler cgi-script .cgi
DirectoryIndex index.html index.htm
Order allow,deny
Allow from all
[/Directory]
2007������09·���14������
apache\��\���\��\������¼\���
apache 1.3.39
Apache 2.2.6
���³��������ҏ�����������
2007������05·���18������
mod_mp3 ������������������\¹\���\������¼\���\���\��\µ���¼\й½������
¼���·��⏢��������\¹\���\������¼\���\���\��\µ���¼\Ð������¹½�����叢����������������������·����������������»����·�����������Ώ����ď�¡�
���\½���¼\¹\���\���\���\������¼\������«������\���\���\¹\������¼\���������������
# fetch http://www.tangent.org/download/mod_mp3-0.40.tar.gz
# tar xvfz mod_mp3-0.40.tar.gz
# cd mod_mp3-0.40 ; pwd
# ./configure \
--with-apxs=/usr/local/apache/bin/apxs \
--with-perl=/usr/bin/perl \
--with-debug \
--without-content_disposition
# make
# make install
+--------------------------------------------------------+
| All done. |
| If you want to use the default mod_mp3 configure file |
| go add: |
| |
| Include /usr/local/apache/conf/mp3.conf |
| |
| to your httpd.conf for apache. |
| If not, cat its content into your httpd.conf file. |
| |
| Thanks for installing mod_mp3. |
+--------------------------------------------------------+
��� ½��Џ����¹��𡯏�����������������httpd.conf
#diff httpd.conf.bk httpd.conf
228a229
> LoadModule mp3_module libexec/mod_mp3.so
258a260
> AddModule mod_mp3.c
��������Ώ�����
MP3Engine On
MP3CastName "Brian's Tunes"
MP3Genre "Much, nutty"
MP3 (mp3\���\���\���\��������ҏ����ӏ�����\���\��\���\���\���\���)
MP3DefaultOperation select
Timeout 1200
�������������
�����㏪�����������³������\¹\���\������¼\���\���\�돢���������������������������������������я�������
url������\��\���\»\¹���¹������������\��\���\�ߏ��·������mp3\���\���\���\���������\���\¹\������̏����������������������������¡�
\���\��\���\���\���\���\��я����������쏪���ҡ��\���\���\���\������¼\��������������������á���������
�����䏪���䏢����\���\���\���\�������������»���²½���ޏ�����unix������½��������ď��«����
���������¹������\��\���\���\���\¹\������¼\��� ¼������� SHOUTcast ������»����·�����������Ώ����������Ï�����������
2007������01·���19������
apache2.2.4 + SSL
\���\���\������¼\��������㏢�������Ԣ����¹���½������µ������µ����½������¾���
���\��\���\���\���\¹
http://www.apache.org/dist/httpd/Announcement2.2.html
���\���\���\���\������¼\��� ���� ������³«
# wget http://www.openssl.org/source/openssl-0.9.8d.tar.gz
# wget http://ftp.kddilabs.jp/infosystems/apache/httpd/httpd-2.2.4.tar.gz
# tar xvfz openssl-0.9.8d.tar.gz
# tar xvzf httpd-2.2.4.tar.gz
���\���\���\¹\������¼\���
# cd openssl-0.9.8d ; pwd
# ./config -fPIC shared --prefix=/usr/local/ssl
# make
# make install
# cd ../httpd-2.2.4 ; pwd
# ./configure \
--prefix=/usr/local/apache2 \
--with-included-apr \
--enable-so \
--with-ssl \
--enable-ssl
# make
# make install
--with-included-apr ����\���\���\���\���
# vi /usr/local/apache2/conf/httpd.conf
��������\³\���\���\���\���\���
Include conf/extra/httpd-ssl.conf
�����Ώ����� crt key ���������������·������������
#/usr/local/apache2/bin/apachectl start
# ps ax | grep httpd
94705 ?? Ss 0:01.25 /usr/local/apache2/bin/httpd -k start
94707 ?? I 0:00.00 /usr/local/apache2/bin/httpd -k start
94708 ?? I 0:00.00 /usr/local/apache2/bin/httpd -k start
94709 ?? I 0:00.00 /usr/local/apache2/bin/httpd -k start
94710 ?? I 0:00.00 /usr/local/apache2/bin/httpd -k start
94711 ?? I 0:00.00 /usr/local/apache2/bin/httpd -k start
#netstat -na | egrep "80|443"
tcp4 0 0 *.443 *.* LISTEN
tcp4 0 0 *.80 *.*
��������ď�������쏢����½���������
/usr/libexec/ld-elf.so.1: Shared object "libssl.so.0.9.8" not found, required by "httpd"
[warn] (2)No such file or directory: Failed to enable the 'httpready' Accept Filter
���kldload accf_http.ko ������������²���·���
2006������07·���30������
apache1.3.37 mod_ssl-2.8.28
mod_rewrite ��������������������½������µ���µ�����������ď��������·��������¡�
�����������я��������������������̏������������ď������«�������������������������ޏ�������������¡�
===== http://httpd.apache.org/download.cgi �������������돫⏪���� =====
Apache 1.3.37 is the current stable version of the 1.3 series, and is recommended over any previous 1.3 release. This release fixes an 'important' vulnerability in mod_rewrite.
�����������\Ð���¼\���\���\���
# /usr/local/apache/bin/httpd -v
Server version: Apache/1.3.33 (Unix)
���\���\���\���\������¼\��� \���\���\¹\������¼\���
# fetch http://www.apache.jp/dist/httpd/apache_1.3.37.tar.gz
apache_1.3.37.tar.gz 100% of 2602 kB 435 kBps
# tar xvfz openssl-0.9.8b.tar.gz
# tar xvfz mod_ssl-2.8.28-1.3.37.tar.gz
# cd openssl-0.9.8b ; pwd
# ./config
# make
# cd ../mod_ssl-2.8.28-1.3.37 ; pwd
# ./configure \
--with-apache=../apache_1.3.37 \
--with-ssl=../openssl-0.9.8b \
--prefix=/usr/local/apache \
--enable-shared=max \
--enable-rule=SHARED_CORE \
--enable-module=so \
--enable-module=rewrite \
--enable-shared=rewrite
# cd ../apache_1.3.37
# make
# make certificate
# make install
���³������
# /usr/local/apache/bin/httpd -v
Server version: Apache/1.3.37 (Unix)
2006������05·���11������
apache 1.3.35 + openssl 0.9.8.b + modssl 2.8.26
# wget http://www.openssl.org/source/openssl-0.9.8b.tar.gz
# wget http://www.modssl.org/source/mod_ssl-2.8.26-1.3.35.tar.gz
# tar xvfz apache_1.3.35.tar.gz
# tar xvfz openssl-0.9.8b.tar.gz
# tar xvfz mod_ssl-2.8.26-1.3.35.tar.gz
# cd mod_ssl-2.8.26-1.3.35 ; pwd
# ./configure \
--with-apache=../apache_1.3.35 \
--with-ssl=../openssl-0.9.8b \
--prefix=/usr/local/apache \
--enable-shared=max \
--enable-module=so
������½���·������\��\������¼
Error: Cannot find SSL binaries under /usr/local/src/openssl-0.9.8b
./configure:Error: APACI failed
������½���·���������Ð�ޏ��
# cd ./etc/
# tar xvf patch.tar
# cd patch
# ./configure && make
# cd ../.. ; pwd
���µ���������¼������������¾���·�����������������á돫�������
# ./configure \
--with-apache=../apache_1.3.35 \
--with-ssl=../openssl-0.9.8b \
--prefix=/usr/local/apache \
--enable-shared=max \
--enable-module=so
==================================================
Now proceed with the following commands:
$ cd ../apache_1.3.35
$ make
$ make certificate
$ make install
==================================================
# cd ../apache_1.3.35 ; pwd
# make
# make certificate TYPE=dummy
# make install
2006������03·���06������
php4.4.2\���\���\¹\������¼\���
# tar xvfz php-4.4.2.tar.gz
# cd php-4.4.2
# ./configure \
--with-apxs=/usr/local/apache/bin/apxs \
--with-mysql=/usr/local/mysql \
--enable-mbstring \
--enable-mbstr-enc-trans \
--with-zlib-dir=/usr/local/lib \
--with-gd
.
.
.
Thank you for using PHP.
# make && make install
# cp -ip php.ini-dist /usr/local/lib/php.ini
# php -v
PHP 4.4.2 (cli) (built: ******)
Copyright (c) 1997-2006 The PHP Group
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies
2006������02·���06������
location������locationmatch
http://httpd.apache.org/ �����ҏ��«�����������Ώ�����������
location:�돪������я�����\���\��\���\���\���\��\��ӏ�����\���\���\������¹������ URL ���������Ώ���������̏�����
locationmatch:�돪������я�����\���\��\���\���\���\��\��ӏ����ҏ��µµ�̏��½���½������\���\���\������¹������ URL ���������Ώ���������̏�����
�������������폪���؏���̏��«�����я���������������
»����·�����������Ώ���������̏��«�����������ď��³������������������������������»������«
����)http://hoge.com/himitu/ ������\���\���\��ď��¼\���\������«���������������Ώ�����\��\���\»\¹�����폢���������ҏ��«���ޏ����ď�����¾���¹���
location=locationmatch(�����쏢�½������������
���³�����я�������������������
[location[match] /himitu]
order deny,allow
Allow from 192.168.11.
Deny from ALl
[/location[match]]
����2)hoge.com/himitu[1-10]���«������������\��\���\»\¹�����폢����������¾���¹���
location������������10������µ½��ҏ��·���������������������������ޏ��������������ޏ�����locationmatch������������1���������������¹����������
[locationmatch /himitu*]
/himitu
order deny,allow
Allow from 192.168.11.
Deny from ALl
[/locationmatch]
¾��䏢�·��������������������¹��Џ����Ώ�����������
2006������01·���27������
apache2 + ssl
# fetch http://www.apache.jp/dist/httpd/httpd-2.2.0.tar.gz
# fetch http://www.openssl.org/source/openssl-0.9.8a.tar.gz
# tar xvfz openssl-0.9.8a.tar.gz
# cd openssl-0.9.8a
# ./config -fPIC shared
# make
# make install
# vi /etc/ld.so.conf
/usr/local/ssl/lib �����ҏ�����²���
# ldconfig
# cd ../
# tar xvfz httpd-2.2.0.tar.gz
# cd httpd-2.2.0
# ./configure --prefix=/usr/local/apache2 \
--enable-modules="so ssl" \
--with-ssl=/usr/local/ssl
httpd.conf ������������extra/httpd-ssl.conf ������\���\���\���\������¼\���
# ./bin/apachectl start ��startssl�����������������������������я�������������¡���¡�
2005������10·���04������
limitipconn������������¹��Џ�����
�����������²������\µ\���\����ޏ�ġޏ�������������������������̏��«���������
���\���\���\���\������¼\��� ������³« �돪䏩���
[root@ tuzzy] (-_-)y-~~#cd /usr/local/src/ ; pwd
/usr/local/src
[root@ src] (-_-)y-~~#
[root@ src] (-_-)y-~~#fetch http://dominia.org/djao/limit/mod_limitipconn-0.04.t
ar.gz
mod_limitipconn-0.04.tar.gz 100% of 6267 B 42 kBps
[root@ src] (-_-)y-~~#tar xvfz mod_limitipconn-0.04.tar.gz
mod_limitipconn-0.04/
mod_limitipconn-0.04/Makefile
mod_limitipconn-0.04/README
mod_limitipconn-0.04/apachesrc.diff
mod_limitipconn-0.04/mod_limitipconn.c
mod_limitipconn-0.04/ChangeLog
[root@ src] (-_-)y-~~#cd mod_limitipconn-0.04 ; pwd
/usr/local/src/mod_limitipconn-0.04
���Makefile������½������������쏢�������������·������\���\¹���������»��������������
[root@ mod_limitipconn-0.04] (-_-)y-~~#vi Makefile
APXS = /usr/local/apache/bin/apxs
.SUFFIXES: .c .o .so
MODULES = mod_limitipconn.so
all: $(MODULES)
Makefile: 18 lines, 249 characters.
��������쏪���я��«
[root@ mod_limitipconn-0.04] (-_-)y-~~#make
/usr/local/apache/bin/apxs -c mod_limitipconn.c
gcc -funsigned-char -DMOD_SSL=208124 -DEAPI -DUSE_EXPAT -I../lib/expat-lite -fpi
c -DSHARED_CORE -DSHARED_MODULE -I/usr/local/apache/include -c mod_limitipconn.
c
gcc -shared -o mod_limitipconn.so mod_limitipconn.o
[root@ mod_limitipconn-0.04] (-_-)y-~~#make install
[activating module `limitipconn' in /usr/local/apache/conf/httpd.conf]
cp mod_limitipconn.so /usr/local/apache/libexec/mod_limitipconn.so
chmod 755 /usr/local/apache/libexec/mod_limitipconn.so
cp /usr/local/apache/conf/httpd.conf /usr/local/apache/conf/httpd.conf.bak
cp /usr/local/apache/conf/httpd.conf.new /usr/local/apache/conf/httpd.conf
rm /usr/local/apache/conf/httpd.conf.new
[root@ mod_limitipconn-0.04] (-_-)y-~~#
���»²¹���
[root@ mod_limitipconn-0.04] (-_-)y-~~#diff /usr/local/apache/conf/httpd.conf /b
ackup/httpd.conf.20051003
228d227
< LoadModule limitipconn_module libexec/mod_limitipconn.so
258d256
< AddModule mod_limitipconn.c
[root@ mod_limitipconn-0.04] (-_-)y-~~#
��������Ώ���������������������������������(»��С���ӏ��̏��������������������돪�����·���������¹����
[IfModule mod_limitipconn.c]
ExtendedStatus On
[/IfModule]
[Directory /home/hoge/down]
MaxConnPerIP 1
OnlyIPLimit audio/mpeg
[/Directory]
[Files ~ "\.(mp3)$"]
MaxConnPerIP 1
[/Files]
[Limit GET]
[IfModule mod_limitipconn.c]
MaxConnPerIP 1
OnlyIPLimit audio/mpg
[/IfModule]
[/Limit>]
2005������09·���30������
apache1.33 + mod_ssl-2.8.24-1.3.33 + mod_rewrite
mod_rewrite���������Ώ����������������������Ï�����»�ߏ����������ď��ޏ�������¡����Ï��������������������«�����������������я�������¡�
apache¼«���������ҏ�돩�\���\���\¹\������¼\�����¡�����������������������mod_ssl������\Ð���¼\���\���\���\��\���\�ߏ�¡돢¡�
���\½���¼\¹\���\���\���\������¼\���������������³«
[root@ src] (-_-)y-~~#pwd
/usr/local/src
[root@ src] (-_-)y-~~#fetch http://www.openssl.org/source/openssl-0.9.8.tar.gz
openssl-0.9.8.tar.gz 100% of 3183 kB 77 kBps 00m00s
[root@ src] (-_-)y-~~#
[root@ src] (-_-)y-~~#fetch http://www.modssl.org/source/mod_ssl-2.8.24-1.3.33.tar.gz
mod_ssl-2.8.24-1.3.33.tar.gz 100% of 801 kB 29 kBps 00m00s
[root@ src] (-_-)y-~~#tar xvfz mod_ssl-2.8.24-1.3.33.tar.gz
���configure ��� make ��� makeinstall
[root@ src] (-_-)y-~~#cd ./mod_ssl-2.8.24-1.3.33 ; pwd
/usr/local/src/mod_ssl-2.8.24-1.3.33
[root@ mod_ssl-2.8.24-1.3.33] (-_-)y-~~#./configure \
> --with-apache=../apache_1.3.33 \
> --with-ssl=../openssl-0.9.8 \
> --prefix=/usr/local/apache \
> --enable-shared=max \
> --enable-module=so \
> --enable-rule=SHARED_CORE \
> --enable-module=rewrite \
> --enable-shared=rewrite
[root@ mod_ssl-2.8.24-1.3.33] (-_-)y-~~#cd ../apache_1.3.33 ; pwd
/usr/local/src/apache_1.3.33
[root@ apache_1.3.33] (-_-)y-~~#make certificate TYPE=dummy
[root@ apache_1.3.33] (-_-)y-~~#make install
[R] "302 Moved Temporaily"������\���\¹\���\���\¹�����ҏ����ӏ��·\���\���\���\��\���\���������\���\���\���\���\���\������¹������
[L] ¾���·���������\���\���\������·������¾���¹������½���³���������½������������½��쏪�»���¹������(�돪�²¼���������³������RewriteRule�����ҏ��¾²������·������������)
[NS] �돫�¼������쏢����URL\���\���\��\¹\���������¾���¹�������������¾���·��������ҏ��¾²���(\µ���¼\Ð���¼�����������ԏ��������������»������������������\µ\���\���\���\��\¹\���������¾���¹������������½������������\¹\\���\�ߏ��¹������)
[N] ½��Џ����¹��𡯏��̏�돪Џ����я�����URL�����ҏ��·�����ď�����\���\���\��\¹\������������·������½��Џ����¹���½������������ҏ�돩������㏢돪�½���������\������¼\������«������·«�����������ӏ��¹
[C] ¼�������RewriteRule������¾���·���������·���¹������¹������(�����ӡ�¹�����»��Ώ�����»��⏪��"-"�����ҏ����Џ����������������ď�ԏ�����¾���·���������AND�����������¹�������̏����Џ��¹������¾���¹��������������Џ�����������)
[F] \���\���\������·������URL������������\��\���\»\¹�����Ң����»��Ώ��¹������(\���\���\���\��\���\���������������"403 Forbidden"������\���\¹\���\���\¹���̏����ӏ��µ������������)
[P] PROXY\���\���\������¼\���������»��������Џ��·���������¾������\µ���¼\Ð���¼(URL)��������������\³\���\���\���\���������¼������������·���½����������������������\���\���\���\���\��������������ӏ��¹
���http://hogehoge.jp/hoge.html ������ http://hogehoge.jp/hoge/index.html���������¾�����
RewriteRule ^/hoge.html http://hogehoge.jp/hoge/index.html [R=301,L]
���http://hogehoge.jp ������ https://hogehoge.jp���������¾�����
RewriteRule ^/(.*)$ https://hogehoge.jp/$1 [R,L]
��$1���������¹���������³��������������¡�RootDirectory�돪�²¼����������������̏����Џ��µ������������
��������������
LoadModule php4_module libexec/libphp4.so
AddModule mod_php4.c
AddType application/x-httpd-php .php
2005������07·���19������
.csr .crt �����Ώ�����������³������
Country = JP
State = Tokyo
Locality = Shinjuku-ku
OrganizationName = hoge
Common Name = www.hoge.jp
[root@localhost works]#ls -l
total 6
-rw-r--r-- 1 root wheel 1074 Jul 19 22:32 www.hoge.jp.crt
-rw-r--r-- 1 root wheel 631 Jul 19 22:31 www.hoge.jp.csr
-rw-r--r-- 1 root wheel 963 Jul 19 22:30 www.hoge.jp.key
���.csr ������³������
[root@localhost works]#openssl req -text -in www.hoge.jp.csr
Certificate Request:
Data:
Version: 0 (0x0)
Subject: C=JP, ST=Tokyo, L=Shinjuku-ku, O=hoge, CN=www.hoge.jp
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public Key: (1024 bit)
Modulus (1024 bit):
�돪�²¼��¢�
���.crt ������³������
[root@localhost works]#openssl asn1parse -in www.hoge.jp.crt
0:d=0 hl=4 l= 747 cons: SEQUENCE
4:d=1 hl=4 l= 596 cons: SEQUENCE
8:d=2 hl=2 l= 3 cons: cont [ 0 ]
10:d=3 hl=2 l= 1 prim: INTEGER :02
13:d=2 hl=2 l= 9 prim: INTEGER :D5D0BDF4B08771A4
24:d=2 hl=2 l= 13 cons: SEQUENCE
26:d=3 hl=2 l= 9 prim: OBJECT :sha1WithRSAEncryption
37:d=3 hl=2 l= 0 prim: NULL
39:d=2 hl=2 l= 88 cons: SEQUENCE
41:d=3 hl=2 l= 11 cons: SET
43:d=4 hl=2 l= 9 cons: SEQUENCE
45:d=5 hl=2 l= 3 prim: OBJECT :countryName
50:d=5 hl=2 l= 2 prim: PRINTABLESTRING :JP
54:d=3 hl=2 l= 14 cons: SET
56:d=4 hl=2 l= 12 cons: SEQUENCE
58:d=5 hl=2 l= 3 prim: OBJECT :stateOrProvinceName
63:d=5 hl=2 l= 5 prim: PRINTABLESTRING :Tokyo
70:d=3 hl=2 l= 20 cons: SET
72:d=4 hl=2 l= 18 cons: SEQUENCE
74:d=5 hl=2 l= 3 prim: OBJECT :localityName
79:d=5 hl=2 l= 11 prim: PRINTABLESTRING :Shinjuku-ku
92:d=3 hl=2 l= 13 cons: SET
94:d=4 hl=2 l= 11 cons: SEQUENCE
96:d=5 hl=2 l= 3 prim: OBJECT :organizationName
101:d=5 hl=2 l= 4 prim: PRINTABLESTRING :hoge
107:d=3 hl=2 l= 20 cons: SET
109:d=4 hl=2 l= 18 cons: SEQUENCE
111:d=5 hl=2 l= 3 prim: OBJECT :commonName
116:d=5 hl=2 l= 11 prim: PRINTABLESTRING :www.hoge.jp
129:d=2 hl=2 l= 30 cons: SEQUENCE
�돪�²¼��¢�
������������³������������������������·�����ď�¡돢¡�
2005������04·���11������
¼«������¾��⏪����SSL�����½������2
¼«������¾��⏪����SSL������2������
���.key������돫�����
bash-2.05b# openssl genrsa -des3 1024 > www.hoge.jp.key
Generating RSA private key, 1024 bit long modulus
..................................++++++
....++++++
e is 65537 (0x10001)
Enter pass phrase:
Verifying - Enter pass phrase:
bash-2.05b#
���.csr������돫�����
bash-2.05b# openssl req -new -key www.hoge.jp.key > www.hoge.jp.csr
Enter pass phrase for www.hoge.jp.key:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:JP
State or Province Name (full name) [Some-State]:Tokyo
Locality Name (eg, city) []:Shinjuku-ku
Organization Name (eg, company) [Internet Widgits Pty Ltd]:hoge
Organizational Unit Name (eg, section) []:hoge
Common Name (eg, YOUR name) []:hoge
Email Address []:hoge@hoge
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
bash-2.05b#
���.crt������돫�����
bash-2.05b# openssl req -new -key www.hoge.jp.key -x509 -days 365 -out www.hoge.jp.crt
Enter pass phrase for www.hoge.jp.key:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:JP
State or Province Name (full name) [Some-State]:Tokyo
Locality Name (eg, city) []:Shinjuku-ku
Organization Name (eg, company) [Internet Widgits Pty Ltd]:hoge
Organizational Unit Name (eg, section) []:hoge
Common Name (eg, YOUR name) []:hoge
Email Address []:hoge@hoge
bash-2.05b#
���\���\¹��������
bash-2.05b# openssl rsa -in www.hoge.jp.key -out www.hoge.jp.key
Enter pass phrase for www.hoge.jp.key:
writing RSA key
bash-2.05b#
���.crt .key�����¡돪䏩���
bash-2.05b# cp -ip www.hoge.jp.crt /usr/local/apache/conf/ssl.crt
bash-2.05b# cp -ip www.hoge.jp.key /usr/local/apache/conf/ssl.key
���apache��돩�µ�������돢��\���\¹�����������·���������������������������� pass phrase �����ҏ����Џ������¹����������̏���ߏ��������·����
bash-2.05b# /usr/local/apache/bin/apachectl stop
/usr/local/apache/bin/apachectl stop: httpd stopped
bash-2.05b# /usr/local/apache/bin/apachectl configtest
Syntax OK
bash-2.05b# /usr/local/apache/bin/apachectl startssl
/usr/local/apache/bin/apachectl startssl: httpd started
bash-2.05b# ps ax | grep httpd
2913 ?? Ss 0:00.24 /usr/local/apache/bin/httpd -DSSL
2914 ?? S 0:00.00 /usr/local/apache/bin/httpd -DSSL
2915 ?? S 0:00.00 /usr/local/apache/bin/httpd -DSSL
2916 ?? S 0:00.00 /usr/local/apache/bin/httpd -DSSL
2917 ?? S 0:00.00 /usr/local/apache/bin/httpd -DSSL
2918 ?? S 0:00.00 /usr/local/apache/bin/httpd -DSSL
2920 p2 S+ 0:00.01 grep httpd
bash-2.05b#
2005������04·���06������
¼«�����������¾��� SSL
/home/hoge
bash-2.05b# /usr/local/ssl/bin/CA.sh -newca
CA certificate filename (or enter to create)
Making CA certificate ...
Generating a 1024 bit RSA private key
....++++++
................................++++++
writing new private key to './demoCA/private/./cakey.pem'
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:JP
State or Province Name (full name) [Some-State]:Tokyo
Locality Name (eg, city) []:Shinjuku-ku
Organization Name (eg, company) [Internet Widgits Pty Ltd]:hoge
Organizational Unit Name (eg, section) []:hoge
Common Name (eg, YOUR name) []:hoge
Email Address []:hoge@hoge
���CSR��돫�����
bash-2.05b# openssl req -new -keyout key.pem -out csr.pem
Generating a 1024 bit RSA private key
...........................................................++++++
......++++++
writing new private key to 'key.pem'
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:JP
State or Province Name (full name) [Some-State]:Tokyo
Locality Name (eg, city) []:Shinjuku-ku
Organization Name (eg, company) [Internet Widgits Pty Ltd]:hoge
Organizational Unit Name (eg, section) []:hoge
Common Name (eg, YOUR name) []:hoge
Email Address []:hoge@hoge
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
bash-2.05b#
bash-2.05b# openssl req -new -keyout key.pem -out csr.pem
Generating a 1024 bit RSA private key
...........................................................++++++
......++++++
writing new private key to 'key.pem'
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:JP
State or Province Name (full name) [Some-State]:Tokyo
Locality Name (eg, city) []:Shinjuku-ku
Organization Name (eg, company) [Internet Widgits Pty Ltd]:hoge
Organizational Unit Name (eg, section) []:hoge
Common Name (eg, YOUR name) []:hoge
Email Address []:hoge@hoge
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
���CRT������¹���
bash-2.05b# openssl ca -out cert.pem -infiles csr.pem
Using configuration from /usr/bin/openssl.cnf
Enter pass phrase for ./demoCA/private/cakey.pem:
Check that the request matches the signature
Signature ok
Certificate Details:
Serial Number: 1 (0x1)
Validity
Not Before: Apr 5 19:00:26 2005 GMT
Not After : Apr 5 19:00:26 2006 GMT
Subject:
countryName = JP
stateOrProvinceName = Tokyo
organizationName = hoge
organizationalUnitName = hoge
commonName = hoge
emailAddress = hoge@hoge
X509v3 extensions:
X509v3 Basic Constraints:
CA:FALSE
Netscape Comment:
OpenSSL Generated Certificate
X509v3 Subject Key Identifier:
07:7E:6E:94:C6:62:B4:9E:5E:A2:97:5F:20:99:8F:C2:85:9F:94:0C
X509v3 Authority Key Identifier:
keyid:A5:A9:BD:B2:C2:A6:AA:94:A3:83:02:56:0F:0E:98:51:64:72:4D:DD
DirName:/C=JP/ST=Tokyo/L=Shinjuku-ku/O=hoge/OU=hoge/CN=hoge/emailAddress=hoge@hoge
serial:C0:B8:62:2F:F4:DA:5F:A4
Certificate is to be certified until Apr 5 19:00:26 2006 GMT (365 days)
Sign the certificate? [y/n]:y
1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated
bash-2.05b#
���crt������key�����ҡ돪䏩���
bash-2.05b# mv cert.pem /usr/local/apache/conf/ssl.crt/server.crt
bash-2.05b# mv key.pem /usr/local/apache/conf/ssl.key/server.key
���apache������SSL\������¼\���������µ��������
bash-2.05b# /usr/local/apache/bin/apachectl configtest
Syntax OK
bash-2.05b# /usr/local/apache/bin/apachectl startssl
Apache/1.3.33 mod_ssl/2.8.22 (Pass Phrase Dialog)
Some of your private key files are encrypted for security reasons.
In order to read them you have to provide us with the pass phrases.
Server localhost.localdomain:443 (RSA)
Enter pass phrase:
Ok: Pass Phrase Dialog successful.
/usr/local/apache/bin/apachectl startssl: httpd started
bash-2.05b#
2005������03·���26������
apache1.3.33 + mod_ssl2.8.22 + mysql4.0.18 +php4.3.10 \���\���\¹\������¼\���
���������������������������������������������������� ��¡돢¡돢¡�
bash-2.05b# fetch http://www.apache.org/dist/httpd/apache_1.3.33.tar.gz
apache_1.3.33.tar.gz 100% of 2410 kB 80 kBps 00m00s
bash-2.05b# fetch http://www.modssl.org/source/mod_ssl-2.8.22-1.3.33.tar.gz
mod_ssl-2.8.22-1.3.33.tar.gz 100% of 736 kB 99 kBps
bash-2.05b# fetch http://jp.php.net/get/php-4.3.10.tar.gz/from/this/mirror
mirror 100% of 4777 kB 461 kBps 00m00s
bash-2.05b# fetch http://downloads.mysql.com/archives/mysql-4.0/mysql-4.0.18.tar.gz
mysql-4.0.18.tar.gz 100% of 12 MB 120 kBps 00m00s
# tar xvfz apache_1.3.33.tar.gz
# tar xvfz mod_ssl-2.8.22-1.3.33.tar.gz
# tar xvfz php-4.3.10.tar.gz
# tar xvfz mysql-4.0.18.tar.gz
���mysql
bash-2.05b# pw groupadd mysql
bash-2.05b# cat /etc/group | grep mysql
mysql:*:1001:
bash-2.05b# pw useradd mysql -g mysql -d /usr/local/mysql
bash-2.05b# cat /etc/passwd | grep mysql
mysql:*:1002:1001:User &:/usr/local/mysql:/bin/sh
bash-2.05b# id mysql ; finger mysql
uid=1002(mysql) gid=1001(mysql) groups=1001(mysql)
Login: mysql Name: User Mysql
Directory: /usr/local/mysql Shell: /bin/sh
Never logged in.
No Mail.
No Plan.
bash-2.05b#
bash-2.05b# cd mysql-4.0.18 ; pwd
/usr/local/src/mysql-4.0.18
bash-2.05b# ./configure --with-charset=ujis --with-extra-charsets=all --with-mysqld-user=mysql --prefix=/usr/local/mysql
(¾�����¢�)
Thank you for choosing MySQL!
bash-2.05b# make
bash-2.05b# make install
bash-2.05b# ./scripts/mysql_install_db /usr/local/mysql/
bash-2.05b# chown -R mysql:mysql /usr/local/mysql/
bash-2.05b# /usr/local/mysql/bin/mysqld_safe --user=mysql &
���¼«�����µ������\¹\���\���\��\�����돫�����
bash-2.05b# cd /usr/local/etc/rc.d/ ; pwd
/usr/local/etc/rc.d
bash-2.05b# vi mysql.sh
��²¼µ������µ½���
#!/bin/sh
cd /usr/local/mysql/bin
./mysqld_safe --user=mysql --skip-networking &
bash-2.05b# chmod +x /usr/local/etc/rc.d/mysql.sh
bash-2.05b# ls -l
total 2
-rwxr-xr-x 1 root wheel 81 Mar 26 05:21 mysql.sh
���mod_ssl + apache1.3.33
bash-2.05b# cd mod_ssl-2.8.22-1.3.33 ; pwd
/usr/local/src/mod_ssl-2.8.22-1.3.33
bash-2.05b# ./configure --with-apache=../apache_1.3.33 --with-ssl=../openssl-0.9.7f --prefix=/usr/local/apache
--enable-shared=max --enable-module=so
bash-2.05b# cd ../apache_1.3.33 ; pwd
/usr/local/src/apache_1.3.33
bash-2.05b# make
bash-2.05b# make certificate TYPE=dummy
bash-2.05b# make install
+--------------------------------------------------------+
| You now have successfully built and installed the |
| Apache 1.3 HTTP server. To verify that Apache actually |
| works correctly you now should first check the |
| (initially created or preserved) configuration files |
| |
| /usr/local/apache/conf/httpd.conf |
| |
| and then you should be able to immediately fire up |
| Apache the first time by running: |
| |
| /usr/local/apache/bin/apachectl start |
| |
| Or when you want to run it with SSL enabled use: |
| |
| /usr/local/apache/bin/apachectl startssl |
| |
| Thanks for using Apache. The Apache Group |
| http://www.apache.org/ |
+--------------------------------------------------------+
���php
bash-2.05b# cd php-4.3.10 ; pwd
/usr/local/src/php-4.3.10
bash-2.05b# ./configure \
--with-apxs=/usr/local/apache/bin/apxs \
--with-mysql=/usr/local/mysql \
--enable-mbstring \
--enable-mbstr-enc-trans
--with-zlib-dir=/usr/local/lib
(¾�����¢�)
Thank you for using PHP.
bash-2.05b# make
bash-2.05b# make install
������������������½��쏪�» ���¹���«�����������ď���
������»�ߏ����������ď�����php���̏���돢�«���������������������������я��������폢��
����������������𡯏�����web�����������������·�돪�²¼httpd.conf������½������µ
bash-2.05b# diff /usr/local/apache/conf/httpd.conf /backup/httpd.conf.default
< ClearModuleList
< AddModule mod_so.c
---
> ClearModuleList
246a247
> AddModule mod_so.c
308,309c309,310
< User www
< Group www
---
> User nobody
> Group nobody
421c422
< DirectoryIndex index.php index.html
---
> DirectoryIndex index.html
1072d1072
< ServerTokens OS
1246d1245
< AddType application/x-httpd-php .php
bash-2.05b#
��DocumentRoot������
#vi phpinfo.php
�돪�²¼������µ½���
phpinfo();
?>
��������¡�http://ip\��\���\���\¹/phpinfo.php
���³������������php¾��Ï����я��̏��½¼�����µ�����������ď�����ok���������·������
����
����
����
��������������� �����؏�����
2005������03·���25������
openssl \��\���\��\������¼\���
������½��돩Ώ�����\Ð���¼\���\���\���³������
bash-2.05b# openssl version
OpenSSL 0.9.7e 25 Oct 2004
���\���\���\���\������¼\������\���\���\¹\������¼\���
bash-2.05b# fetch http://www.openssl.org/source/openssl-0.9.7f.tar.gz
bash-2.05b# tar xvfz openssl-0.9.7f.tar.gz
bash-2.05b# cd openssl-0.9.7f ; pwd
bash-2.05b# ./config --prefix=/usr --openssldir=/usr/bin
bash-2.05b# make
bash-2.05b# make test
bash-2.05b# make install
���³������
bash-2.05b# openssl version
OpenSSL 0.9.7f 22 Mar 2005
��������������¡����Ï�����������������������������·�����ď�¡돢¡�
2005������03·���19������
mod_ssl\���\���\¹\������¼\���
���������¼���«�����Џ��������������������������«������������mod_ssl������\���\���\¹\������¼\���
������������������������apache������1.29���1.33������\��\���\��\��\������¼\���
bash-2.05b# fetch http://sunsite.tus.ac.jp/pub/apache/httpd/apache_1.3.33.tar.Z
apache_1.3.33.tar.Z 100% of 3882 kB 518 kBps
bash-2.05b# tar xvfz apache_1.3.33.tar.gz
bash-2.05b# fetch http://www.modssl.org/source/mod_ssl-2.8.22-1.3.33.tar.gz
mod_ssl-2.8.22-1.3.33.tar.gz 100% of 736 kB 102 kBps
bash-2.05b# tar xvfz mod_ssl-2.8.22-1.3.33.tar.gz
bash-2.05b# cd mod_ssl-2.8.22-1.3.33 ; pwd
/usr/src/mod_ssl-2.8.22-1.3.33
bash-2.05b# ./configure --with-apache=../apache_1.3.33 --with -ssl=/usr/bin/openssl
bash-2.05b# cd apache_1.3.33 ; pwd
/usr/src/apache_1.3.33
bash-2.05b# make
bash-2.05b# make install
+--------------------------------------------------------+
| You now have successfully built and installed the |
| Apache 1.3 HTTP server. To verify that Apache actually |
| works correctly you now should first check the |
| (initially created or preserved) configuration files |
| |
| /usr/local/apache/conf/httpd.conf
| |
| and then you should be able to immediately fire up |
| Apache the first time by running: |
| |
| /usr/local/apache/bin/apachectl start
| |
| Or when you want to run it with SSL enabled use: |
| |
| /usr/local/apache/bin/apachectl startssl
| |
| Thanks for using Apache. The Apache Group |
| http://www.apache.org/ |
+--------------------------------------------------------+
��������㏢¡돢¡�
2005������03·���09������
�����䏢�³���½Basic�����¾���
·��⏢����������������������
���basic�����¾��⏢����³����ޏ�����
1;.htpasswd+httpd.conf ��apache��돩�µ�������돢�̏���̏����
2:.htpasswd+.htaccess
����²��я�����2�����ҏ�돪�����
\���\��ď��������ޏ�������¡�ninsyou������������������\���\��\���\���\���\��������ҏ�돫�������¡��½���³�����������¾��⏢����³����ޏ����������Ώ�����
���Ð������\������¼\����������¡�hoge
���.htpasswd������돫�����
bash-2.05b# which htpasswd
/usr/local/bin/htpasswd
bash-2.05b# htpasswd -c /usr/home/hoge/www2/html/ninsyou/.htpasswd hoge
New password:
Re-type new password:
Adding password for user hoge
bash-2.05b#
-c���������·µ�̏�돫����� ���³���ޏ�����\������¼\�����Ð�����ď��¹��������������������¡��؏��ޏ��������������������ޏ�������������
���³������
bash-2.05b# cat /usr/home/hoge/www2/html/ninsyou/.htpasswd
hoge:******
bash-2.05b#
��������������¡�������������я�����½Ð���������������������¹
���.htaccess������돫�����
���о���\���\��\���\���\���\����������돪䏩��돢�·������
bash-2.05b# cd /usr/home/hoge/www2/html/ninsyou/
vi��������돫�����
���³�����я���������������
bash-2.05b# cat .htaccess
AuthUserFile /usr/home/hoge/www2/html/ninsyou/.htpasswd
AuthGroupFile /dev/null
AuthName "Please Enter Your Password"
AuthType Basic
require valid-user
bash-2.05b#
AuthUserFile ��� .htpasswd�������������Ð\���\¹
AuthGroupFile ��� \��\������¼\��\���\���\���\���������»��������� »������������·������������¾���¹���������/dev/null
AuthName ��� �����¾���\���\���\»���¼\��� �����䏪���䏢����������²½���ޏ��������³���������̏����������������·������
AuthType ��� �����¾���\���\���\�ߏ�¡���²��я�����������������������������Basic ���¾������Digest���̏����������������·������
Require ��� \��\���\»\¹µ���²������¹������\������¼\��������»��������� valid-user������\���\¹\������¼\���\���\���\���\�����������������������������������¹�����㏢����������\������¼\��������µ���²�����¡��½���������������������������������������Ώ����ď�����
���³���³�����������������������²��я���������ޏ����� �����������������������я��³����������������������������½Ð���������������»�����ѡ��
���httpd.conf�����ҏ�����½������·��¡�.htaccess���������Ώ����������ҏ����ġޏ�����µ���»������
vi httpd.conf ²¼µ�����ҏ����Ώ�����
AccessFileName .htaccess
AllowOverride AuthConfig
httpd.conf�����ҏ�����½������·�����ď�����������¡�apache�����ҏ�돩�µ��������
���������������������·���������̏��������о���\��\���\���\¹������\���\���\���\��������³«������
�����Ï�����������������������������·�����ď�¡돢¡�
������������������������
���.htpasswd������\������¼\�������ҏ�����²��� \��\«\���\���\���������hoga
bash-2.05b#/usr/local/bin/htpasswd /usr/home/hoge/www2/html/ninsyou/.htpasswd hoga
New password:
Re-type new password:
Adding password for user hoga
bash-2.05b# cat /usr/home/hoge/www2/html/ninsyou/.htpasswd
hoge:******
hoga:******
\���\���\���\��������³������������������������·�����ď�¡돢¡�
���\��\«\���\���\���hoga��돫�½���
bash-2.05b# vi /usr/home/hoge/www2/html/ninsyou/.htpasswd
hoga:******�����ҏ�돫�½���
bash-2.05b# cat /usr/home/hoge/www2/html/ninsyou/.htpasswd
hoge:******
2005������02·���22������
VirtualHost(name base)
��httpd.conf����������½���
#NameVirtualHost *:80
��
NameVirtualHost *:80(\³\���\���\���\��\���\���)
#���½\µ\���\��������Џ����Ώ����� \���\�돢����¾���½���������\���\���\���\���\���
(VirtualHost *)
ServerName hoge.hoge.jp
DocumentRoot /home/hoge/www/html
(/VirtualHost)
#��¡�\µ\���\��������Џ����Ώ�����
(VirtualHost *)
ServerName hoge.hoge.net
DocumentRoot /home/hoge/www2/html
ErrorLog /home/hoge/www2/log/httpd-error.log
TransferLog /home/hoge/www2/log/httpd-access.log
(/VirtualHost)
apache ��돩�µ����������³������
��������������¡����Ï�����������������������������·�����ď�¡돢¡�
2005������02·���21������
Basic�����¾��⏢�̏��������������������
�돫���돫ҏ����䏢����1²��я����䏢¡�²��ď�����\���\���\���\��������������������������Ï�������������������������쏢�������������¾������\���\��\���\���\���\���������������������������������«���������폢����»�ߏ����������Ώ�����������¹¹��쏢���Ï��������������������«��������������\Ð\���\���\��\���\�ߏ��«���������µ���������������¹��쏢���Ï����������������������������ď��������������돢��������\���\��\���\���\���\��������������������Ï��������������������«�����������������������������ď��������������я��������폢��
��.htpasswd������돫�����
bash-2.05b# which htpasswd
/usr/local/bin/htpasswd
bash-2.05b# htpasswd -c /usr/local/bin/.htpasswd test
New password:
Re-type new password:
Adding password for user test
bash-2.05b#
bash-2.05b# ls -al /usr/local/bin/ | grep .htpasswd
-rw-r--r-- 1 root wheel 19 Feb 21 03:37 .htpasswd
-rwxr-xr-x 1 root wheel 27560 Jan 26 09:32 htpasswd
bash-2.05b# cat /usr/local/bin/.htpasswd
test:******
bash-2.05b#
��http.conf���������Ώ�����
����������������
(Directory "/usr/home/hoge/hoge/ninsyou/")
AuthUserFile /usr/local/bin/.htpasswd
AuthGroupFile /dev/null
AuthName "Please Enter Your Password"
AuthType Basic
Require valid-user
(/Directory)
��apache������»��Ρ��µ��������
1²��я����䏢���������Ï����������������������������ď����я��������ޏ��������������������������������������돢���Ώ�����