sshの使用ポート変更

sshの使用ポートは22で、そのまま使用しても使えるけど、
固定IP持ってるせいなのか、logwatchにやたら不正接続のログが出る。
パスワードをハックされている訳では無いので、一応は大丈夫なのだが
デフォルトポート番号は変更した方がいい。

SSHの使用ポート変更

[mofmofh@host ~]$ sudo vi /etc/ssh/sshd_config
#Port 22

Port 使用ポート番号

サービスポートの変更

[mofmofh@host ~]$ sudo vi /etc/services
#ssh 22/tcp # SSH Remote Login Protocol←コメントアウト
#ssh 22/udp # SSH Remote Login Protocol←コメントアウト
ssh 変更ポート番号/tcp # SSH Remote Login Protocol
ssh 変更ポート番号/udp # SSH Remote Login Protocol

sshdの再起動を行うが、iptableを切るか、設定を変更しないと、他PCから(teraterm等)接続が出来なくなる可能性があるので注意が必要。

Firewall(iptables)の設定

onamae.com で.infoドメインが期間限定で1年間10円!

DNSやテストメールサーバーにする事も考えて、ドメイン取っちゃいました。
ずっと380円だったのが、キャンペーンとは言え10円はかなりお得。

外部に公開するポートの制限をかけたいので、iptablesの編集。

ポリシーとしては

  • LANからの接続は全て許可
  • 外部に公開するのはひとまずweb、mail、dns
  • 商用目的でもないので、日本のIP以外からの接続は拒否

全てを全部書くと結構な時間がかかるので、centossrv.comを参考に
ファイアウォール構築(iptables) - CentOSで自宅サーバー構築

このシェルは凄い!作成した後でリストを見ると圧巻です。

作成後にwindows等からteratermやらで接続確認を忘れずに。



いやー、しかし、10円でドメインが取れるとは思わなかったww

Sambaサーバーの構築

iptablesでポート解放を制限したので、sambaサーバーの構築。
LAN内にはWindowsLinuxMACがあるのでItunesやら、画像の保存の為に必要

[mofmofh@host ~]sudo yum -y install samba

[mofmofh@host ~]sudo vi /etc/samba/smb.conf
[global]
unix charset = UTF-8
dos charset = CP932
display charset = UTF-8
force user = デフォルトユーザー名

# Hosts Allow/Hosts Deny lets you restrict who can connect, and you can
# specifiy it as a per share option as well
#
workgroup = WORKGROUP

hosts allow = 127. 192.168.1.

security = share
iptablesで制限をかけているので、社内のセキュリティはゆるくしている


[public]
comment = mofh server
path = 共有させるパス
public = yes
writable = yes
後はゴミ箱の設定をごにょごにょっと

LAN内からしか接続させないので、基本設定しかしていない。
あとは起動すればOK。これでitunesの音楽データと画像データが共有出来る。

yumリポジトリの追加

CentOSリポジトリだけだと、yumでインストール出来るものが限られてしまうので
rikenからdagのリポジトリを追加する。

fedorecoreとredhat用を追加

[root@host ~]# vi /etc/yum.repos.d/CentOS-Base.repo
[dag]
name=Dag RPM Repository for Fedora Core
baseurl=http://ftp.riken.jp/Linux/dag/fedora/$releasever/en/$basearch/dries/
gpgcheck=1
enabled=0

[dag]
name=Dag RPM Repository for Red Hat EnterPrise Linux
baseurl=http://ftp.riken.jp/Linux/dag/redhat/el$releasever/en/$basearch/dag/
gpgcheck=1
enabled=0

DAGのキーをimport

[root@host ~]# wget http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt
[root@host ~]# rpm --import RPM-GPG-KEY.dag.txt

Tracインストール1

入門Trac第2版Linux/Windows対応

入門Trac第2版Linux/Windows対応

以前の会社でSubversionまでは構築したけど、Tracはやってなかったので、この機会にという事で買ってみた。

Linux環境へのインストールの中にFedora系が入っていないのは何故?
Gentooってそんなに使う人多いのだろうか?(偏見かもしれないが)

Ubuntuが入っているのはまぁ、最近の傾向で仕方がないと思うけど、、、、、、


まずは、apachephpのインストール

[root@host ~]# yum -y install httpd

現在PHPで入っているものを調べると

[root@host ~]# yum list | grep php
php.i386 5.1.6-23.2.el5_3 updates
php-bcmath.i386 5.1.6-23.2.el5_3 updates
php-cli.i386 5.1.6-23.2.el5_3 updates
php-common.i386 5.1.6-23.2.el5_3 updates
php-dba.i386 5.1.6-23.2.el5_3 updates
php-dbase.i386 5.1.6-15.el5.centos.1 extras
php-devel.i386 5.1.6-23.2.el5_3 updates
php-gd.i386 5.1.6-23.2.el5_3 updates
php-imap.i386 5.1.6-23.2.el5_3 updates
php-ldap.i386 5.1.6-23.2.el5_3 updates
php-mbstring.i386 5.1.6-23.2.el5_3 updates
php-mcrypt.i386 5.1.6-15.el5.centos.1 extras
php-mhash.i386 5.1.6-15.el5.centos.1 extras
php-mssql.i386 5.1.6-15.el5.centos.1 extras
php-mysql.i386 5.1.6-23.2.el5_3 updates
php-ncurses.i386 5.1.6-23.2.el5_3 updates
php-odbc.i386 5.1.6-23.2.el5_3 updates
php-pdo.i386 5.1.6-23.2.el5_3 updates
php-pear.noarch 1:1.4.9-4.el5.1 base
php-pear-Auth-SASL.noarch 1.0.2-4.el5.centos extras
php-pear-DB.noarch 1.7.13-1.el5.centos extras
php-pear-Date.noarch 1.4.7-2.el5.centos extras
php-pear-File.noarch 1.2.2-1.el5.centos extras
php-pear-HTTP-Request.noarch 1.4.2-1.el5.centos extras
php-pear-Log.noarch 1.9.13-1.el5.centos extras
php-pear-MDB2.noarch 2.4.1-2.el5.centos extras
php-pear-MDB2-Driver-mysql.noarch 1.4.1-3.el5.centos extras
php-pear-Mail.noarch 1.1.14-1.el5.centos extras
php-pear-Mail-Mime.noarch 1.4.0-1.el5.centos extras
php-pear-Net-SMTP.noarch 1.2.10-1.el5.centos extras
php-pear-Net-Sieve.noarch 1.1.5-2.el5.centos extras
php-pear-Net-Socket.noarch 1.0.8-1.el5.centos extras
php-pear-Net-URL.noarch 1.0.15-1.el5.centos extras
php-pecl-Fileinfo.i386 1.0.4-3.el5.centos extras
php-pecl-memcache.i386 2.2.3-1.el5_2 extras
php-pgsql.i386 5.1.6-23.2.el5_3 updates
php-readline.i386 5.1.6-15.el5.centos.1 extras
php-snmp.i386 5.1.6-23.2.el5_3 updates
php-soap.i386 5.1.6-23.2.el5_3 updates
php-tidy.i386 5.1.6-15.el5.centos.1 extras
php-xml.i386 5.1.6-23.2.el5_3 updates
php-xmlrpc.i386 5.1.6-23.2.el5_3 updates

ほとんどが用意されている。昔mcryptとかソースからインストールしたよなーーーーと思いつつ

[root@host ~]# yum -y install php php-mbstring

php-cliphp-commonも一緒にインストールされる。
ひとまずはmbstringのみ追加で。


ここまでは問題ない。ただ、調べてみると、Tracmod_pythonを使うにはpython2.5が必要っぽい。
そこで間違って、入っているpythonを上書きしてしまって、yumが動かなくなってしまった、、、、、

あ、そういえば

yumってpythonで動いてるじゃん!

関連しているプラグインやらがバージョン違うと、関連しているものが全て動かなくなるのをすっかり忘れてた、、、、

修正するよりもOS再インストールの方が早い!

なのでついでにしっかりとまとめようと思ってブログを初めてみたので、一個づつログっぽく書いているので、
作業の進行は遅い。でもログとか手順を取るのって重要。

Tracインストール2

入門Trac第2版Linux/Windows対応

入門Trac第2版Linux/Windows対応

バージョン管理の核となるsubversionTracのインストール

subversion

本に載っていたpython-subversionyumにてインストールしようとしたが、
基本のリポジトリには無いので、dagから取ろうとしてみると、subversion本体のバージョンがupdateされているものがあるので、dagからインストールを試みる。

[root@host ~]# yum --enablerepo=dag install subversion mod_dav_svn

subversionの設定

Subversion実践入門:達人プログラマに学ぶバージョン管理(第2版)

Subversion実践入門:達人プログラマに学ぶバージョン管理(第2版)

はじめは何を書いているか全くわからなかったけど、今は一番わかりやすい本かな。

いつも考えるのが、リポジトリをどこに置くか。
結局はどこでもいいとは思うが、/home/ か /var/www/のどっちかだろう。

/home/ はなんかユーザーとしてのサービスを置くって感じ?がするので、/var/www/にて作成

[root@host ~]# mkdir /var/www/svn
[root@host ~]# svnadmin create --fs-type fsfs /var/www/svn/mofmofh
[root@host ~]# vi /etc/httpd/conf.d/subversion.conf
.htpasswdは社内接続のみと考えているので、それ以外の部分のコメントアウトを外す

DAV svn
SVNParentPath /var/www/svn

# Limit write permission to list of valid users.

# Require SSL connection for password protection.
# SSLRequireSSL

# AuthType Basic
# AuthName "Authorization Realm"
# AuthUserFile /path/to/passwdfile
# Require valid-user

apacheを再起動して接続確認
http://hostname/svn/mofmofh

Tracのインストール

インタアクト株式会社--ニーズに対応した柔軟なシステム開発を目指して
Tracのバージョンが0.12以降からはそのまま日本語対応らしいけど、現状はまだなので、
ファイルを持ってくる。
こういう会社ってすばらしいね。

[root@host ~]# yum install python-setuptools mod_python
[root@host ~]# wget http://www.i-act.co.jp/project/products/downloads/Trac-0.11.5.ja1.zip
[root@host ~]# unzip Trac-0.11.5.ja1.zip
[root@host ~]# cd Trac-0.11.5.ja1
[root@sv01 Trac-0.11.5.ja1]# python setup.py install

Trac設定

trac.confは新規作成

[root@host ~]#
[root@sv01 ~]# mkdir /var/www/trac
[root@sv01 ~]# chown -R apache:apache /var/www/trac
[root@sv01 ~]# vi /etc/httpd/conf.d/trac.conf

SetHandler mod_python
PythonInterpreter main_interpreter
PythonHandler trac.web.modpython_frontend
PythonOption TracEnvParentDir /var/www/trac/

SetEnv PYTHON_EGG_CACHE /var/www/.egg_cache

apacheを再起動して
http://hostname/trac

無事に表示が出来た。