ラベル サーバー設定 の投稿を表示しています。 すべての投稿を表示
ラベル サーバー設定 の投稿を表示しています。 すべての投稿を表示

2012年5月14日月曜日

LDAPによるUNIXアカウントなしユーザー認証

表題の「LDAPによるUNIXアカウントなしユーザー認証」が出来ずに苦労したが、解決するとなんとまぁ自分の愚かさに呆れるだけであった。

■環境
 CentOS 5.8
 SELinux:Enforcing
  OPENLDAP:2.3.43
  SAMBA:3.6.3
[root@hoge etc]# cat ldap.conf | grep -v "^#\|^$"
host 127.0.0.1
base dc=hoge,dc=com
uri ldap://127.0.0.1/
binddn cn=proxy,dc=hoge,dc=com
bindpw secretword
timelimit 120
bind_timelimit 120
bind_policy soft
idle_timelimit 3600
nss_base_passwd         ou=Users,dc=hoge,dc=com
nss_base_shadow         ou=Users,dc=hoge,dc=com
nss_base_group          ou=Groups,dc=hoge,dc=com
nss_base_hosts          ou=Computers,dc=hoge,dc=com
nss_initgroups_ignoreusers root,ldap,named,avahi,haldaemon,dbus,radvd,tomcat,radiusd,news,mailman,nscd,gdm
ssl no
tls_cacertdir /etc/openldap/cacerts
pam_password md5
[root@hoge etc]# 

なんと bindpw を値を平文で登録していなかったためにバインド認証エラーが発生していた。

なにげに slapcat を実行したら下記のように binddn の後に pwdFailureTime と出力されておりやっと気がついた次第です。(ーー;)

dn: cn=proxy,dc=hoge,dc=com
objectClass: organizationalRole
objectClass: simpleSecurityObject
cn: proxy
userPassword:: a1DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD=
structuralObjectClass: organizationalRole
entryUUID: ********-*********-****-************
creatorsName: cn=Manager,dc=hoge,dc=com
createTimestamp: 20120508013259Z
pwdFailureTime: 20120509030611Z
pwdFailureTime: 20120509030647Z
pwdFailureTime: 20120509030723Z
pwdFailureTime: 20120509030759Z
       ・
       ・
       ・

2012年3月15日木曜日

Windows共有フォルダをマウントする

Windows 共有フォルダーを起動時にマウントする。
※fstabに下記のように記載する。

//マウント相手のIPアドレス/マウントしたいフォルダ名 /mnt/samba/ smbfs username=相手先のユーザー名(sambaユーザ名),password=相手先ユーザーのパスワード,gid=相手先ユーザーのグループID,uid=相手先ユーザーのユーザーID,codepage=cp932,iocharset=utf8,rw,defaults 0 0
※username と password は,マウント先が,Windowsの場合は「Windowsのログインユーザ」,マウント先がLinuxの時は「Sambaのユーザ」のものです。

※接続先がLinuxで,UTF8の場合は,「codepage=cp932,iocharset=utf8,」不要です。

【接続先がWindows】
//192.168.0.5/share /mnt/samba/ smbfs username=winuser,password=hoge,codepage=cp932,iocharset=utf8,rw,defaults 0 0
【接続先がLinux】
//192.168.0.5/share /mnt/samba/ smbfs username=smbuser,password=hoge,uid=1000,gid=1000,rw,defaults 0 0
mountコマンドでマウントする。
mount -t cifs -o user=******,password=****** //example.com/backup /mnt/backup

ソースRPMパッケージからバイナリRPMパッケージを作成

RPMパッケージには、コンパイル前のソースコードが格納されているソースRPMパッケージと、アーキテクチャごとにコンパイル済みで、インストール後すぐに利用できるバイナリRPMパッケージがあります。

ソースRPMパッケージのファイル名は「~.src.rpm」となっています。
バイナリRPMパッケージのファイル名は「~.i686.rpm」「~.x86_64.rpm」のように、アーキテクチャを表す表記が含まれる。

ソースパッケージからバイナリパッケージの作成方法。
treeパッケージで実施してみる。
下記のようなフォルダ構成を作成して、SOURCEフォルダに取得したソースRPMパッケージを配置します。

.
├─ BUILD
├─ BUILDROOT
├─ RPMS
├─ SOURCES
│  └─ tree-1.6.0-4.fc17.src.rpm
├─ SPECS
└─ SRPMS
次に rpmbuild --rebuild コマンドを使ってソースRPMパッケージからバイナリRPMパッケージを作成します。すると、RPMS/<アーキテクチャ>ディレクトリ以下に、バイナリRPMパッケージが作成されます。
$ cd SOURCES
$ rpmbuild --rebuild tree-1.6.0-4.fc17.src.rpm

 (中略)

 $ ls ../RPMS/i686/ tree-1.6.0-4.el6.i686.rpm tree-debuginfo-1.6.0-4.el6.i686.rpm 
※RPMのビルドはrpmbuildコマンドが使用できなければなりません. rpmbuildはパッケージ「rpm-build」をインストールします。

CENTOS5にapt-getをインストールする。

apt-getでのパッケージインストールを取得するために、CENTOS5にapt-getをインストールする。

  1. apt-getをインストールする。
    [root@hoge ~]# yum -y install apt
    yum -y install apt
    [root@hoge ~]# yum -y install apt
    Loaded plugins: fastestmirror
    Loading mirror speeds from cached hostfile
     * base: ftp.riken.jp
     * extras: ftp.riken.jp
     * rpmforge: fr2.rpmfind.net
     * updates: ftp.riken.jp
    adobe-linux-i386                                         |  951 B     00:00     
    base                                                     | 1.1 kB     00:00     
    dag                                                      | 1.1 kB     00:00     
    extras                                                   | 2.1 kB     00:00     
    rpmforge                                                 | 1.1 kB     00:00     
    updates                                                  | 1.9 kB     00:00     
    Setting up Install Process
    Resolving Dependencies
    There are unfinished transactions remaining. You might consider running yum-complete-transaction first to finish them.
    --> Running transaction check
    ---> Package apt.i386 0:0.5.15lorg3.94a-5.el5.rf set to be updated
    --> Finished Dependency Resolution
    
    Dependencies Resolved
    
    ================================================================================
     Package     Arch         Version                             Repository   Size
    ================================================================================
    Installing:
     apt         i386         0.5.15lorg3.94a-5.el5.rf            dag         2.8 M
    
    Transaction Summary
    ================================================================================
    Install       1 Package(s)
    Upgrade       0 Package(s)
    
    Total download size: 2.8 M
    Downloading Packages:
    apt-0.5.15lorg3.94a-5.el5.rf.i386.rpm                    | 2.8 MB     00:04     
    Running rpm_check_debug
    Running Transaction Test
    Finished Transaction Test
    Transaction Test Succeeded
    Running Transaction
      Installing     : apt                                                      1/1 
    
    Installed:
      apt.i386 0:0.5.15lorg3.94a-5.el5.rf                                           
    
    Complete!
    [root@hoge ~]# 
    
  2. apt-getを最新版に更新する
    [root@hoge ~]# apt-get update
    [root@hoge ~]# apt-get update
    取得:1 http://apt.sw.be redhat/el5/en/i386/rpmforge repomd.xml [1095B]
    1095B を 1s 秒で取得しました (729B/s)
    取得:1 http://apt.sw.be redhat/el5/en/i386/rpmforge/ primary.xml [4291kB]
    取得:2 http://apt.sw.be redhat/el5/en/i386/rpmforge/ filelists.xml [5083kB]    
    9374kB を 35s 秒で取得しました (267kB/s)                                       
    パッケージリストを読みこんでいます... 完了
    依存情報ツリーを作成しています... 完了        
    [root@hoge ~]# 
    

2012年2月28日火曜日

SSL自己署名証明書の作成

SSL自己署名証明書ではアクセス時に警告が出るため、商用で使う場合はベリサイン等の正規の認証局が発行する証明書するの通常です。

SSL自己署名証明書の作成手順

  1. 秘密鍵を生成します
  2. 秘密鍵からパスフレーズを削除
  3. 生成された秘密鍵を使ってサイト証明書を発行
1. 秘密鍵を生成します。

[root@hoge ~]#cd /etc/pki/tls [root@hoge tls]# openssl genrsa -des3 2048 > private/localhost.key
Generating RSA private key, 2048 bit long modulus
.........................................................................................................................................+++
.............+++
e is 65537 (0x10001)
Enter pass phrase: # パスフレーズを入力
Verifying - Enter pass phrase: # パスフレーズを再入力
[root@hoge tls]#

2.秘密鍵からパスフレーズを削除します。(Apache起動時に毎回パスフレーズを聞かれるので..)

[root@hoge tls]# cd private
[root@hoge private]# cp -p localhost.key localhost.key.org # オリジナルを退避する。(パスフレーズを問い合わせる)
[root@hoge private]# cd ../
[root@hoge tls]# openssl rsa -in private/localhost.key -out private/localhost.key
Enter pass phrase for private/localhost.key: # パスフレーズを入力
writing RSA key
[root@hoge tls]#

3.生成された秘密鍵を使ってサイト証明書を発行します(Common NameはURLでのホスト名を入力)

[root@hoge tls]# openssl req -new -x509 -key private/localhost.key -out certs/localhost.crt -days 3650
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]:example.inc
Organizational Unit Name (eg, section) []:example
Common Name (eg, your name or your server's hostname) []:example.com
Email Address []:
[root@hoge tls]#

下記の3つのファイル(実際は2つ)を作成
/etc/pki/tls/private/localhost.key.org パスフレーズ削除前
/etc/pki/tls/private/localhost.key     パスフレーズ削除後
/etc/pki/tls/private/localhost.crt     サイト証明書
※作成後はパーミッションを下記のようにしておきます。
 -r-------- 1 root root   1444  2月 16 05:58 localhost.key.org
 -r-------- 1 root root   1444  2月 16 05:58 localhost.key
 -r-------- 1 root root   1444  2月 16 05:58 localhost.crt

2012年2月21日火曜日

OpenLDAPと暗号化通信

SMTPやPOP3プロトコルでは平文パスワードがネットワーク上を流れるますが,LDAPでも同じです。tcpdumpなどで通信をキャプチャしてみると,パスワード文字列を簡単に取得することができてしまいます。

アカウント情報(UNIXアカウント)をOPENLDAPで管理する場合、実際のパスワード情報はLDAPサーバ上のuserPassword属性中に暗号化された状態で格納されていますが,ネットワーク上のトラフィックをキャプチャしてみると,平文のパスワードを取得することができてしまう。

信頼されたネットワーク内のみで運用するのであれば話は別ですが,盗聴の危険性を考慮した場合,ネットワーク経路の暗号化の検討が必要になります。

暗号化の種類

データを暗号化させるためには,いくつかの方法が考えられますが,これはSMTP/POP3/IMAPなどの基本的なプロトコルにおける考え方と同様です。

ひとつ目の方法はSSL/TLSにより,トラフィック全体を暗号化させることです。この場合SSLを使用しますので,LDAPサーバ上にサーバ鍵,証明書,CA情報などを設置しておく必要があります。トラフィックをSSLでカプセリングすることで,パスワード情報だけではなく接続の最初から最後までの全情報を暗号化させることができることが最大のメリットです。また,暗号化だけではなく信頼された接続先に安全に接続できる,という意味も持ちます。

2012年2月18日土曜日

python-hashlibのインストール

あるリポジトリを設定してパッケージをインストールしようとしたら、”python-hashlib”がないぞ!とインストールを拒否されたので、「python-hashlib-20081119-1.el5.rf」をYum Extender からインストールをした。

Error: failure: repodata/primary.xml.gz from git: [Errno 256] No more mirrors to try.

さて、python-hashlib とは何ぞや? と思い確認してみると、パッケージの概要では「Secure hash and message digest aldorithm library」と記述されている。

yum は、Python 書かれているようで、必要なセキュリティアルゴリズムが不足したため(python-hashlibに含まれている処理が利用されている)であった。

2012年2月8日水曜日

ソースファイルからRPMファイルの作成

インストールしたいプログラムがRPMでなくtarボールのみで配布されていることも多い。しかし、ソースファイルをそのままコンパイルしてインストールするとRPMによる恩恵(インストール済みプログラムおよび更新の検知)が得られないので、プログラムはできるだけRPMファイルでインストールしたい。

tarボールで配布されているプログラムの中には、RPMファイルを作成するためのSPECファイルを含んでいるものがある。この場合は、rpmbuildコマンドでtarボールからRPMファイルを作成することができます。( -taオプションをつけて実行する)
しかし、SPECファイルが含まれていない場合はどうしたら良いか?
CheckInstallを使うことで、SPECファイルが用意されていなくてもRPMファイルを作成できます。

Postfixの作者、Wietse Venema氏のPGP公開鍵を入手します。
入手した公開鍵は、次のようにインポートします:
[hoge@hoge Source]$ gpg --import wietse.pgp
gpg: /home/shorisawa/.gnupg/trustdb.gpg: 信用データベースができました
gpg: 鍵C12BCD99: 公開鍵“Wietse Venema ”を読み込みました
gpg: 鍵D5327CB9: 公開鍵“wietse venema ”を読み込みました
gpg:     処理数の合計: 2
gpg:           読込み: 2  (RSA: 2)
gpg: 絶対的に信用する鍵が見つかりません

■
[hoge@hoge Source]$ gpg postfix-2.10-20120202.tar.gz.sig
gpg: 2012年02月03日 09時58分34秒 JSTにRSA鍵ID C12BCD99で施された署名
gpg: “Wietse Venema ”からの正しい署名  ←←←この行があればOK
gpg: 警告: この鍵は信用できる署名で証明されていません!
gpg:       この署名が所有者のものかどうかの検証手段がありません。
主鍵の指紋: FF 96 4A 8C 96 88 7C 6E  A4 EF AD BF 48 34 E1 BB
[hoge@hoge Source]

CheckInstallのWebサイトからからパッケージをダウンロードしてインストールする。今回は、checkinstall-1.6.1-1.i386.rpmをダウンロードしてインストールする。

[root@hoge rpm]# ls
checkinstall-1.6.1-1.i386.rpm
[root@hoge rpm]# rpm -ivh checkinstall-1.6.1-1.i386.rpm
準備中...                ########################################### [100%]
   1:checkinstall           ########################################### [100%]
[root@hoge rpm]# 

2012年2月5日日曜日

postfix インストール

設定方法については、「OSSでLinuxサーバ構築」さんや「Stray Penguin」さんを参照させて頂いております。「OSSでLinuxサーバ構築」さん「Stray Penguin」さんありがとうございます。

[root@ora02 ~]# yum install postfix
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: rsync.atworks.co.jp
 * extras: rsync.atworks.co.jp
 * rpmforge: fr2.rpmfind.net
 * updates: rsync.atworks.co.jp
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package postfix.i386 2:2.3.3-2.3.el5_6 set to be updated
--> Processing Dependency: cyrus-sasl >= 2.1.10 for package: postfix
--> Running transaction check
---> Package cyrus-sasl.i386 0:2.1.22-5.el5_4.3 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package            Arch         Version                     Repository    Size
================================================================================
Installing:
 postfix            i386         2:2.3.3-2.3.el5_6           base         3.5 M
Installing for dependencies:
 cyrus-sasl         i386         2.1.22-5.el5_4.3            base         1.2 M

Transaction Summary
================================================================================
Install       2 Package(s)
Upgrade       0 Package(s)

Total download size: 4.7 M
Is this ok [y/N]: y
Downloading Packages:
(1/2): cyrus-sasl-2.1.22-5.el5_4.3.i386.rpm              | 1.2 MB     00:00     
(2/2): postfix-2.3.3-2.3.el5_6.i386.rpm                  | 3.5 MB     00:00     
--------------------------------------------------------------------------------
Total                                           4.4 MB/s | 4.7 MB     00:01     
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : cyrus-sasl                                               1/2 
  Installing     : postfix                                                  2/2 

Installed:
  postfix.i386 2:2.3.3-2.3.el5_6                                                

Dependency Installed:
  cyrus-sasl.i386 0:2.1.22-5.el5_4.3                                            

Complete!
[root@ora02 ~]# 
【postfixユーザー】
postfix:x:89:89::/var/spool/postfix:/sbin/nologin

【postfixグループ】
postdrop:x:90:
postfix:x:89:

正規表現によるメールフィルタリングの制御に PCRE があると高度なフィルタリングが可能。
デフォルトでインストールされていると思いますが、コンパイルオプションでunicode-propertiesが有効になっていないということあるかもしれないので、確認をする。

[root@ora02 ~]# pcretest -C
PCRE version 6.6 06-Feb-2006
Compiled with
  UTF-8 support
  Unicode properties support   ← これでOK! NGの時 → No Unicode properties support
  Newline character is LF
  Internal link size = 2
  POSIX malloc threshold = 10
  Default match limit = 10000000
  Default recursion depth limit = 10000000
  Match recursion uses stack
[root@ora02 ~]# 

基本設定

■ main.cfの編集
・設定ファイル/etc/postfix/main.cfの編集
# vi /etc/postfix/main.cf

# ホスト名
myhostname =  mail.oss-d.net

# ドメイン名
mydomain = oss-d.net
 
# @以降のドメイン名
myorigin = $mydomain

# メールを受け取るネットワークインタフェースのアドレス範囲
inet_interfaces = all

# メールの最終目的地とみなす範囲の指定
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain

# 信頼できるクライアントのネットワーク
mynetworks =  192.168.11.0/24, 127.0.0.0/8

# リレーを許可するドメインを指定
relay_domains = $mydestination

# メールBOXの形式
home_mailbox = Maildir/

■ SMTP-AUTH対応(SASL認証)

■ main.cfの編集
・設定ファイル /etc/postfix/main.cf を編集(設定を追記する)
# SASLによるSMTP認証を使用
smtpd_sasl_auth_enable = yes

# 使用可能な認証メカニズムの設定
# noanonymous : 匿名接続を拒否。
# noplaintext : PLAIN認証を拒否(Outlook ExpressはPLAIN認証のみ対応)
#smtpd_sasl_security_options = noanonymous, noplaintext
smtpd_sasl_security_options = noanonymous

# 認証時のTLSの利用(TLSを強制する場合はyesに変更)
#smtpd_tls_auth_only = yes

#ローカル認証 realm を設定
smtpd_sasl_local_domain = $myhostname

#メールの送信可能なユーザ定義
# mynetworks sasl認証された は許可。それ以外は拒否
smtpd_recipient_restrictions =
 permit_mynetworks
 permit_auth_destination
 permit_sasl_authenticated
 reject

# Outlook LOGIN 認証を利用するための設定
broken_sasl_auth_clients = yes
■ SASLの設定
1. 「/usr/lib/sasl2/smtpd.conf」を下記の通り設定します。
pwcheck_method: saslauthd
mech_list: login plain 
2. 「/etc/sysconfig/saslauthd」を下記の通り設定します。ユーザ情報はPAM経由でUNIXアカウントを利用します。
MECH=pam
3. SASLの自動起動設定
# chkconfig saslauthd on
4. SASLの起動
# /etc/init.d/saslauthd start
  または
# service saslauthd start

■ SMTP-AUTH対応(LDAP認証)

SMTP-AUTHの認証をLDAPで行うように設定します。
■ SASLの設定
1. 「/usr/lib/sasl2/smtpd.conf」を下記の通り設定します。
# vi /usr/lib/sasl2/smtpd.conf

pwcheck_method: saslauthd
mech_list: login plain 
2. 「/etc/sysconfig/saslauthd」を下記の通り設定します。
# vi /etc/sysconfig/saslauthd
MECH=ldap
3. SASLがLDAPのユーザ情報を使用するよう「/etc/saslauthd.conf」を作成する。
# vi /etc/saslauthd.conf
ldap_servers: ldap://localhost 
ldap_search_base: ou=Users,dc=hoge,dc=com 
ldap_filter: uid=%u
4. SASLの自動起動設定
# chkconfig saslauthd on
5. SASLの起動
# /etc/init.d/saslauthd restart
-------------------------

SMTP-TSL対応

■ 秘密鍵と証明書の作成
秘密鍵「localhost.key」と証明書「localhost.crt」を作成します。


今回 sendmail でなく postfix をインストールする理由

Sendmailはメールアカウントの認証をホストのログインアカウントの流用で行っており、Postfixがサポートしているような仮想メールアカウントの機能を備えていないため、メールアカウントをLDAP参照にするのはpam_ldap等を使用してホストのログインアカウントをldap参照とし、これを流用するという方法による間接的な対応となります。今回はLDAPによるユーザー認証を目的としているので Postfix で行うことにします。


中途半端な記述になってしまいましたが、後日追記します...

2011年12月25日日曜日

SSHによるリモート接続設定

いつも使っているのだが、ついつい忘れがちな設定方法をメモする。

sshdによるファイル転送を行うため、Linux(SVR)側で設定内容を確認する。

アクセスの制限
/etc/hosts.allow にアクセスを許可先を設定。
sshd: 127.0.0.1 192.168.0. 192.168.1.
/etc/hosts.deny にアクセスを拒否先を設定。
sshd: ALL
/etc/ssh/sshd_configの編集
#Port 22
#■ポート番号を変更しても良い 例) 2222等

#Protocol 2,1
#↓■SSH 2 のみ接続を許可
Protocol 2

#PermitRootLogin yes
#↓■rootでのログインを禁止
PermitRootLogin no

#↓■パスワード方式ログインで設定する場合、パスワードでのログインを許可
PasswordAuthentication yes
#↓■鍵方式ログインで設定する場合、パスワードでのログインを拒否 PasswordAuthentication no #↓■ 空パスワードの禁止 PermitEmptyPasswords no

【ログイン方式で鍵方式を設定した場合】 手順は下記の2通り考えられます。サーバーとクライアントが身近な(同一建物)場合は【手順1】で行い、ネットワークでの転送が必要な場合には、【手順2】が良いかも...
【手順1】でネットワークを経由で転送も方法を考慮すれば問題ないかもね。(キーをパスワード付きで圧縮して送り、パスワードは別手段で伝える)
ここでは、公開鍵・秘密鍵ともにデフォルトの値(名前)を使用して説明します。(鍵の生成時の名前(鍵名)は好きな名称をつけることが可能)
デフォルトでは、公開鍵(id_rsa.pub)・秘密鍵(id_rsa)になります。

【手順1】

  1. サーバーでログイン方法(sshd_confing)の設定を行う。
  2. サーバーでクライアントの秘密鍵と公開鍵のペアを作成する。
    ※作成された公開鍵は、~/.ssh/authorized_keys に追加する。
    ■authorized_keysがない場合
    $ cat ~/.ssh/id_rsa.pub > authorized_keys
    ■authorized_keysがある場合
    $ cat ~/.ssh/id_rsa.pub >> authorized_keys
    
    ※登録したら、作成した id_rsa.pub(公開鍵)は削除します。
    
  3. 作成された秘密鍵(id_rsa)をクライアント(PC)へコピーする。
  4. クライアント(PC)がSSHクライアントで公開鍵による認証を行うように設定する。
【手順2】
  1. クライアントで秘密鍵と公開鍵のペアを作成する。
  2. 作成した公開鍵をサーバーに登録する。
    登録先は、ユーザーディレクトリのauthorized_keysに鍵を追加。
    ※この時は、パスワード認証で鍵を送る。(または、別方法)
  3. SSHサーバーのログイン方法を公開鍵暗号でのログインに変更する。
  4. クライアント(PC)がSSHクライアントで公開鍵による認証を行うように設定する。

■鍵の作成方法
Linuxでの鍵の作成(Mac OS X Lion もほぼ同様です。)
$ ssh-keygen -t rsa
[hoge@hoge01 ~]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/hoge/.ssh/id_rsa): ←そのまま[Enter]を押す。(鍵名と鍵の格納先フォルダ)
Created directory '/home/hoge/.ssh'.
Enter passphrase (empty for no passphrase): ←パスワードを入力
Enter same passphrase again: ←パスワードを再入力
Your identification has been saved in /home/hoge/.ssh/id_rsa.
Your public key has been saved in /home/hoge/.ssh/id_rsa.pub.
The key fingerprint is:
b7:7b:f2:83:0b:da:6c:57:9a:51:93:4e:04:9a:b2:5f hoge@hoge01
[hoge@hoge01 ~]$

Windowsでの鍵の作成(WindowsXp TeraTerm Pro)
  1. TeraTermProを起動して、Cancelを選択して接続画面を閉じる。
  2. メニューの「設定」を選択して「SSH鍵の生成」を選択(クリック)します。
  3. 鍵の生成画面が開いたら(鍵:RSA、ビット数:2048)、そのまま「生成」ボタンを押します。
  4. 鍵の生成が完了すると「鍵を生成しました」と表示され、パスワードが入力可能の状態になります。
  5. パスワードを入力して「公開鍵の保存」を押す。
  6. パスワードを入力して「秘密鍵の保存」を押す。
上記で鍵を作成したら、秘密鍵はクライアントに保存し、公開鍵はサーバーのユーザー所定のディレクトリの authorized_keys に登録する。(なければ作成、あれば追記する。)

実際に確認してみると大した事ないのだが... (^_^)

2011年2月13日日曜日

Samba-フォルダ名の変更ができない

メインで使用したPCの様子が変なので、重要データの持ち方をサーバーと2台のクライアント間の更新しあう環境に変更を行っていたところ、クライアントからSambaの共有フォルダ直下に作成されているフォルダ名を変更できない事が判明。

Sambaは今までも使用していたが、以前からこの現象に気づいていたがそれまでは特に困らなかったので放置していた。しかし、PCの故障等からデータを紛失しないためにもメインで使用するPCを切り替え使用可能にするためにも、この現象というかSambaの設定を正しく行うようにする必要がある。

Sambaの設定に問題があるのかと思っていろいろと試行してみたが、なんと問題はSELinuxにあった。 SELinuxを無効にすると問題なく共有フォルダ直下のフォルダ名を変更することができた。

ということでSELinuxの変更に着手を開始しようとしたが、現在のマシンのSELinuxの設定を自分で独自設定したためにSambaで使用するタイプやコンテキスト変数が定義されていない。
手動で作成していくのは大変かと考えてとりあえず、SELinuxのポリシータイプを現在のseeditからtargetに変更して対応することにした。

   ↓(ここでまたやらかしてしまった。)

ポリシータイプを変更したのに、SELinuxのモードをEnforcingのまま再起動をしてしまい起動できなくなってしまった。

お決まりのブートオプションを指定して起動させて難なく対応する。
ブート時に A を押してブートオプションを指定する。(enforcing=0を追記する)

kernel /vmlinuz-2.6.18-194.32.1.el5.centos.plus ro root=/dev/VolGroup00/LogVol00 rhgb quiet  enforcing=0

起動できたら、次回起動時にラベルの振り直し(SELinux AdministratorでRelabel on next rebootをチェックする)設定をして再起動を行う。
あとは、地道に環境を整えて早くSELinuxのモードをEnforcingに戻すことにします。