Skip to main content

79 posts tagged with "Linux"

View All Tags

クライアント-サーバ間のFTPの接続構成図

· One min read
Yu Sasaki
Enterprise Security Manager / Advisor

FTP(File Transfer Protocol)はInternet Request for Comment(RFC) 959で定義されているファイル転送プロトコルであるが、この度、改めてFTPの仕組み、特にクライアント-サーバ間の接続方法を確認。 FTP connection between client and server 上図より接続のフローを簡単に説明すると、

  1. クライアント→サーバ(port 21)へTCPで制御用の接続を試みる
  2. サーバ→クライアントへTCPでデータ伝送用の接続を試みる
  3. 両コネクションにてコマンドのやり取り+データの伝送を行う

FTPにはActive/Passiveの2つのモードがあるが、両モードの違いはサーバ→クライアントへの接続に使用するサーバ側の送信ポートの違いである。図の通り、Activeモードはport 20番、Passiveモードは1024以上のport番号からランダムに選択したものを使用する。

Linux: RedmineとSubversionのインストール・設定例

· 7 min read
Yu Sasaki
Enterprise Security Manager / Advisor

Linux(ここではCentOS)にプロジェクト管理ソフトウェアであるRedmine 1.2.2とバージョン管理システムであるSubversionのインストール方法と設定例を以下に紹介。想定としては、WebサーバやDB以外は何も設定されていないサーバ環境を対象とした手順。すでにインストールしているものや設定済みのものは適時読み飛ばし下さい。 ※参考サイトは記事の末尾をご参照。

Bash: 数字とその他 文字列の判別

· One min read
Yu Sasaki
Enterprise Security Manager / Advisor

数字文字列とそれ以外の文字列を判別する条件式は以下の通り。

スクリプト

#!/bin/sh
if expr "$1" : '[0-9]*' > /dev/null ; then
echo "数字です"
else
echo "数字以外です"
fi

実行結果

$ ./if_numstr.sh 123
数字です
$ ./if_numstr.sh abc
数字以外です

内容

exprで正規表現を用いて数値を判定。exprは内部コード以外にも標準出力にも結果を返すので、不要なそれは/dev/nullへリダイレクトする。

OpenSSH サーバのインストールと公開鍵・秘密鍵の作成・設置

· 5 min read
Yu Sasaki
Enterprise Security Manager / Advisor

この度さくらVPS(OS: CentOS 5)を利用し始めた為、備忘録として掲載。

事前準備

先ずリモートコンソール上で以下の作業を実施。尚、コンソールはブラウザ上ではなく、Java Applet版の方が使い易い。

既存のsshdサーバをアンインストール

# /etc/rc.d/init.d/sshd stop <-- 停止
# yum -y remove openssh <-- アンインストール

Shell Script: testコマンドによる条件判定 (数値、文字列)

· 2 min read
Yu Sasaki
Enterprise Security Manager / Advisor

test_command 上表はshの組み込み、かつ外部コマンドでもあるtestコマンドの判定表。testコマンドは与えられた条件式に対して、終了コードに真「0」、**偽「1」**を返す。他のプログラミング言語の条件判定とは真偽の値の意味が逆なので違和感を覚えるが、例えばC言語のmainのreturn (システムへのreturn)は正常では0、異常では1を返す例と同様と考えるとしっくりくるかな。。