本文へスキップ

JA2GZZ Shizuoka Japan. GL:PM95KF

CQ CQ CQ de JA2GZZ

QRZ.comはこちら

Windows XP PCの活用linux

古い Windows XP パソコンの活用

2015/10/1
2014/8/17

 2014年4月9日以降 Windows XP のサポートが終了し、インターネット接続で使用すると極めて危険な状態になってしまい継続使用は止めるべきである。PCを廃棄処分にするには処分料を支払って捨てる必要がある、見た目は結構綺麗だが Windows 7 をインストール出来るだけのハードウエアースペックは満たしていない。OSは買うと2万円前後する・・・

 サポート期間が終了した Windows XP はインターネット環境で使い続けるのは危険なので使用厳禁! さりとてハードウエアー的には まだまだ使える Windows XP マシンの活路を考えてみた。

 パソコンをインターネット、メール、ワード・エクセル 程度で使うのであればこの際思い切って Linux をインストールしてみよう、掛かる費用はOSを含め全て無料であるし Windows XP 後期のマシンならサクサクと快適に動作する。

目 次 
1 リナックスOSのインストール
2 アンチウィルスソフト Clam AntiVirus の導入
3 サウンド機能 Alsamixer について
4 Skypeのインストール
5 Flashプラグインのインストール
6 Windowsから CentOSの共有ホルダーにアクセス
7 CentOSから Windowsの共有ホルダーにアクセス
8 HTTPサーバー Apache の設定
9 FTPサーバー vsfptd の設定
10 CGI掲示板 Joyful Noteの設置
11 メールサーバー Postfix+Dovecot の設定
12 時刻サーバー NTPd の設定
13 その他

 

  ↑このページの先頭に戻る
リナックスOSのインストール
(セント オーエス)↑このページの先頭に戻る

 数ある Linux ディストリビューションの中から CentOS を採用することにしましよう。 Windows XP は完全に削除してしまっても良いが 今回はそのまま残し CentOS とのデュアルブート構成のマシンとします。

 1.Windows XPで前準備(Windows XPを残さない場合は本稿不要)
・必要ならデジカメ写真・音楽MP3、ワード・エクセル等の個人データーを予めCD/DVDや他のパソコンに保管します。

Windows XPがCドライブのみで動作するようにOSを設定します(OSが D, E...ハードディスクドライブを使っていないこと)

Windows XPは今後使用しないので、HDDパーティション編集ツールでCドライブのディスクサイズを必要最小限(24GB〜32GB)縮小します。

ディスクトップの [マイコンピューター]→[管理]→[ディスクの管理] Cドライブ以外の

D, E...ハードディスクドライブ(マシンに依って異なる)を全て [ボリュームの削除] で削除し、これらの空きディスクを全て CentOS用に振り向けます。【注意】ハードディスク全容量のうちCドライブで占有するエリアー以外は未認識・未割当て状態にしておきます(空きエリアーにパーティションを切ったりホーマットを掛けてはいけません)尚、CentOSのインストールには 20GB以上のディスク空き容量が必要です。

 

 2.CentOS 5.7インストールCDの準備・作成
 ダウンロードは理研の配布サイトより32ビットOSなら i386 ホルダー内の CentOS-5.7-i386-bin-1of8.iso 〜 CentOS-5.7-i386-bin-8of8.iso 迄の isoファイル8個を順次ダウンロードします。 64ビットOSなら x86_64 ホルダー内の CentOS-5.7-x86_64-bin-1of8.iso 〜 CentOS-5.7-x86_64-bin-8of8.iso 迄の isoファイル8個を順次ダウンロードします。ダウンロードした isoファイルを ImgBurn 等のライティングソフトの ISOイメージ書込みモードでCD−Rに焼いて CentOS 5.7 インストールCD 1/8〜8/8 の8枚を作成します。

 

Go to ...

旧バージョンのダウンロードはこちら

【注意】多分手元XPパソコンにはDVDドライブが装着されていないのでCDドライブ用の isoファイルをダウンロードします。
【注意】多分手元パソコンはWindows XP 32ビットだったと思いますので32ビット版のCentOSをダウンロードします。

【参考】もし CentOS 6.x をインストールしようと考えている方はXPパソコンの発売時期によって運命が分かれます。

・発売初期・中期のマシン+CDドライブでは CentOS 6.x で X-Window(GUI)操作が出来ません。
 (物理アドレス拡張のないCPUはサポート外)

・発売後期のマシン+DVDドライブでCPUがP4HT、915Gチップセット(GMA900 DirectX9)ならOKかも?




3.
CentOS 5.7インストール作業
 CentOS 5.7 インストールCD 1/8 を挿入したらパソコンを再起動し全ハードディスク容量のうちWindows XPのCドライブで使っている以外で未認識・未割当て状態のエリアー≧20GB)にホーマットをしながらインストールを行っていきます。

【参考】CDからOSのインストール ウイザードが起動しない時は、パソコンのBIOS設定を確認します。起動ドライブ順が @CD/DVD AHDD と、CD/DVDの起動順がHDDより優先するようBIOSを設定してください。外部お助け隊:CD-ROM、DVD-ROM から起動

 5.7

 

ファイアーウオールの設定

ファイアーウオールの設定【注意】↑上の資料は使い回しの為インストールが完了したPCに root権限でログインして、

 [システム]→[管理]→[セキュリティレベルとファイヤーウオールの設定] 画面で、ファイアーウオールは【有効】を選択し【信頼できるサービス】の全ての枠にチェック "" を入れる。SELinux は Permissive を選択すること。又【ネットワークデバイス】eth0、eth1 が2チャンネル必要の旨記述されているが、これは特殊用途向けで通常は eth0 チャンネルのみで良い。

 インストールが完了すると CentOSWindows XP のデュアルブート構成のマシンとなりました。既定値は CentOSですがもし Windows XP を起動したい場合は を参照下さい。 尚、OS本体の他に httpサーバー Apache時刻サーバー ntpdMS Office 互換の オフィススイート 等々も一緒にインストールされています

参考情報

 CentOS5.x 迄はマイクロソフトオフィス互換の OpenOffice.org が採用されていますが CentOS6.x からは LibreOffice が採用されています。

 

● ソフトウエアの更新
 インストール完了後 最初にCentOSにログインし、暫くすると「ソフトウエアの更新」がある旨のメッセージが現れるので画面の指示に従って「パスワード」の入力や「キーを取り込み」を行いながら更新のインストールを行い、最後にPCを再起動します。 尚、将来「ソフトウエアの更新」メッセージが現れたら速やかにこれを実施しましょう。

 ・2015/10/1現在「ソフトウエアの更新」を行ったらバージョンが CemtOS 5.7 から CentOS 5.11 Final になりました。

この状態で既にインターネット、メール、ワード・エクセル等々が使用できるように
なっています。

ソフトウエアパッケージの追加
クリックで拡大

 root 権限でログインし、[アプリケーション]→[ソフトウエアの追加/削除]をクリックして [パッケージマネージャー] を表示させます。ブラウズ左画面で [サーバー] を選択し、右画面の [FTPサーバー][Windowsファイルサーバー] にチェックを入れます、以下 画面の指示に従いソフトウエアの追加を行います。

 

自動ログイン

 Go to ...自動ログイン

 

[GNOME端末] root権限 に切り替える方法:

 自動ログイン後 [アプリケーション]→[アクセサリ]→[GNOME端末] を起動し、ユーザー切替コマンド su をタイプ後パスワードを入力するとコマンドプロンプトが $ から # に代わって root 権限でのコマンド操作が可能となります。

[ted@localhost ~]$ su
パスワード:(エコーバック無し)        ← パスワードを入力する事
[root@localhost ted]#

 

リナックス操作の基本はコマンド操作

 Windowsの場合は何かインストールしたいソフトがあれば、そのソフトをマウスでダブルクリクし SETUP.EXE を実行すればあとは自動的にインストールが始まります。又、何かの設定を行う場合もGUIの設定画面が用意されているのが普通です。一方、リナックスでインストールや設定を行うには上記の要領で [GNOME端末] root権限 に切り替え後、端末画面内に各コマンドを入力します。

[root@localhost ted]#  コマンド

 

(リンク集)

・LinuxコマンドA-E    F-J    K-O    P-T    U-Z

・Linuxコマンド一覧表

・Linuxコマンド一覧

・Linuxコマンド集

 

 

 

 

↑このページの先頭に戻る
アンチウィルスソフト Clam AntiVirus の導入

↑このページの先頭に戻る

 フリーのアンチウィルスソフト Clam AntiVirus をインストールするには 先ず RPMforgeリポジトリを導入して、標準リポジトリで提供されないパッケージをyumでインストールできるようにします。

1.yum-prioritiesプラグイン導入
■yum-prioritiesのインストール

[root@localhost ted]# yum -y install yum-priorities 【注1】OSにより異なる

Loaded plugins: fastestmirror
:
Installed:
yum-priorities.noarch 0:1.1.16-21.el5.centos

Complete!

 【注1】OSにより異なる:
[root@localhost ted]#  yum -y install yum-priorities               ← for CentOS-5
[root@localhost ted]#  yum -y install yum-plugin-priorities    
← for CentOS-6/7

[root@localhost ted]# gedit /etc/yum.repos.d/CentOS-Base.repo    ← 標準リポジトリ設定ファイル編集

(↓主な編集箇所)
# --------↓↓ここから↓↓----------------------------------------------------
# gedit /etc/yum.repos.d/CentOS-Base.repo
[base]
[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=1                 ← 追加

#released updates
[updates]
name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=1                 ← 追加

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=1                 ← 追加
# --------↑↑ここまで↑↑----------------------------------------------------


 

2.RPMforgeリポジトリ導入
■rpmforge-releaseダウンロード【注2】OSにより異なる
[root@localhost ted]# wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el5.rf.i386.rpm

RepoForge は終了したようです。2016年7月20日頃から接続できなくなっています。

以後、↓理研のサイトからインストールします。http://ftp.riken.jp/Linux/repoforge/redhat/el5/en/

 

■RPMforgeリポジトリ インストール【注2】OSにより異なる
[root@localhost ted]# rpm -ivh http://ftp.riken.jp/Linux/repoforge/redhat/el5/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el5.rf.x86_64.rpm

 

http://ftp.riken.jp/Linux/repoforge/redhat/el5/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el5.rf.x86_64.rpm を取得中
警告: /var/tmp/rpm-xfer.jlGqr5: ヘッダ V3 DSA signature: NOKEY, key ID 6b8d79e6
準備中...                  ########################################### [100%]
1:rpmforge-release ########################################### [100%]

【注2】OSにより異なる

rpm -ivh http://ftp.riken.jp/Linux/repoforge/redhat/el2/en/i386/rpmforge/RPMS/rpmforge-release-0.5.3-1.el5.rf.i386.rpm      ← CentOS-5/32ビット
rpm -ivh http://ftp.riken.jp/Linux/repoforge/redhat/el5/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el5.rf.x86_64.rpm   ← CentOS-5/64ビット

 

■rpmforge-releaseアップデート
[root@localhost ted]# yum -y update rpmforge-release

Loaded plugins: fastestmirror, priorities, security
Loading mirror speeds from cached hostfile
* base: ftp.yz.yamagata-u.ac.jp
* extras: ftp.yz.yamagata-u.ac.jp
* rpmforge: ftp.kddilabs.jp
* updates: ftp.yz.yamagata-u.ac.jp
117 packages excluded due to repository priority protections
Skipping security plugin, no data
Setting up Update Process
No Packages marked for Update

 

 

3.Clam AntiVirusインストール
■Clam AntiVirus導入

[root@localhost ted]# yum -y install clamd
Loaded plugins: fastestmirror, priorities, security
          :
Dependency Installed:
clamav.x86_64 0:0.98.4-1.el5.rf clamav-db.x86_64 0:0.98.4-1.el5.rf
Complete!

[root@localhost ted]# gedit /etc/clamd.conf    ← conf 設定ファイルを編集

(↓行頭に #を追記しコメントアウトする)

# --------↓↓ここから↓↓----------------------------------------------------
# :
# Run as another user (clamd must be started by root for this option to work)
# Default: don't drop privileges
#User clamav        ← 行頭に#を追加し root権限で動作するようにする(195行目)
# Initialize supplementary group access (clamd must be started by root).
# :
# --------↑↑ここまで↑↑----------------------------------------------------



■Clam AntiVirus起動
[root@localhost ted]# /etc/rc.d/init.d/clamd start

Starting Clam AntiVirus Daemon: LibClamAV Warning: ************        【注1】# freshclam 参照
LibClamAV Warning: *** The virus database is older than 7 days! ***        ← 7日以上ウイルスデータ未更新警告
LibClamAV Warning: ***   Please update it as soon as possible.    ***
LibClamAV Warning: **************************************
                                [ OK ]

(または)

[root@localhost ted]# service clamd start

Starting Clam AntiVirus Daemon: LibClamAV Warning: ************        ←【注1】# freshclam 参照
LibClamAV Warning: *** The virus database is older than 7 days! ***      
 ← 7日以上ウイルスデータ未更新警告
LibClamAV Warning: ***   Please update it as soon as possible.    ***
LibClamAV Warning: **************************************

                                [ OK ]

 

■Clamd自動起動設定
[root@localhost ted]# chkconfig clamd on


■ウィルス定義ファイルのアップデート
ウィルス定義ファイル更新機能を有効にします
[root@localhost ted]# sed -i 's/^Example/#Example/g' /etc/freshclam.conf


ウィルス定義ファイルのアップデート
[root@localhost ted]# freshclam

ClamAV update process started at Fri Jan 31 14:02:47 2014
WARNING: Your ClamAV installation is OUTDATED!
WARNING: Local version: 0.98 Recommended version: 0.98.1
DON'T PANIC! Read http://www.clamav.net/support/faq
Downloading main-55.cdiff [100%]
:
Database updated (3102242 signatures) from db.jp.clamav.net (IP: 27.96.54.66)
Clamd successfully notified about the update.

 

【注1】Clam AntiVirus 起動時に「7日以上ウイルスデータ未更新警告」が表示されていた場合、 ウィルス定義のアップデート後は当然だが次のように警告表示は未表示となる。
[root@localhost ted]# /etc/rc.d/init.d/clamd stop     一旦停止
Stopping Clam AntiVirus Daemon:     [ OK ]
[root@localhost ted]#
/etc/rc.d/init.d/clamd start      開始
Starting  Clam AntiVirus Daemon:      [ OK ]                 当然、未更新警告なし


※以後のウィルス定義ファイルのアップデートは、/etc/cron.daily/freshclam により毎日自動で行われる


■ウィルススキャンテスト
(ウィルスなしの場合)

[root@localhost ted]# clamscan --infected --remove --recursive ← ウィルススキャンテスト
----------- SCAN SUMMARY -----------
Known viruses: 3096871
Engine version: 0.98
Scanned directories: 185
Scanned files: 1354
Infected files: 0                 ← ウィルスは検知されなかった
Data scanned: 125.82 MB
Data read: 76.43 MB (ratio 1.65:1)
Time: 116.351 sec (1 m 56 s)

 

(テスト用ウィルスをダウンロード

[root@localhost ted]# wget http://www.eicar.org/download/eicar.com       ← テスト用ウィルスをダウンロード
--2014-01-31 14:11:55-- http://www.eicar.org/download/eicar.com
        :
2014-01-31 14:11:56 (1.77 MB/s) - `eicar.com' へ保存完了 [68/68]

[root@localhost ted]# wget http://www.eicar.org/download/eicar.com.txt  ← テスト用ウィルスをダウンロード
--2014-01-31 14:12:15-- http://www.eicar.org/download/eicar.com.txt
        :
2014-01-31 14:12:16 (2.15 MB/s) - `eicar.com.txt' へ保存完了 [68/68]

[root@localhost ted]# wget http://www.eicar.org/download/eicar_com.zip ← テスト用ウィルスをダウンロード
--2014-01-31 14:12:30-- http://www.eicar.org/download/eicar_com.zip
        :
2014-01-31 14:12:32 (5.59 MB/s) - `eicar_com.zip' へ保存完了 [184/184]

[root@localhost ted]# wget http://www.eicar.org/download/eicarcom2.zip ← テスト用ウィルスをダウンロード
--2014-01-31 14:12:43-- http://www.eicar.org/download/eicarcom2.zip
        :
2014-01-31 14:12:43 (9.69 MB/s) - `eicarcom2.zip' へ保存完了 [308/308]

 


(ウィルスありの場合)
[root@localhost ted]# clamscan --infected --remove --recursive ← ウィルススキャンテスト

/root/eicarcom2.zip: Eicar-Test-Signature FOUND ← ウィルス検知
/root/eicarcom2.zip: Removed                        
    ← ウィルス削除
/root/eicar.com.txt: Eicar-Test-Signature FOUND  
← ウィルス検知
/root/eicar.com.txt: Removed                             
← ウィルス削除
/root/eicar_com.zip: Eicar-Test-Signature FOUND 
← ウィルス検知
/root/eicar_com.zip: Removed                            
← ウィルス削除
/root/eicar.com: Eicar-Test-Signature FOUND
        ← ウィルス検知
/root/eicar.com: Removed                            
      ← ウィルス削除

----------- SCAN SUMMARY -----------
Known viruses: 3096871
Engine version: 0.98
Scanned directories: 185
Scanned files: 1358
Infected files: 4                 ← 4つのウィルスを検知した
Data scanned: 125.82 MB
Data read: 76.43 MB (ratio 1.65:1)
Time: 95.898 sec (1 m 35 s)

 
 
 


■ウィルススキャン定期自動実行設定
[root@localhost ted]# gedit virusscan         ← ウィルススキャン実行スクリプト作成
(↓作成内容)
# --------↓↓ここから↓↓----------------------------------------------------
# gedit virusscan
#!/bin/bash

PATH=/usr/bin:/bin
# clamd update
yum -y update clamd > /dev/null 2>&1
# excludeopt setup
excludelist=/root/clamscan.exclude
if [ -s $excludelist ]; then
        for i in `cat $excludelist`
        do
            if [ $(echo "$i"|grep \/$) ]; then
                i=`echo $i|sed -e 's/^\([^ ]*\)\/$/\1/p' -e d`
                excludeopt="${excludeopt} --exclude-dir=^$i"
            else
                excludeopt="${excludeopt} --exclude=^$i"
            fi
        done
fi
# virus scan
CLAMSCANTMP=`mktemp`
clamscan --recursive --remove ${excludeopt} / > $CLAMSCANTMP 2>&1
[ ! -z "$(grep FOUND$ $CLAMSCANTMP)" ] && \
# report mail send
grep FOUND$ $CLAMSCANTMP | mail -s "Virus Found in `hostname`" root
rm -f $CLAMSCANTMP
# --------↑↑ここまで↑↑----------------------------------------------------


■ウィルススキャン実行スクリプトへ実行権限付与
[root@localhost ted]# chmod +x virusscan

 

■ 例:/backup/backup.tar.bz2をスキャン対象外にする

[root@localhost ted]# echo "/backup/backup.tar.bz2" >> clamscan.exclude

 

■例:/procホルダーをスキャン対象外にする
[root@localhost ted]# echo "/proc/" >> clamscan.exclude

 

■例:/sysホルダーをスキャン対象外にする ※ホルダーを除外する場合は末尾に「/」を付加する
[root@localhost ted]# echo "/sys/" >> clamscan.exclude

 

■ウィルススキャン実行スクリプトを毎日自動実行するホルダーへ移動 
[root@localhost ted]# mv virusscan /etc/cron.daily/

 

 

↑このページの先頭に戻る
サウンド機能クリックで拡大Alsamixer について
↑このページの先頭に戻る

 当サイトで順次説明するで Skypeフラッシュ プレーヤーを使用する場合にサウンド機能が必要ですが、これらの基本的な事項について説明します。

1.サウンドミキサー alsamixer の調整
サウンドミキサーを起動し、再生SP/録音MIC ボリュームの調整を行います。

[root@localhost ted]# alsamixer

 

2.録音再生チェック
■正弦波で再生チェック
(必ず実施して下さい)
[root@localhost ted]# speaker-test -c10 -l1 -t sin -f440
speaker-test 1.0.17
再生デバイス: default
ストリームパラメータ: 48000Hz, S16_LE, 10 チャネル
正弦波レート: 440.0000Hz
レート 48000Hz (要求値 48000Hz)
バッファサイズ範囲 2048 〜 16384
ピリオドサイズ範囲 1024 〜 1024
最大バッファサイズ 16384 を使用
ピリオド数 = 4
period_size = 1024 で設定
buffer_size = 16384 で設定
0 - Front Left           
; 0 左スピーカー
1 - Front Right         
; 1 右スピーカー
    :                       
; 2〜9は 通常無音状態
(多チャンネルサラウンド用)
9 - Channel 10
ピリオド時間 = 29.356194

 

■電話の呼び鈴.wav が正しく再生できるかチェック
[root@localhost ted]# aplay -Vstereo -D plug:dmix /usr/share/sounds/phone.wav

または

[root@localhost ted]# aplay -Vstereo /usr/share/sounds/phone.wav

 

■録音再生エコーバックテスト
[root@localhost ted]# arecord -t wav -d 5 test.wav                 ← マイクに向かって5秒間喋る
録音中 WAVE 'test.wav' : Unsigned 8 bit, レート 8000 Hz, モノラル
[root@localhost ted]# aplay test.wav                                       ← 上記テスト録音を再生
再生中 WAVE 'test.wav' : Unsigned 8 bit, レート 8000 Hz, モノラル

 

 

3.音量調節ツール

クリックで拡大

 実用的には [システム]→[設定]→[音量調節ツール] で音量コントロールを行います。

 

 

 

 

↑このページの先頭に戻る
のインストール
↑このページの先頭に戻る

 

  Linux版のSkypeをインストールする方法はSkypeのウエブサイトに掲載されています。残念ながら現行バージョンのSkypeは CentOS-5では動作しません。但し、旧バージョンのSkypeはCentOS-5で使用できます。

(1.CentOS-6専用)

 Skypeのウエブサイトで【Skype for Linuxを初めてご使用になる方へ】を開きページ下方にある【Skypeのダウンロードとインストール - CentOS】をクリックし説明文を表示させます。

1.1.説明文のSkypeダイナミックバージョンをダウンロードします ← CentOS-6専用

 ディストリビューションを選択してください】▼タグで Dynamic を選択・ダウンロードします。

1.2.次に説明文に従って解凍します。

1.3.インストールを行います。

1.4.ディストリビューションを選択してください】▼タグで Debianファイルを選択・ダウンロードします。

1.5.以下 説明文に従って5項〜10項の操作を行いスカイプのインストールを行います。

 

 

(2.Skype on CentOS-5) CentOS-5用Skypeについて
  The current version of Skype will not work in CentOS-5. You can download an older, statically linked version of Skype which will work in CentOS-5 from http://download.skype.com/linux/skype_static-2.1.0.81.tar.bz2 Then substitute this tarball into the directions for CentOS-6

クリックで拡大

 

 以上の記載があり現行バージョンは CentOS-5で使用できないが旧バージョンは CentOS-5で使用できるとの事なので、次の要領でインストールを行っていきます。

 

 

2.1.Skypeのダウンロード

[root@localhost ted]# wget http://download.skype.com/linux/skype_static-2.1.0.81.tar.bz2

--2014-05-12 07:36:04-- http://download.skype.com/linux/skype_static-2.1.0.81.tar.bz2
download.skype.com をDNSに問いあわせています... 198.87.182.233, 198.87.182.235
download.skype.com|198.87.182.233|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 27555345 (26M) [application/octet-stream]
`skype_static-2.1.0.81.tar.bz2' に保存中
100%[======================================>] 27,555,345 6.42M/s 時間 4.7s
2014-05-12 07:36:09 (5.54 MB/s) - `skype_static-2.1.0.81.tar.bz2' へ
保存完了 [27555345/27555345]

●本当にダウンロードしたファイルが保存されているか再確認

[root@localhost ted]# ls

Desktop skype_static-2.1.0.81.tar.bz2

 

2.2.ダウンロードファイルを解凍

[root@localhost ted]# tar jxvf skype_static-2.1.0.81.tar.bz2

skype_static-2.1.0.81/
skype_static-2.1.0.81/icons/
skype_static-2.1.0.81/icons/SkypeBlue_48x48.png

    :
skype_static-2.1.0.81/skype
skype_static-2.1.0.81/README
skype_static-2.1.0.81/LICENSE

 

2.3.解凍ホルダーへ移動

[root@localhost ted]# cd skype_static-2.1.0.81/

[root@localhost skype_static-2.1.0.81]#

 

 

2.4.READMEを見る

[root@localhost skype_static-2.1.0.81]# less README

READMEファイル表示を終了し、GNOME端末画面に戻るには q 又は Q とタイプします。

 

2.5.Skype用にホルダーを作成

[root@localhost skype_static-2.1.0.81]# mkdir /usr/share/skype

 

2.6.Skypeホルダーにファイルコピー(手動インストール)

[root@localhost skype_static-2.1.0.81]# cp skype /usr/bin/skype
[root@localhost skype_static-2.1.0.81]# cp -r avatars/* /usr/share/skype/
[root@localhost skype_static-2.1.0.81]# cp -r lang/* /usr/share/skype/
[root@localhost skype_static-2.1.0.81]# cp -r sounds/* /usr/share/skype/

 

 

2.7.Skypeを起動

[root@localhost skype_static-2.1.0.81]# skype

または

[root@localhost ted]# skype

または

[root@localhost ted]# /user/bin/skype

 

 

2.8.ディスクトップに起動用ランチャを作成

デスクトップの何もない所を右クリック後、ランチャの作成 画面に所定事項を入力したら「なし」をクリックします。

次に アイコンを参照画面 アイコンファイルの場所 /usr/share/skype を指定し好みのアイコンを選びます。

ディスクトップに現れたSkypeアイコンのサイズ調整を行います。

 

 

2.9.音量コントロール

再生音量/マイクゲインの調整は

を参照ください。

 

↑このページの先頭に戻る
Flashプラグインのインストール
↑このページの先頭に戻る

 Webブラウザ FirefoxでFlashに対応したコンテンツ(YouTube等)を表示する場合は、フラッシュプレーヤープラグインをインストールする必要があります。プラグインを未インストール状態でFlashに対応したコンテンツにアクセスすると自動的にFlash Playerのインストールを促され、画面に従ってインストール作業を行っても「失敗」します・・・次の要領でプラグインのインストール作業をおこなって行きます。

1.フラッシュ プレーヤー プラグインのダウンロード
クリックで拡大

 

 アドビのダウンロードサイトで左下の▼で [その他Linux用.tra.gzファイル] [今すぐダウンロード] をクリックします。 

 

●本当にダウンロードしたファイルが保存されているか再確認

[root@localhost ted]# ls

Desktop install_flash_player_11_linux.i386.tar.gz                                          ←【注】バージョンによりファイル名が異なる 

 

2.ダウンロードファイルの解凍
解凍により libflashplayer.so を抽出します。

[root@localhost ted]# tar zxvf install_flash_player_11_linux.i386.tar.gz     ←【注】バージョンによりファイル名が異なる

libflashplayer.so
readme.txt

usr/
    :
usr/lib/kde4/kcm_adobe_flash_player.so

 

3.解凍されたファイル libflashplayer.so のコピー(手動インストール)
[root@localhost ted]# cp libflashplayer.so /usr/lib/mozilla/plugins/

 【注】CentOS 5にインストールされているFirefoxのバージョンによってコピー先ディレクトリが次の場合もあります
[root@localhost ted]# cp libflashplayer.so /usr/lib/mozilla/plugins-wrapped/

 

 

4.Firefoxのプラグインに登録されたことを確認
クリックで拡大

 

 WebブラウザFirefoxを起動し [Tools] [Add-ons] →  [Plugins] Shokwave Flash 11,2,202,359 が登録されていることを確認。

【注】もし1項でダウンロードした libflashplayer.so がプラグインに登録されない時はこれを3項の要領で手動インストールして下さい。

 

 

5.フラッシュ プレーヤー プラグインの動作確認
WebブラウザFirefoxを起動し YouTube にアクセスし、好みのコンテンツが正しく再生されるか確認します・・・

尚、音が出ない場合は音量コントロールを確認ください。

 

 

 

 

↑このページの先頭に戻る
Windowsから CentOSの共有ホルダーにアクセス

↑このページの先頭に戻る

 ネットワーク経由でWindowsからLinux上のファイルを読み書きできるようにするには、サーバーソフト Samba を使用します。 ここでは一例としてWebサーバーのhtmlソースファイルを格納してある /var/www/html ホルダーを共有ホルダー名 html としてWindows側からアクセスしてみます。(及び /work を共有ホルダー名2 work とする【注1】


1.sambaサーバーのインストール
1.1.サーバーのインストール
ソフトウエアパッケージの追加でインストール済み

[root@localhost ted]# yum -y install samba

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.jaist.ac.jp
* extras: ftp.jaist.ac.jp
* updates: ftp.jaist.ac.jp

    :
Installing : perl-Convert-ASN1 1/2
Installing : samba 2/2
Installed:
samba.i386 0:3.0.33-3.40.el5_10
Dependency Installed:
perl-Convert-ASN1.noarch 0:0.20-1.1
Complete!

 

(インストール済みの場合の端末応答)
=====================

    :
Setting up Install Process
Package samba-3.0.33-3.40.el5_10.i386 already installed and latest version
Nothing to do

 

1.2.サーバーへ ユーザーを(追加)登録
 Windows PCからCentOSへアクセスする場合、Windows側ファイルエクスプローラー等で入力を求められる ユーザー名、パスワードをsambaサーバーへ登録します

[root@localhost ted]# pdbedit -a ted                   ← ユーザー名 ted を登録(ted は固有名詞に付き要変更)

tdbsam_open: Converting version 0 database to version 3.

new password:(エコーバック無し)                    ← パスワードを入力する事
retype new password:(エコーバック無し)         ← パスワード再入力
Unix username: ted
NT username:
Account Flags: [U ]
User SID: S-1-5-21-217316920-4228852088-1719382892-1000
Primary Group SID: S-1-5-21-217316920-4228852088-1719382892-513
Full Name: fsrc
Home Directory: \\GX6024\ted
HomeDir Drive:
Logon Script:
Profile Path: \\GX6024\ted\profile
Domain: GX6024
Account desc:
Workstations:
Munged dial:
Logon time: 0
Logoff time: never
Kickoff time: never
Password last set: Fri, 09 May 2014 16:35:17 JST
Password can change: Fri, 09 May 2014 16:35:17 JST
Password must change: never
Last bad password : 0
Bad password count : 0
Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

 


2.smb.conf設定ファイルの編集

[root@localhost ted]# gedit /etc/samba/smb.conf

(↓ファイル内容)
# --------↓↓ここから↓↓----------------------------------------------------
# #####################################################
# gedit /etc/samba/smb.conf
#
# ゴチャゴチャしているので必要最小限の記叙にしました。
# この設定で、Windows8.1のファイル エクスプローラー
# からは次の2つの共有ホルダーにアクセス出来ます。
# \\GX6024\html     実ホルダー: /ver/www/html
# \\GX6024\work     実ホルダー: /work
# #####################################################

[global]
log file = /var/log/samba/%m.log
max log size = 50
cups options = raw
load printers = yes

# 共有コンピューター名
netbios name = GX6024
server string = Samba Server Version %v
# 共有するホルダー#1
path = /var/www/html
# ワークグループ
workgroup = TED_NET
# コメント
comment = CentOS

# ↓192.168.1.200 が httpd のIPなので 192.168.1. と記述
# 127.***.***.*** と 192.168.1.*** のアクセスを許可する。
hosts allow = 127. 192.168.1.
# 共有ホルダー名#1 html
security = html
passdb backend = tdbsam
# 文字コード設定
unix charset = UTF-8
display charset = UTF-8
dos charset = CP932



# 共有ホルダー名#1 html の定義項目
[html]
## 共有するホルダー#1
## path = /var/www/html
# 強制的に root ユーザーと見做す
force user = root
writeable = yes
public = yes
share modes = yes
create mode = 0777
guest only = yes
directory mode = 0777



# 共有ホルダー名#2 work の定義項目
[work]
# 共有するホルダー#2
path = /work
# 強制的に root ユーザーと見做す
force user = root
writeable = yes
public = yes
create mode = 0777
guest only = yes
# --------↑↑ここまで↑↑----------------------------------------------------

Go to ... smb.conf設定ファイル(例)

 

【注1】/work ホルダーは存在しないので新たに作成し、外部からの読書を可能とする為フルパーミッションを与える必要があります。

[root@localhost ted]# mkdir /work                   ←  /work ホルダーを新規作成

[root@localhost ted]#

chown -R ted /work       ←  /work ホルダー所有者を設定ted は固有名詞に付き要変更) [root@localhost ted]# chmod 777 /work          ←  フル パーミッション 777 を設定

 

 


3.sambaサーバーの起動
3.1.CentOS 5.7の場合

 ■sambaを起動

[root@localhost ted]# /etc/rc.d/init.d/smb start        ← sambaを起動

SMB サービスを起動中:  [ OK ]
NMB サービスを起動中: [ OK ]
        又は
[root@localhost ted]# service smb start
SMB サービスを起動中:[ OK ]
NMB サービスを起動中: [ OK ]

(その他コマンド)

[root@localhost ted]# /etc/rc.d/init.d/smb stop            ← sambaを停止

[root@localhost ted]# /etc/rc.d/init.d/smb restart        ← sambaを再起動

 

■sambaをスタートアップに登録

[root@localhost ted]# chkconfig smb on

 

 

3.2.CentOS 6.5の場合

■sambaを起動

[root@localhost ted]# /etc/rc.d/init.d/smb start

SMB サービスを起動中:[ OK ]

[root@localhost ted]# /etc/rc.d/init.d/nmb start
NMB サービスを起動中:[ OK ]
        又は
[root@localhost ted]# service smb start

SMB サービスを起動中: [ OK ]

[root@localhost ted]# service nmb start
NMB サービスを起動中: [ OK ]

 

■sambaをスタートアップに登録

[root@localhost ted]# chkconfig smb on

[root@localhost ted]# chkconfig nmb on

 

 

4.WindowsからCentOS共有ホルダーをアクセス
4.1.Windows側の操作

クリックで拡大 Windowsエクスプローラーから「ネットワーク」を見ると smb.confで設定した共有ホルダー GX6024 TED_NET - html が見えている筈です。

 netbios name=GX6024、workgroup=TED_NETsecurity=html

「ネットワーク資格情報の入力」欄には《1.2.サーバーへ ユーザーを(追加)登録》で登録したユーザー名とパスワードを入力します。

 

【ワンポイント】ファイヤーウオールの設定はOKですか?

【参考】セキュリティソフトが過敏すぎて相手PCを遮断している場合があります。一旦、セキュリティソフトを止めてネットワーク越しにアクセスできるか確認ください。

 

以上で Windowsエクスプローラーから共有ホルダー html 内の読み書きが可能となりました。

(これで おしまい)

 

5.【参考資料】CentOSへ GUI管理ツール Webminの導入・使い方

 2項でダウンロードしたsmb.conf.oldsnb.confにリネイムして設定ファイルに使用すると、Windowsエクスプローラーから読出しはOKだが書込みが出来ない?・・・Webminを使いこのトラブル対策をして行く…

Go to ...   これは参考資料です。

 

↑このページの先頭に戻る
CentOSから Windowsの共有ホルダーにアクセス
↑このページの先頭に戻る

 ネットワーク経由でWindowsパソコンの(共有設定済み)ホルダーへ CentOS からアクセスするには、その共有ホルダーのパーミッションが Everyone で全ての人に解放されているか、今からアクセスしようとしているCentOSのユーザーに解放されている必要があります。

クリックで拡大 (CenrOS-6での例)

 [場所]→[ネットワーク]→[Windowsネットワーク] で接続したいドメイン(TED_NET)を選び、接続したい Windows PC(GAZ77MX)をクリックします。パスワード確認画面では接続したいWindows PC(GAZ77MX)側のユーザー名、パスワードを入力します。目的PCに入り込んだら、そのPCで予め Everyoneパーミッションで共有設定されているホルダーにアクセスします(アクセスすることが出来ます)

 但し、CentOS 5.7からWindows 10/8.1パソコンにアクセスするには次に説明するよう、サインイン方式(ユーザー名)が「ローカルアカウント」方式になっている必要があります。

【参考】CentOS 5.7でWindows 8.1パソコンにアクセスしようとしてもWindows 8.1の仕様でユーザー名にマイクロソフトアカウントの使用が強制されていて myname@hotmail.com myname@live.jp のようにメールアドレス形式になっています。 CentOS 5.7はユーザー名欄がこの様なメール形式・書式に対応していない様で結局Windows 8.1に接続することが出来ません。(Windows 7/Vista およびマイクロソフトアカウントでのログインを使用していないWindows 8.0 はOK)

 

 na2014/4/9 から提供されたWindows 8.1 Update (KB 2919355)をインストール後 ローカルアカウントでのログインが復活していることに気付いたので早速マイクロソフトアカウントをやめ「ローカルアカウント」方式に戻した・・・結果、CentOS 5.7からWindows 8.1パソコンにもアクセス出来るようになりました。

 

【ワンポイント】ファイヤーウオールの設定はOKですか?

【参考】セキュリティソフトが過敏すぎて相手PCを遮断している場合があります。一旦、セキュリティソフトを止めてネットワーク越しにアクセスできるか確認ください。

 

 

↑このページの先頭に戻る
HTTPサーバーの設定
(これはマニア向け機能です)↑このページの先頭に戻る

 みなさんの中でも、ご自身又はご家族の方で「自前のホームページ」を開設されている方がいらっしゃると思います、これにはインターネットプロバイダーとの契約時に付いてくる「無料ホームページ」「FC2」「nazca」等の無料ホームページを利用していると思います。 只、無料ホームページでは利用できる容量が少ない、速度が遅い、広告が入ってしまう等の不満もあると思います。このような時、往年の Windows XPマシンを転用したリナックス(CentOS)マシンによる本格的な「自宅HTTP・FTPサーバー/自宅ホームページ」を開設することができます・・・これを24時間稼働しておけば本格的なホームページが完成です。

 

1.HTTPd(Web)サーバーのインストール
1.httpd(Apache)インストール
(ソフトウエアの更新でアップデートされているので特に必要なし)

[root@localhost ted]# yum -y install httpd

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.iij.ad.jp
* extras: ftp.iij.ad.jp
* updates: ftp.iij.ad.jp
Setting up Install Process
Package httpd-2.2.3-85.el5.centos.i386 already installed and latest version
Nothing to do

 

 

1.2.php、php-mbstringインストー

[root@localhost ted]# yum -y install php php-mbstring

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.riken.jp
     :
Dependency Installed:
php-cli.i386 0:5.1.6-44.el5_10 php-common.i386 0:5.1.6-44.el5_10
Complete!

 

 

2.HTTPdサーバーの設定
2.1.httpd.conf設定ファイルの編集

 [アプリケーション]→[アクセサリ]→[GNOMEテキスト・エディタ] gedit/etc/httpd/conf/httpd.conf ファイルを次のように編集します(行頭に # を記述するとその行はコメント扱いとなる)

 

[root@localhost ted]# gedit /etc/httpd/conf/httpd.conf

(↓主な編集箇所)
# ----------------------------始め キリトリ -----------------------------
# #####################################################
# gedit /etc/httpd/conf/httpd.conf
# #####################################################
# エラーページ等でOS名を表示しないようにする
# ServerTokens OS
ServerTokens Prod
# #####################################################

# #####################################################
# サーバの基点ディレクトリ
ServerRoot "/etc/httpd"
# #####################################################

# #####################################################
# リクエストを受け付けるポート番号
# Listen 12.34.56.78:80
Listen 80
# #####################################################

# #####################################################
# 連絡先メールアドレス 書式
# ServerAdmin root@localhost
ServerAdmin mycall@jarl.com
# #####################################################

# #####################################################
# 自宅サーバー名[:ポート番号] - 自分の自宅サーバーURLを記入する
# ServerName www.example.com:80
ServerName ja2gzz.mydns.jp:80
# #####################################################

# #####################################################
# WWWサーバとして公開するコンテンツの置場所
# 後方の <Directory "/var/www/html"> も併せて参照のこと。
DocumentRoot "/var/www/html"
# #####################################################

# #####################################################
# アクセス制限の記述(Order, Allow, Deny)
# <Directory />
#     Options FollowSymLinks
#     AllowOverride None
# </Directory>
#
<Directory />
    Order deny,allow
    Deny from all
    Satisfy all
< /Directory>
# #####################################################

# #####################################################
# --------↓↓ここから↓↓----------------------------------------------------
# 前方の DocumentRoot "/var/www/html" も併せて参照のこと
<Directory "/var/www/html">

# #######################################
# SSIの許可(コマンドExec含む)、CGIの許可、シンボリックリンク許可
# Options Indexes FollowSymLinks
Options Includes ExecCGI FollowSymLinks
# #######################################

# #######################################
# .htaccessの許可
# AllowOverride None
AllowOverride All
# #######################################
</Directory>
# --------↑↑ここまで↑↑-----------−---------------------------------------
# #####################################################

# #####################################################
# URLの最後が "/" でアクセスされた時の優先表示ファイル名(左から優先され表示される)
# DirectoryIndex index.html index.html.var
DirectoryIndex index.shtml index.html index.htm index.html index.cgi .var
# #####################################################

# #####################################################
# The following directives define some format nicknames for use with
# a CustomLog directive (see below).
# 長すぎるURI(414エラー)はログに記録しない
# LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%!414r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent

# "combinedio" includes actual counts of actual bytes received (%I) and sent (%O); this
# requires the mod_logio module to be loaded.
# LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
# #####################################################

# #####################################################
# For a single logfile with access, agent, and referer information
# (Combined Logfile Format), use the following directive:
# ログの記録内容変更
SetEnvIf Request_URI "default\.ida" no_log                ← 追加(wormからのアクセスをログに記録しない)
SetEnvIf Request_URI "cmd\.exe" no_log
                    ← 同上
SetEnvIf Request_URI "root\.exe" no_log
                    ← 同上
SetEnvIf Request_URI "Admin\.dll" no_log
                  ← 同上
SetEnvIf Request_URI "NULL\.IDA" no_log
                 ← 同上
SetEnvIf Remote_Addr 192.168.1 no_log   
                 ← 追加(内部からのアクセスをログに記録しない)
SetEnvIf Remote_Addr 127.0.0.1 no_log   
                  ← 追加(自ホストからのアクセスをログに記録しない)
CustomLog logs/access_log combined env=!no_log
    ← 上記以外のアクセスをログに記録する
# #####################################################

# #####################################################
# エラーページでサーバー情報を非表示
# ServerSignature On
ServerSignature Off
# #####################################################

# #####################################################
<Directory "/var/www/icons">
# iconsディレクトリのファイル一覧を表示しないようにする
        # Options Indexes MultiViews
        Options MultiViews
        AllowOverride None
        Order allow,deny
        Allow from all
< /Directory>
# #####################################################

#################################################
# ScriptAliasはAliasと同様に、外部のディレクトリを仮想的にドキュメントルート内
# に配置するディレクティブです。

# 但し "ScriptAlias" で指定されたディレクトリの中のファイルはすべて実行ファイル
# であると仮定され、実行可能ならば実行する、という振る舞いをする点が "Alias"
# ディレクティブと異なります。
#
# 例:"/var/www/html/cgi-bin/joyful.cgi" と言うCGI実行ファイルはブラウザ
#からは "http://ja2gzz.mydns.jp/cgi-bin/joyful.cgi" で実行できます。

#
#ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
#ScriptAlias /cgi-bin/ "/var/www/html/cgi-bin/"
#(↓この設定で Joyful掲示板が正常に動作 ???????????筆者理解不足?????????????)
ScriptAlias /joyful/ "/var/www/html/cgi-bin/"
#
# "/var/www/cgi-bin" should be changed to whatever your ScriptAliased
# CGI directory exists, if you have that configured.
#
#<Directory "/var/www/cgi-bin">
#<Directory "/var/www/html/cgi-bin">
#(↓この設定で Joyful掲示板が正常に動作 ???????????筆者理解不足?????????????)
<Directory "/var/www/html/joyful">
        AllowOverride None
        Options None
        Order allow,deny
        Allow from all
< /Directory>

# ################################################

# #####################################################
# 日本語文字化け対応
# AddDefaultCharset UTF-8
AddDefaultCharset off
# #####################################################

# #####################################################
# CGIスクリプトに.plを追加(CGI実行ファイルの指定)
# AddHandler cgi-script .cgi
AddHandler cgi-script .cgi .pl
# #####################################################
# ---------------------------- 終り キリトリ ----------------------------

Go to ...httpd.conf設定ファイル(例)

 


2.2.Perlコマンドへ /usr/local/bin/perl でもアクセスできるようにする。

[root@localhost ted]# ln -s /usr/bin/perl /usr/local/bin/perl           ←  /usr/local/bin/perlから/usr/bin/perlへリンクをはる

 

[root@localhost ted]# whereis perl                                                 ← Perlのパスを確認
perl: /usr/bin/perl /usr/local/bin/perl
/usr/share/man/man1/perl.1.gz    Perlのパスに/usr/local/bin/perlが表示されることを確認

 

3.HTTPdサーバー使用の前準備
3.1.ルーターの設定
  Webサーバーを外部に公開するには httpや ftp用ポートの穴あけ等 ルーターの設定が必要です。 又、外部から自前の WEBサーバーにアクセスして貰う為には そのサーバーの(ローカル)IPアドレス(例 )192.168.1.3 が変化することなく常に同じ値でなくてはいけません。

Go to ...(注)Windows PCでの説明文ですが CentOSでも同じ要領で設定します。

【補足】このルーター設定例ではDHCP自動割付IPアドレスが(例)192.168.1.10〜192.168.1.42 なので逆から言うと 192.168.1.1〜192.168.1.9 および 192.168.1.43〜192.168.1.253(192.168.1.254〜192.168.1.255を除く)の間は絶対にルーターに依って使われないアドレス範囲である・・・だから (例)192.168.1.3 (例)192.168.1.200 をHTTPサーバー用に割り当てる。

 

【注意】IPアドレスは一例を示す。現在筆者の自宅サーバーでは
IP:192.168.1.200 GW:192.168.1.254 を使用しています。

 

 

3.2.仮想 固定IP化DNSサーバー ドメイン名の取得
 外部から自前の WEBサーバーにアクセスして貰う為にはその(グローバル)IPアドレスが変化することなく常に同じ値(固定IPアドレス)でなくてはいけません。 しかし貴宅はインターネットプロバイダーと「動的IPアドレス」で契約していると思いますので仮想 固定IP化DNSサーバーのドメイン名を取得する必要があります。(例)

No-IP社のサーバーで ja2gzz とユーザー登録したので "http://ja2gzz.no-ip.org" "http://ja2gzz.mydns.jp" 等のドメイン名が使用できるようになりました.

Go to ...仮想 固定IP化DNSサーバー (注)Windows PCでの説明文ですが CentOSでも同じ要領で設定します。当然 Linux用のメンテナンスソフト Dynamic DNS Update Clientをダウンロードしましたね?

Go to ...DiCE for Linux ← 便利ツール

 

3.3.hostsファイルの編集
 以上でLANの外側(外部・インターネット)からアクセスする為の段取りが出来ましたが、まだ このままでは自宅内LAN環境(我が家の他のPC)からは(例)"http://192.168.1.200" でアクセス出来ても "http://mycall.sytes.net" の表現でアクセスできません。 /etc ディレクトリ−にある hosts ファイルを編集し自宅内のLAN環境からも "http://ja2gzz.mydns.jp" の表現でアクセス出来るようにします。

[root@localhost ted]# gedit /etc/hosts

(↓hostsファイルの内容:WebサーバーのローカルIPアドレスが(例)192.168.1.200 の場合)

# --------↓↓ここから↓↓----------------------------------------------------
# gedit /etc/hosts


# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6

192.168.1.200 ja2gzz.mydns.jp
# --------↑↑ここまで↑↑----------------------------------------------------

もし複数のドメイン名をお持ちの場合は複数行記述します。

【注】hostsファイルの内容を変更した時は次の要領で httpdの再起動 を行ってください。

[root@localhost ted]#

/etc/rc.d/init.d/httpd restart

クリックで拡大[システム]→[管理]→[ネットワーク]→[ホスト] に登録されていることを確認。

3.4.ネットワークの設定
 root権限でログインし、図の要領で [システム]→[管理]→[ネットワーク] を開き 自宅サーバーのローカルIPアドレス(例)192.168.1.200 を固定化します。
クリックで拡大クリックで拡大

 

【注意】本項の設定後コンピューターを再起動すると(初回のみ)[システム]→[管理]→[ネットワーク]→[DNS]→[1番目のDNS]  192.186.1.254 が消失している場合があるので要確認。

 

4.ホームページ用 htmlソースファイルの配置
 /var/www/html/
ホルダーにホームページ用 htmlソースファイルを格納済みですか? 同ホルダーが空だとHTTPdサーバーや FTPdサーバー(含む ffftp)が正常に動作しません。最低でも簡単に作った試験用 index.html を配置する必要があります。

[root@localhost ted]# ls /var/www/html/index.html

         index.html がある事を確認する
/var/www/html/index.html

試験用 index.html(新規作成例)
[root@localhost ted]# gedit /var/www/html/index.html

(↓ファイル内容)
<!-- --------↓↓ここから↓↓----------------------------------------------- -->
========= TEST =========<br>
The HOMEPAGE is working now<br>
======================<br>
<!-- --------↑↑ここまで↑↑----------------------------------------------- -->

 

5.HTTPdサーバー起動
5.1.HTTPdサーバー起動
[root@localhost ted]# /etc/rc.d/init.d/httpd start            ← httpd 起動
httpd を起動中: [ OK ]

(その他のコマンド)
[root@localhost ted]#
/etc/rc.d/init.d/httpd stop            ← httpd 停止
[root@localhost ted]# /etc/rc.d/init.d/httpd restart        ← httpd 再起動

 

起動に[失敗]する場合は、/etc/httpd/conf/httpd.conf ファイルの設定・記入にミス(文法エラー)があるので要再点検
(文法エラーを完全に取り除かない限り
起動[失敗]です

 

5.2.HTTPd自動起動設定
コンピューター立ち上げ時に httpd が自動起動するよう設定します。
[root@localhost ted]# chkconfig httpd on

 

5.3.外部からのHTTPdサーバーアクセス確認
知人・友人の家から Webサーバーにアクセスできるか確認します。但し、例1,2は不定期稼働です。

(例1)もし稼働していれば、この自宅HTTPサーバー にアクセスします。 JA2GZZ/index_j.html(日本語)

(例2)もし稼働していれば、この自宅HTTPサーバー にアクセスします。 JA2GZZ/index.html (英 語)

 

【ワンポイント】ファイヤーウオールの設定はOKですか?

 

 

 

↑このページの先頭に戻る
FTPサーバーの設定
(これはマニア向け機能です)
↑このページの先頭に戻る

 離れた場所にある他のパソコンから自宅サーバー上に構築したホームページのメンテナンスを行うにはFTP転送ソフト FFFTP等を使用しますが これは一般的なHTTPプロトコルでなくFTPプロトコルでアップデートファイルをWeb(HTTP)サーバーへアップロードします。 ftp://ja2gzz.mydns.jp

1.vsftpdサーバーのインストール
1.1.vsftpdインストールソフトウエアパッケージの追加でインストール済み

[root@localhost ted]# yum -y install vsftpd

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.iij.ad.jp
* extras: ftp.iij.ad.jp
* updates: ftp.iij.ad.jp
Setting up Install Process
Package vsftpd-2.0.5-28.el5.i386 already installed and latest version
Nothing to do
 

 

2.vsftpdサーバーの設定
2.1.vsftpd.conf設定ファイルの編集

 /etc/vsftpd ホルダーにある vsftpd.conf をエディターで開いて次の様に編集します(行頭に # を記述するとその行はコメント扱いとなる)

 

[root@localhost ted]# gedit /etc/vsftpd/vsftpd.conf

(↓主な編集内容)
# --------↓↓ここから↓↓----------------------------------------------------
# gedit /etc/vsftpd/vsftpd.conf
# ###############################################

# ###############################################
# 匿名ユーザはログインさせない
# anonymous_enable=YES

anonymous_enable=NO
# ###############################################

# ###############################################
# ログイン ユーザの初期ディレクトリを指定(追記)
local_root=/var/www/html
# ###############################################

# ###############################################
# vsftp 経由で作成したファイルのデフォルトパーミッションを指定(追記)
# 022だとパーミッションは644となりグループに対して書き込み権限がない
# 002だとパーミッションは664となりグループに対して書き込みを許可
# local_umask=022
# local_umask=002
# file_open_modeの値からlocal_umaskの値が引かれる 0777-0000=0777

local_umask=0000
file_open_mode=0777
# ###############################################

# ###################################################
# 接続時時のタイムアウトを設定
# idle_session_timeout=600

idle_session_timeout=300
# You may change the default value for timing out a data connection.
# 接続時時のタイムアウトを設定
#data_connection_timeout=120

data_connection_timeout=30
# #####################################################

# #####################################################
# アスキーモードでアップロード・ダウンロードを許可する
# ascii_upload_enable=YES
# ascii_download_enable=YES

ascii_upload_enable=YES
ascii_download_enable=YES
# #####################################################

# #####################################################
# ログオン時のバナー(必須ではありません、好みで記入)
#ftpd_banner=Welcome to blah FTP service.

ftpd_banner=Welcome to Ted's FTP service.
# #####################################################

# #####################################################


#### IF chroot_local_user=YES ####
    # local_root で指定してあるログイン ユーザの初期ディレクトリを、そのユーザのルート
    # ディレクトリに変更 (chroot)する。ユーザはログインディレクトリの外側にアクセスできなくなる。
    # 但し chroot_list_enable が YES の場合、chroot_list_file で指定したファイル
    # に記載されたユーザはその対象から除外される。
#### ELSE chroot_local_user=NO ####
    # ユーザはログイン ディレクトリの上部にも自由にアクセス可能。 (デフォルト)
    # 但し chroot_list_enable が YES の場合、chroot_list_file で指定したファイル
    # に記載されたユーザのルートディレクトリはログイン ディレクトリに変更 (chroot) される。

chroot_local_user=YES
#
# 一般ユーザはホームパスより上へアクセスさせない
#chroot_list_enable=YES

chroot_list_enable=YES
# ホームパスより上へアクセスさせないユーザリストファイル
# (default follows)
#chroot_list_file=/etc/vsftpd/chroot_list

chroot_list_file=/etc/vsftpd/chroot_list
# #####################################################

# #####################################################
# ディレクトリを削除可能にする
# ls_recurse_enable=YES

ls_recurse_enable=YES
# #####################################################

# #####################################################
# PAM認証のサービス名指定

pam_service_name=vsftpd
#
# [userlist_enable]の設定により、ファイル[/etc/vsftpd/user_list]内の
# ユーザ接続方法が異なります。但し、userlist_enable=YES(初期値)の場合:
# YES:
/etc/vsftpd/user_list ファイル 内に指定されたユーザは拒否される
# NO: /etc/vsftpd/user_list 内の指定ユーザに関わらず接続が許可される

userlist_deny=YES
userlist_enable=YES               
 /etc/vsftpd/user_list「接続拒否者のみ」に編集する必要があります。
#
# tcp_wrappersを使用する

tcp_wrappers=YES
#
# これ以降は任意で追加
# ユーザが打ち込んだftpコマンドをログに残す(下記2つ)

xferlog_std_format=NO
log_ftp_protocol=YES

#
# タイムスタンプ時間を日本時間に合わせる

use_localtime=YES
#
# パッシブモードを利用にする(要、ポート、ファイヤーウオールの穴あけ)
pasv_promiscuous=YES
# パッシブモード利用時のポート範囲(例:60000〜60030)
pasv_min_port=60000
pasv_max_port=60030

# ##################

pasv_addr_resolve=YES
pasv_address=ja2gzz.mydns.jp

#

#### ssl_enable=YES はハングアップ 500 OOPS:
ssl_enable=NO

rsa_cert_file=/etc/pki/tls/certs/vsftpd.pem
force_local_logins_ssl=NO
force_local_data_ssl=NO

# #####################################################
# --------↑↑ここまで↑↑----------------------------------------------------

Go to ...vsftpd設定ファイル(例)

 

 

2.2.FTP接続ユーザ設定

ホームパスより上へアクセスさせないユーザ一覧

このファイルは当初存在しないので新規作成となります。

[root@localhost ted]# gedit /etc/vsftpd/chroot_list

(↓ファイル内容)

# --------↓↓ここから↓↓----------------------------------------------------

# gedit /etc/vsftpd/chroot_list
# 管理者や自身のホームディレクトリ以外へアクセス可能とするユーザのみ登録しておく(なし)

#

# --------↑↑ここまで↑↑----------------------------------------------------

FTP接続させないユーザ一覧

 userlist_enable=YES(初期値)の場合は /etc/vsftpd/user_list 内に指定されたユーザーは接続拒否される。

【注意】標準の user_list には色々記入されていますが全て削除し この様に#コメントのみで実質未記入に等しい)に書き替えます・・・指定されたユーザーは全て接続拒否されます!

[root@localhost ted]# gedit /etc/vsftpd/user_list

(↓ファイル内容)

# --------↓↓ここから↓↓----------------------------------------------------

# gedit /etc/vsftpd/user_list
# FTP接続させないユーザー(なし)

#

# --------↑↑ここまで↑↑----------------------------------------------------

 

 

 

2.3.FTP接続できるクライアントの制限(セキュリティ強化)

FTPログインできるクライアントを設定(tcp_wrappers)

[root@localhost ted]# gedit /etc/hosts.allow

(↓ファイル内容)

# --------↓↓ここから↓↓----------------------------------------------------

# gedit /etc/hosts.allow
#
# hosts.allow This file describes the names of the hosts which are
# allowed to use the local INET services, as decided
# by the '/usr/sbin/tcpd' server.
# FTPログインできるクライアントを設定

# ↓192.168.1.200 が httpd のIPなので 192.168.1. と記述
vsftpd : 127.0.0.1 192.168.1. ja2gzz.mydns.jp

# --------↑↑ここまで↑↑----------------------------------------------------

 

/etc/hosts.allow で指定されたクライアント以外は全て拒否

[root@localhost ted]# gedit /etc/hosts.deny

(↓ファイル内容)

# --------↓↓ここから↓↓----------------------------------------------------

# gedit /etc/hosts.deny
#
# hosts.deny This file describes the names of the hosts which are
# *not* allowed to use the local INET services, as decided
# by the '/usr/sbin/tcpd' server.
#
# The portmap line is redundant, but it is left to remind you that
# the new secure portmap uses hosts.deny and hosts.allow. In particular
# you should know that NFS uses portmap!

# /etc/hosts.allow で指定されたクライアント以外は全て拒否
vsftpd : ALL

# --------↑↑ここまで↑↑----------------------------------------------------

 

 

 

3.vsftpdサーバー使用の前準備

3.1.HTTP用ポート及びFTP用ポートの開放

既にhttpサーバーで設定済みと思いますが、 自宅サーバーとして使うPC(例)192.168.1.3 のみ外部WAN側からアクセス出来るようルーターのポート解放を行います。

クリックで拡大クリックで拡大 L

ANの外側(外部・インターネット)から内側へアクセスさせたい場合は明示的にそのアクセスを設定する必要があります。自宅サーバーを設置したPC例)192.168.1.3 のみ インターネットからのアクセスに対し HTTPポート及び FTPポートを解放して そのアクセスを受け入れられるようにします。【注意】この図を参考に vsftpd PASVモード用に TCPポート 60000-60030 の穴あけも追加で行う必要があります pasv_min_port=60000
   
pasv_max_port=60030

クリックで拡大  Webサーバー設定とFTPサーバー設定:例 192.168.1.3 公開するにチェックを入れます。


【注意】IPアドレスは一例を示す。現在筆者の自宅サーバーでは
IP:192.168.1.200 GW:192.168.1.254 を使用しています。

 

 

【ワンポイント】ファイヤーウオールの設定はOKですか?
クリックで拡大 vsfptd をインストールしたPCに root権限でログインして [システム]→[管理]→[セキュリティレベルとファイヤーウオールの設定] を開き vsftpd PASVモード用にファイヤーウオールの穴あけ TCP 60000-60030 を行う。
    pasv_min_port=60000
   
pasv_max_port=60030
 

 

3.2.ホームページ用 htmlソースファイルの配置

 /var/www/html/ ホルダーにホームページ用 htmlソースファイルを格納済みですか? 同ホルダーが空だとHTTPdサーバーや FTPdサーバー(含む ffftp)が正常に動作しません。最低でも簡単に作った 試験用 index.html を配置する必要があります。

[root@localhost ted]# ls /var/www/html/index.html        index.html がある事を確認する
/var/www/html/index.html

 

3.3.vsftpサーバーの起動

[root@localhost ted]# /etc/rc.d/init.d/vsftpd start          vsftpdを起動
vsftpd 用の vsftpd を起動中: [ OK ]

 

(その他コマンド)

[root@localhost ted]# /etc/rc.d/init.d/vsftpd stop           vsftpdを停止

[root@localhost ted]# /etc/rc.d/init.d/vsftpd restart      vsftpdを再起動  

 

3.4.vsftpサーバーの自動起動設定

[root@localhost ted]# chkconfig vsftpd on                        ← vsftpdを自動起動に設定

[root@localhost ted]# chkconfig --list vsftpd                    ← vsftpdの自動起動設定確認
vsftpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off                    ← ランレベル2〜5のon確認

 

4.vsftpdサーバーへのアクセス時のユーザー名とパスワード

  外部から このサーバーへFTPアクセス時の【ユーザー名】【パスワード】は暗黙に CentOS インストール時のユーザー名とパスワードが採用されます。

クリックで拡大IEでのアクセス例: ftp://ja2gzz.mydns.jp        ← その後 現れた画面にユーザー名パスワードを入力する

 

 

 

↑このページの先頭に戻る
CGI掲示板の設置
(これはマニア向け機能です)
↑このページの先頭に戻る

 画像などのバイナリファイルを添付可能な、返信式掲示板 Joyful Note を自宅サーバー内
HPへ設置します。

 

0.前提条件
 掲示板を設置するには予め 自宅サーバー内の ホームページ及び FTPサーバーが正しく稼働している必要があります。尚、FFFTPと(掲示板を設置予定のパソコンと別の)Windows パソコンで掲示板設置の前準備を行います。

 

 

1.Joyful Noteのダウンロード及び圧縮ファイルの解凍
 IE等で Joyful Note のサイトに入って Joyful Noteプログラムをダウンロードします。ダウンロードが完了したら joyful.zip ファイルを解凍すると新たに生成された joyful ホルダーに掲示板プログラムが格納されています。

 

 

2.自宅サーバー掲示板用ホルダー名 cgi-bin に名前を変更
Windowsのファイルエクスプローラー等で、前項で生成された joyful ホルダーの名前を cgi-bin に変更します。

(1項で解凍・生成された joyful ホルダーの全内容を

cgi-bin ホルダーに格納)

[ホルダー構成]

cgi-bin/                       ([xxx] はパーミッション値を示す)
     |
    +-- joyful.cgi     [755] ... 掲示板プログラム本体
    +-- regist.cgi     [755] ... スパム対策で改造予定(4項 init.cgiの設定変更 - regist.cgiの改造 参照)
    +-- admin.cgi    [755] ... 管理画面
    +-- captcha.cgi  [755]
    +-- check.cgi     [755] ... 掲示板チェックプログラム
    +-- init.cgi         [644] ... 基本設定ファイル
    +-- style.css
 
    |
    +-- lib / *.pm
     |       |   *.pl
     |       |
 
    |      +-- Jcode / *.*
 
    |      +-- GD / *.*
 
    |      +-- Crypt / *.*
     |      +-- bin / *.*
     |
    +-- data / log.cgi          [666] ... 投稿コメント(掲示板の内容)
 
    |           |  count.dat      [666]
 
    |           |  pastno.dat    [666]
     |           |
 
    |           +- past [777] / 0001.cgi [666]
 
    |
 
    +-- img [777] /                     ... 投稿された画像(掲示板の画像)が保管されている
     |
    +-- icon / *.gif
 
    |
    +-- tmpl / *.html

 

 

 

3.Joyful Noteファイルにパーミッション設定
  (すべて正しく設定しないと掲示板が動作しません!)

前項記載の[ホルダー構成]のように各ファイルのパーミッションをFFFTP等でリモート側から設定します。

3.1.FFFTPの設定


クリックで拡大

 前項記載の[ホルダー構成]に示す各ファイルの [パーミッション] を左図のようにFFFTPにプリセット・設定します。(10ファイル、ホルダーは全て 777)

クリックで拡大

 FFFTPのキャッシュ機能が有効になっているとキャッシュに騙されることがあるのでこれを無効にします。続いて現時点でのキャッシュをクリアーする為、FFFTPを再起動します。

 

3.2.FFFTPでリモートからパーミッション設定&アップロード
(事前にWindowsパソコンのメモ帳・ワードパッド等で4項 init.cgi の設定変更 を済ませて置くと良いでしょう)

 (cgi-bin ホルダーを自宅サーバー用HPの保管場所 index.htmlと同じ保管場所に配置したら)FFFTPを起動し掲示板をインストールしたい自宅サーバーのHPと接続します。続いて cgi-bin ホルダーをHPへアップロードすると、FFFTPにプリセットされた属性(パーミッション)で掲示板用各ファイル群が自宅サーバー側へ転送されます。

[自宅サーバー側でのホルダー構成]

 FFFTPでアップロードしたファイルは自宅サーバーの /var/www/html/cgi-bin ホルダーに格納されている筈です。

/var / www / html /
     |
    +-- index.html  *.htm(WEBソース ファイル類の格納場所)
    |
    +--cgi-bin / Joyful Note 掲示板用各ファイル群(FFFTPでアップロード)

 

 

 

3.3.もし前項で上手くいかなかった場合のお試し
 前3.2項の作業で掲示板が上手く動作しない場合は、既にFFFTPでアップロードしてある cgi-bin をホルダーごと削除し、代わりに下記 cgi-bin(例)ファイルをダウンロードし、圧縮・解凍で生成された cgi-bin ホルダーをFFFTPでアップロードし、これで掲示板が正しく動作するか確認します・・・

Go to ... cgi-bin ファイル(例)

 

 

3.4.別の方法でパーミッションの設定を試す
 パーミッション設定で苦慮(未解明)しています。上記の方法で上手く設置できなかった場合は次の方法で追試下さい・・・

Go to ...Joyful Note

 

 

 

(以下、 自宅サーバー側に戻って操作する)

4./var/www/html/cgi-bin/init.cgi の設定変更
3.2項
で修正が済んでいないなら以下の要領で設定変更を行います。

[root@localhost ted]# gedit /var/www/html/cgi-bin/init.cgi

(↓主な設定変更箇所)
# --------↓↓ここから↓↓----------------------------------------------------


# gedit /var/www/html/cgi-bin/init.cgi
# モジュール宣言/変数初期化
use strict;
my %cf;
#┌─────────────────────────────────
#│ JOYFUL NOTE : init.cgi - 2014/01/05
#│ Copyright (c) KentWeb
#│ http://www.kent-web.com/
#└─────────────────────────────────
$cf{version} = 'JoyfulNote v5.2';
#=============================================
# ■ 設定項目
#=============================================
# 管理者用パスワード
$cf{password} = '0123';

# サムネイル画像を作成する(要:Image::Magick)
# → 縮小画像を自動生成し、画像記事の表示速度を軽くする機能
# 0=no 1=yes
$cf{thumbnail} = 0;

# 掲示板タイトル
$cf{bbs_title} = "掲示板";

# アップロードファイル管理者チェック機能 (0=no 1=yes)
# → アップロードファイルは管理者がチェック後表示
$cf{img_check} = 0;

# 最大記事数 (親記事+レス記事も含めた数)
$cf{max} = 50;
# ##########################################

# ##########################################
# テンプレートディレクトリ【サーバパス】
$cf{tmpldir} = './tmpl';

# 戻り先のURL【URLパス】
$cf{homepage} = "../index.html";
#$cf{homepage} = "http://ja2gzz.mydns.jp/index.html";


# 文字コード自動判別(0=no 1=yes)
# → フォーム入力の文字コード判別を行う場合
$cf{conv_code} = 0;

# 記事 [タイトル] 部の長さ (全角文字換算)
$cf{sub_len} = 15;

# 同一IPアドレスからの連続投稿時間(秒数)
# → 値を 0 にするとこの機能は無効になります
$cf{wait} = 60;

# 1画面当たりの記事表示数 (親記事基準)
# → 順に、スレッド表示、トピック表示、アルバム表示
$cf{max_thread} = 5;
$cf{max_topics} = 10;
$cf{max_albums} = 10;
# ####### 以下省略 #############################
# --------↑↑ここまで↑↑----------------------------------------------------

 


↑このページの先頭に戻る
 怪しげなブランド品広告スパムの投稿を排除する

↑このページの先頭に戻る

@ まずメール通知機能と禁止ワードを設定
A それ以外は状況に応じてオン設定

[root@localhost ted]# gedit /var/www/html/cgi-bin/init.cgi

(↓スパム対策
# --------↓↓ここから↓↓----------------------------------------------------


# ##########################################
# アップロードファイル管理者チェック機能 (0=no 1=yes)
# → アップロードファイルは管理者がチェック後表示(必要に応じて y/n)
$cf{img_check} = 0;
# ##########################################

#
自動通知されるメール(例)メール通知機能を有効にし、新規投稿された内容が不適切でないか目視確認します。
# → 0=no 1=yes
$cf{mailing} = 1;
# メール通知先アドレス(メール通知する場合)
$cf{mailto} = 'mycall@jarl.com';
# sendmailのパス(メール通知する場合)
$cf{sendmail} = '/usr/lib/sendmail';
# sendmailの -fコマンドが必要な場合
# 0=no 1=yes
$cf{sendm_f} = 0;
# ##########################################

# ##########################################
# アクセス制限(半角スペースで区切る、アスタリスク可)
# → 拒否ホスト名を記述(後方一致)【例】*.anonymizer.com
$cf{deny_host} = '';
# → 拒否IPアドレスを記述(前方一致)【例】210.12.345.*
$cf{deny_addr} = '';
#

投稿コメント中に「禁止ワード」が検知されると、このエラーメッセージが出て投稿を拒否する禁止ワードを設定し不適切な投稿を排除します。
# → 投稿時禁止するワードをコンマで区切る(例)
$cf{no_wd} = 'ロレックス,激安,期間限定,腕時計,最高級,特別価格,www.spam.com';
# 日本語チェック(投稿時日本語が含まれていなければ拒否する)
# 0=No 1=Yes
$cf{jp_wd} = 1;

# 怪しげな広告は投稿コメント中にURLを記述し自己HPへリンクを張りたい訳だがこれを禁止
# URL個数チェック *************** スパム対策 *****************
# 標準では URL個数の最小値は 10は無効(指定禁止)なので regist.cgi を改造します。
# # gedit /var/www/html/cgi-bin/regist.cgi
# ##if ($cf{urlnum} > 0) { urlnum(); }       ← ">" を ">=" に変更すれば 0も受付る
#     if ($cf{urlnum} >= 0) { urlnum(); }     ← ">=" に変更
#
# → 投稿コメント中に含まれるURL個数の最大値(要 regist.cgi 改造
$cf{urlnum} = 0;
# ##############################################
# --------↑↑ここまで↑↑----------------------------------------------------

$cf{urlnum} = 0; で投稿コメント中に URLが含まれると、このエラーメッセージが出て投稿を拒否するよう改造標準では上記 URL個数チェックの最小値は 1 0は無効(指定禁止)なので スパム対策の為 0も指定できるよう regist.cgi を改造します。改造後 $cf{urlnum} = 0; を指定すると、投稿コメント中の URL記述を検知すれば図の様なエラーメッセージが出て投稿を拒否します。 従って怪しげな広告主は自分のHPへリンクを張れず、リンク記載の無い投稿では広告として意味のない物となってしまいます (^_^;

[root@localhost ted]# gedit /var/www/html/cgi-bin/regist.cgi
(↓URL個数チェック $cf{urlnum} = 0; も受付る様に改造)

# --------↓↓ここから↓↓----------------------------------------------------

# ###########################################
# チェック
if ($cf{no_wd}) { no_wd(); }
if ($cf{jp_wd}) { jp_wd(); }
## if ($cf{urlnum} > 0) { urlnum(); }      ← ">" を ">=" に変更すれば 0も受付る
if ($cf{urlnum} >= 0) { urlnum(); }
# ###########################################
# --------↑↑ここまで↑↑----------------------------------------------------

 

2014/8/17 「参照URL」欄への記述を禁止するよう改造「参照URL」欄への記述を禁止するよう改造上記の対策方法で、投稿コメント中へのURL記述を禁止してあったが 、今度は「参照URL」欄を広告スパムへのリンクとして流用する輩が現れたので「参照URL」欄への記述を禁止し広告スパムに悪用されない様 regist.cgi を改造します。

[root@localhost ted]# gedit /var/www/html/cgi-bin/regist.cgi

(↓「参照URL」欄への記述を禁止する様に改造)

# --------↓↓ここから↓↓----------------------------------------------------
# ###########################################
#-----------------------------------------------------------
# フォーム入力チェック(下方参照)
#-----------------------------------------------------------
sub form_check {
# 不要改行カット
$in{sub} =~ s/<br>//g;
$in{name} =~ s/<br>//g;
$in{pwd} =~ s/<br>//g;
$in{captcha} =~ s/<br>//g;
$in{color} =~ s/<br>//g;
$in{comment} =~ s/(<br>)+$//g;

# コード変換
if ($cf{conv_code} == 1) {
$in{name} = Jcode->new($in{name})->sjis;
$in{sub} = Jcode->new($in{sub})->sjis;
$in{comment} = Jcode->new($in{comment})->sjis;
}

# チェック
if ($cf{no_wd}) { no_wd(); }
if ($cf{jp_wd}) { jp_wd(); }
if ($cf{urlnum} >= 0) { urlnum(); }

# 入力値調整
if ($in{url} eq 'http://') { $in{url} = ''; }
$in{sub} ||= "無題";

# 入力項目チェック
my $err;
if (length($in{sub}) > $cf{sub_len}*2) {
        $err .= "タイトル名は全角$cf{sub_len}文字以内です<br>";
}
if ($in{name} eq "") { $err .= "名前が入力されていません<br>"; }
if ($in{comment} eq "") { $err .= "コメントが入力されていません<br>"; }
if ($in{email} ne '' && $in{email} !~ /^[\w\.\-]+\@[\w\.\-]+\.[a-zA-Z]{2,6}$/) {
        $err .= "Eメールの入力内容が不正です<br>";
}

#「参照URL」欄への記述を禁止する様に改造
# if ($in{url} ne '' && $in{url} !~ /^https?:\/\/[\w-.!~*'();\/?:\@&=+\$,%#]+$/) {      でコメント扱い
#         $err .= "URL情報が不正です<br>";
           でコメント扱い
if ($in{url} ne '') {
            $err .= "参照URL欄は使用禁止です<br>";

}
error($err) if ($err);
}
# ###########################################
# --------↑↑ここまで↑↑----------------------------------------------------

 

 

5.Perlへのパス指定(/usr/local/bin/perl)
■ parlのパス名(置かれている場所)を確認します。
[root@localhost ted]# ls /usr/local/bin/perl/usr/local/bin/perl  ← perlファイル有
ls: /usr/local/bin/perl: そのようなファイルやディレクトリはありません   ← perlファイル無
    (または)
[root@localhost ted]#
ls /usr/bin/perl/usr/bin/perl      ← perlファイル有
ls: /usr/bin/perl: そのようなファイルやディレクトリはありません       ← perlファイル無
   (または)
ファイル・ブラウザで perl の場所を探します

 

■ cgiファイルへPerlへのパスの設定
 前項でPerlへのパス名(例)/usr/local/bin/perl が判明したら次の要領で cgiファイルへ設定します。

joyful.cgi の文頭にPerlへのパスが #!/usr/local/bin/perl と記述されています。当例では確認したパス名と同じですが必要なら任意のパス名に変更します。

[root@localhost ted]# gedit /var/www/html/cgi-bin/joyful.cgi
# -----------------------------------------------------------------------------
#!/usr/local/bin/perl
#┌─────────────────────────────────
#│ JOYFUL NOTE : joyful.cgi - 2014/01/05
#│ Copyright (c) KentWeb
#│ http://www.kent-web.com
#└─────────────────────────────────
# -----------------------------------------------------------------------------

 

■ cgiファイルへPerlへのパスの設定2
 以下、同じ要領で regist.cgi, admin.cgi, check.cgi, captcha.cgi の文頭にPerlへのパスが #!/usr/local/bin/perl と記述されています。当例では確認したパス名と同じですが必要なら任意のパス名に変更します。

[root@localhost ted]# gedit /var/www/html/cgi-bin/regist.cgi
[root@localhost ted]# gedit /var/www/html/cgi-bin/admin.cgi
[root@localhost ted]# gedit /var/www/html/cgi-bin/check.cgi
[root@localhost ted]# gedit /var/www/html/cgi-bin/captcha.cgi

 

 

6.htmlファイル内へ 掲示板 Joyful Note を記述・設置(例)

例1: bin/joyful.cgi(常時稼働)

例2: http://ja2gzz.mydns.jp/cgi-bin/joyful.cgi(不定期稼働)

 

 

【参考】どうしても掲示板が動作しない場合は httpd.confファイル内の ScriptAlias を再確認し、パーミッションを再設定ください。

[root@localhost ted]# gedit /etc/httpd/conf/httpd.conf
[root@localhost ted]# /etc/rc.d/init.d/httpd restart            ← httpd 再起動

 

↑このページの先頭に戻る
メールサーバー Postfix+Dovecot の設定
(これはマニア向け機能です)
↑このページの先頭に戻る

 自宅サーバーでメールサーバーを構築すると、メールアドレスが無限に発行できるようになります。 更にメールアドレスは完全に自由、@以後はドメインになるので自分で複数のメールアドレスを使い分けたり、家族や親戚、友人にメールアカウントをプレゼントすることもできます。 (例)ted ja2gzz.sytse.net

↑このページの先頭に戻る外部リンクへ迂回下さい・・・

 

 

 

↑このページの先頭に戻る
時刻サーバーNTPd の設定
↑このページの先頭に戻る

 TCP/IPネットワークを通じて正しい現在時刻を取得するためのプロトコルの一つでコンピュータの内部時計の時刻を正しく調整するためにネットワーク上で時刻情報を配信しているサーバーに問合せる手順をいいます。

Go to ...別項:時刻サーバー

 

↑このページの先頭に戻る
その他

↑このページの先頭に戻る

ホスト名の変更方法
[アプリケーション]→[アクセサリ]→[GNOME端末] を起動すると次のようなコマンドプロムプトが表示されます。

[root@localhost ~]#
クリックで拡大

 
この localhost を例えば GX280 に変更してみます。

 root権限でログインし [システム]→[管理]→[ネットワーク] DNSタグ を開きます。
 中程の ホスト名 localhost.localdomain GX280.localdomain と書き換えます。

[root@GX280 ~]#

コンピューターのユーザー名とグループ(例)
クリックで拡大

 [システム]→[管理]→[ユーザーとグループ]

外部参考リンク

● Linuxコマンド集

● yum パッケージを取得してインストール/アップデートをする

● RPM パッケージをインストールする

● 関連パッケージをインストール・アンインストールする方法

● Linuxにソフトウェアをインストールする際にやってしまいがちな失敗10選

CentOSで自宅サーバー構築

GUI管理ツール Webmin

 

↑このページの先頭に戻る