securityの最近のブログ記事

gnupgがインストールされているか確認。
$ yum list installed gnupg
Loaded plugins: fastestmirror
Installed Packages
gnupg.x86_64                     1.4.5-14.el5_5.1                      installed
インストールされていなければインストール
$ sudo yum install gnupg
設定ファイルを初期化する。 --list-keysはgpgに登録されている公開鍵を表示するコマンド。 初回実行時に設定ファイルが自動的に作成される。
$ gpg --list-key
gpg: ディレクトリー「/home/pistolfly/.gnupg」ができました
gpg: 新しい構成ファイル「/home/pistolfly/.gnupg/gpg.conf」ができました
gpg: 警告: 「/home/pistolfly/.gnupg/gpg.conf」のオプションは起動している間、有効になりません
gpg: 鍵輪「/home/pistolfly/.gnupg/pubring.gpg」ができました
gpg: /home/pistolfly/.gnupg/trustdb.gpg: 信用データベースができました
~/.gnupg/gpg.conf を編集。
$ vi ~/.gnupg/gpg.conf 
以下の部分のコメントを外して、公開鍵を鍵サーバから自動的に取得できるようにする。
#keyserver-options auto-key-retrieve
 ↓
keyserver-options auto-key-retrieve
ダウンロードファイルの真正性を確認する
gpg --verify <電子署名ファイル>
例:
$ ls emacs*
emacs-23.3a.tar.gz emacs-23.3a.tar.gz.sig
$ gpg --verify emacs-23.3a.tar.gz.sig 
gpg: 2011年08月03日 00時39分07秒 JSTにDSA鍵ID BC40251Cで施された署名
gpg: 鍵BC40251Cをhkpからサーバーsubkeys.pgp.netに要求
gpg: 鍵BC40251C: 公開鍵"Chong Yidong "を読み込みました
gpg: 絶対的に信用する鍵が見つかりません
gpg:     処理数の合計: 1
gpg:           読込み: 1
gpg: "Chong Yidong "からの正しい署名
gpg: 警告: この鍵は信用できる署名で証明されていません!
gpg:       この署名が所有者のものかどうかの検証手段がありません。
主鍵の指紋: AF1A 0574 841E 0F2D EDE2  829A 764D A716 BC40 251C

gpg: "Chong Yidong "からの正しい署名
とあるので、OK。
gpg: 警告: この鍵は信用できる署名で証明されていません!
は、公開鍵を信頼していない状態なので表示されている。

カテゴリー:

# useradd -o -u UID LOGIN
で、同じユーザID(UID)を持つ異なるユーザ名(LOGIN)のユーザを作成できるが、これはどんな時に使うのだろうか。


linux - Multiple *NIX Accounts with Identical UID - Server Fault

[Chapter 4] Users, Groups, and the Superuser

カテゴリー:

カテゴリー:

rsync and sudo over SSH « crashingdaily

sudo + rsync | きぬろぐ

rsyncでリモートサーバのバックアップを取る場合に、バックアップするユーザに権限がないファイルやディレクトリのバックアップが取れない。
取れるようにするためには、rsyncをsudoで実行すればよい。

まずバックアップされるサーバ側で、バックアップユーザがsudoできるようにする。

# visudo
で、/etc/suduersに以下を加える。
backup ALL= NOPASSWD:/usr/bin/rsync

バックアップされるサーバ側で、.ssh/authorized_keysのcommandオプションでsshで実行できるコマンドを制限している場合は、
sudo\ rsync\ --server
も許可するようにする。

そして、rsync実行時のオプションに
--rsync-path="sudo rsync"
を追加する。


さて、これで設定はOKなはずなので、この状態でバックアップサーバからバックアップを実行すると、、、

sudo: sorry, you must have a tty to run sudo

というエラーになる。

これは、バックアップされるサーバ側の/etc/sudoers ファイルで、'requiretty' フラグがデフォルトで設定されているから。このフラグが設定されている場合、ログインしているユーザ以外はsudoできない。つまり、sshやrsh経由のリモートでのsudoコマンドの実行が許可されない。

Red Hat Knowledgebase: ssh 経由で sudo コマンドを実行すると、tty エラーとなります。

これを回避するには、sudoersでrequirettyフラグを設定しないようにする。

# visudo
で、/etc/sudoers の以下の行をコメントアウト。
#Defaults    requiretty

これで、OK。

カテゴリー:

カテゴリー:

Tips&Tricks » Poderosaで公開鍵認証

PoderosaではOpenSSHの秘密鍵ファイルは変換しないと使えない。
puttygenで、OpenSSHの秘密鍵をインポート→SECSH(ssh.com)でエクスポートすることで、変換できる。

puttygenでの変換方法。
  1. puttygenを起動。
  2. メニューのConversions > Import keyでOpenSSH(またはSECSH)の秘密鍵を開く。
  3. メニューのConversions > Export ssh.com key(またはExport OpenSSH key)でエクスポート。

sshの公開鍵はいろんな種類があるみたい - blog@longkey1.net

SSHクライアントの秘密鍵/公開鍵についてまとめ : ひろ式めもちょう

端っこなひとの備忘録: PoderosaのSSH2の秘密鍵をOpenSSHで使う

カテゴリー:

Ubuntuでは、OpenSSLをインストールしただけでは、CA証明書はインストールされない。

CA証明書のインストールは
$ sudo aptitude install ca-certificates

カテゴリー:

カテゴリー:

カテゴリー:

あらかじめ用意されているテスト用の仮の鍵と証明書をバックアップする。

# cd /etc/pki/tls
# mv private/localhost.key private/localhost.key.bk
# mv certs/localhost.crt certs/localhost.crt.bk

サーバ鍵を作成する。

# openssl genrsa 1024 > private/test.key

これでパスフレーズなしのサーバ鍵が作成される。

テスト用に自己証明書を作成。

# openssl req -new -x509 -days 365 -key /etc/pki/tls/private/test.key -out /etc/pki/tls/certs/test.crt
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) [GB]:JP
State or Province Name (full name) [Berkshire]:Tokyo
Locality Name (eg, city) [Newbury]:Chiyoda-ku
Organization Name (eg, company) [My Company Ltd]:Pistolfly Co., Ltd.
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) []:test.pistolfly.jp
Email Address []:webmaster@pistolfly.jp
# apachectl restart

あとは、/etc/httpd/conf.d/ssl.confにバーチャルホストを設定して、
・サーバ鍵と証明書のパス
・その他バーチャルホストの設定
を行う。

カテゴリー: