Putty设置OpenSSH公钥验证

OpenSSH公钥验证又称为无密码验证。DragonFlyBSD默认只接受公钥验证,今天就简单谈一下如何使用Putty以公钥验证的方式登录DragonFlyBSD。 设置公钥验证的逻辑很简单: 1. 首先生成一对密钥(公、私密钥) 2. 将公钥的内容放入目标用户主目录下.ssh/authorized_keys文件中 3. 使用SSH客户端登录时,指定使用相应的私钥进行验证 再来谈一下实际的设置。假定的场景是,在一台Windows系统上,使用Putty登录到DragonFlyBSD机器上。 由于Putty和OpenSSH的密要格式不同,我将使用Puttygen.exe程序来生成密钥对。 在Windows上 1. 下载Puttygen.exe程序 2. 运行Puttygen.exe,点击“Generate”,接受默认设置生成RSA公钥对。生成密钥对需要一点时间,在Puttygen程序的空白处随意移动鼠标以加快进度 3. 密钥生成后,将其顶部的文本复制并保存到一个文本文件中(即顶部标志为“Public key for pasting into OpenSSH authorized_keys file:”中的内容)。 4. 点击”Save Private Key“按钮,保存私钥。程序提示时,确认不用PassPhrase保护私钥 在DragonFlyBSD上: 5. 如果你还没有创建相应的用户,使用adduser命令创建一个用户 6. 在DragonFlyBSD上以此用户登录(控制台) 7. 在用户主目录下生成.ssh目录: mkdir .ssh 8. 由于此时DragonFlyBSD不接受SSH登录,需要启动FTPD,从而使用ftp上传公钥文件. 以root用户,运行:/usr/libexec/ftpd -D 返回到Windows机器上 9. 在命令行下,以ftp方式登录DragonFlyBSD。用户名/密码就是用刚才以adduser命令创建的用户名和密码 10. 将第3步中保存的文本文件上传到DragonFlyBSD上 回到DragonFlyBSD上: 11. 假定刚才上传的文件名为key.txt,运行如下命令: cat key.txt >> ~/.ssh/authorized_keys 再次回到Windows机器上 12. 打开Putty,在其左侧的SSH选项下有一个”Auth”,点击“Auth”后,右侧窗格会有一个“Private key file for authentication”选项,点击对应的”Browse“按钮,找到第4步中保存的私钥(.ppk格式)并加载 13. 使用Putty登录到DragonFlyBSD,用户名后应该就可以登录了。

Read More

DragonFlyBSD 3.0.2上安装PHP5.3

1. 安装PHP模块及其常用的扩展,根据自己的需求进行增减: pkg_radd -v ap22-php53-5.3.9nb1 php53-apc-5.3.9.3.1.9nb1 php53-curl-5.3.9nb1 php53-gd-5.3.9nb2 php53-mysql-5.3.9 php53-mysqli-5.3.9 php53-pdo_mysql-5.3.9 php53-suhosin-5.3.9.0.9.33 php53-xsl-5.3.9nb1 php53-xmlrpc-5.3.9 php53-mbstring-5.3.9 php53-json-5.3.9 php53-zlib-5.3.9 2. 根据软件安装提示,把下面几行添加到/usr/pkg/etc/php.ini中,Dynamic Extensions一节下面: ;;;;;;;;;;;;;;;;;;;;;;; ; Dynamic Extensions ; ;;;;;;;;;;;;;;;;;;;;;; extension=zlib.so extension=apc.so extension=iconv.so extension=curl.so extension=gd.so extension=suhosin.so extension=dom.so extension=xsl.so extension=xmlrpc.so extension=pdo.so extension=pdo_mysql.so extension=mysql.so extension=mysqli.so extension=json.so extension=mbstring.so 根据第一步中安装的软件不同,extension也会不同。 3. 把下面两行加入到httpd.conf中的相应位置: LoadModule php5_module lib/httpd/mod_php5.so AddHandler application/x-httpd-php .php 4. 重启apache apachectl restart 5. 测试PHP echo “<?php phpinfo(); ?>” | php

Read More

DragonFlyBSD 3.0.2上安装MySQL

MySQL服务器的安装比较简单,摘要如下: 1. pkg_radd mysql-server-5.1.60 2. cp /usr/pkg/share/examples/rc.d/mysqld /etc/rc.d/ 3. 在/etc/rc.conf中添加mysqld_enable=”YES” 4. /etc/rc.d/mysqld start 5. 运行/usr/pkg/bin/mysql_secure_installation,跟据提示设置root账户密码,删除不必要的一些东东 如果你准备安装php,不要安装mysql的5.5版。目前有兼容性问题。

Read More

DragonFlyBSD 3.0.2上安装Apache

上面一篇介绍了一下DragonFlyBSD上的软件管理,今天就来安装Apache。 如果你时间紧迫,先看一下摘要: 1. pkg_radd -v apache-2.2.21nb7 2. cp /usr/pkg/share/examples/rc.d/apache /etc/rc.d/ 3. 添加apache_enable=”YES”到/etc/rc.conf 4. kldload accf_http 5. 在/etc/defaults/loader.conf中,将下面两行中的NO改成YES: accf_data_load=”NO” # Wait for data accept filter accf_http_load=”NO” # Wait for full HTTP request accept filter 6. 根据情况,注释掉httpd.conf中的下面一行: LoadModule unique_id_module lib/httpd/mod_unique_id.so 7. /etc/rc.d/apache start 8. 根据需要,调整自己的httpd.conf配置 下面开始短话长说。 由于刚开始DragonFlyBSD,不知道它的Apache软件包是什么名字,大致先搜一下吧: # pkg_search httpd bozohttpd-20111118 Bozotic HTTP server; small and secure libmicrohttpd-0.9.17 Small C library to run an HTTP server as part of another app …… 没有我想找的。再试一次: # pkg_search apache apache-1.3.42…

Read More

初识DragonFlyBSD的软件管理系统

偶然间又看到DragonFlyBSD的消息,一时兴起,想要测试一下这个系统,看一下它的Hammer FS。于是就在虚拟机里安装了DragonFlyBSD3.0.2。 初步印象(和OpenBSD的使用体验相比较): 如果你的英文没有问题的话,按照安装盘的提示一步一步来,安装比较简单。 小于10G的磁盘默认不使用Hammer FS。 安装完成后直接在控制台以root登录,无须密码; 而默认的SSH验证也只接受密钥方式,所以需要创建一个用户,然后创建密钥,设置改用户的密钥验证,然后才能使用ssh远程登录。否则只能在控制台登录。 添加用户的时候发现useradd命令默认没有,需要使用adduser,以互动方式添加。 软件管理: 系统装完后就要安装软件,不然系统也没什么用处。简单说,DragonFlyBSD的软件在管理方式上和其他的BSD也没有太大的区别。 阅读了官方的pkgsrc文档之后,将常见的软件安装,删除及搜索等的方式汇总如下: 1. 准备工作 系统装完后运行如下命令(以root用户): # cd /usr # rm -rf pkgsrc # make pkgsrc-create # make pkgsrc-update 2. 软件搜索: # pkg_search $pkg_name (搜索已经编译好的软件包) 或者 # cd /usr/pkgsrc/ # bmake search key=’$pkg_name’ 3. 安装编译好的软件: # pkg_radd -v $pkg_name 4. 使用pkgsrc来编译安装软件(借用官方文档的例子) # cd /usr/pkgsrc/misc/screen (切换到软件screen所在位置 # bmake install clean (编译安装) 如果想要查看编译选项: # bmake show-options 使用特定选项进行编译(本人没有使用/验证): # bmake PKG_OPTIONS.$pkg_name=”-option1 option2″ install clean 下面的命令优先安装编译好的二进制文件,没有编译好的文件时再使用源文件编译安装: # bmake bin-install clean…

Read More