openBSD简单入门

//**安全是一个过程,而不是一个产品,安全比性能要重要。**//

-----------------------------------

一、前言

二、环境

三、配置网络及镜像源

四、packages安装

五、添加普通用户

六、ports安装

-----------------------------------

一、前言

OpenBSD是一个多平台的,基于4.4BSD的类UNIX操作系统,是BSD衍生出的三种免费操作系统(另外两种是NetBSD和FreeBSD)之一,被称为世界上最安全的操作系统。专案领导人 Theo de Raadt在1995年发起了OpenBSD 专案,希望创造一个注重安全的操作系统。

二、环境

系统:openBSD5.5

官方网站 http://www.openbsd.org/

镜像源(找不到中国的镜像站点,随便选了一个)

安装系统基本是傻瓜式的(系统可以在镜像站点下载,找到install55.iso即可),只要能稍微看懂英语的,都可以解决的,在此,不再描述具体安装过程。安装完毕后一定要重启才能使用系统。

三、配置网络及镜像源

1.配置网络,在虚拟机中安装,网络适配器选择桥接,我用TP-link的路由器使用dhcp分配地址。

如果没有自动获得IP地址,可以使用dhclient vic0获得。

# dhclient vic0
DHCPREQUEST on vic0 to 255.255.255.255 port 67
DHCPACK from 192.168.1.1 (b0:48:7a:1f:a5:80)
bound to 192.168.1.101 -- renewal in 3600 seconds.
# ping www.baidu.com
PING www.a.shifen.com (61.135.169.125): 56 data bytes
64 bytes from 61.135.169.125: icmp_seq=0 ttl=55 time=23.993 ms
64 bytes from 61.135.169.125: icmp_seq=1 ttl=55 time=19.759 ms
--- www.a.shifen.com ping statistics ---
2 packets transmitted, 2 packets received, 0.0% packet loss
round-trip min/avg/max/std-dev = 19.759/21.876/23.993/2.117 ms

2.配置镜像源

# vi /root/.profile
export PKG_PATH=ftp://mirrors.nycbug.org/pub/OpenBSD/5.5/packages/i386/   //重启(没有source命令)

四、packages安装(和yum非常相似)

# echo $SHELL       //默认ksh
/bin/ksh
# pkg_add -v bash   //测试安装bash,大概有8471个软件包可以使用。
quirks-1.113: ok
bash-4.2.45p0:libiconv-1.14p1: ok
bash-4.2.45p0:gettext-0.18.2p4: ok
Shell /usr/local/bin/bash appended to /etc/shells
bash-4.2.45p0: ok
# pkg_info
bash-4.2.45p0       GNU Bourne Again Shell
gettext-0.18.2p4    GNU gettext
libiconv-1.14p1     character set conversion library
quirks-1.113        exceptions to pkg_add rules

五、添加用户

# adduser
Use option ``-silent‘‘ if you don‘t want to see all warnings and questions.
Reading /etc/shells
Check /etc/master.passwd
Check /etc/group
Ok, let‘s go.
Don‘t worry about mistakes. There will be a chance later to correct any input.
Enter username []: nuo
Enter full name []: Nuo Wei
Enter shell csh ksh nologin sh [ksh]:
Uid [1000]:
Login group nuo [nuo]:
Login group is ``nuo‘‘. Invite nuo into other groups: guest no
[no]:
Login class authpf bgpd daemon default staff [default]:
Enter password []:
Enter password again []:
Name:        nuo
Password:    ****
Fullname:    Nuo Wei
Uid:         1000
Gid:         1000 (nuo)
Groups:      nuo
Login Class: default
HOME:        /home/nuo
Shell:       /bin/ksh
OK? (y/n) [y]:
Added user ``nuo‘‘
Copy files from /etc/skel to /home/nuo
Add another user? (y/n) [y]: n
Goodbye!
# ls -l /home
total 4
drwxr-xr-x  3 nuo  nuo  512 May 10 19:36 nuo

# su - nuo          //切换用户,并改变shell
$ chsh -s bash
$ exit              //退出并重新登录
# su - nuo
-bash-4.2$ ls -la   //shell已改变
total 36
drwxr-xr-x  3 nuo   nuo    512 May 10 19:36 .
drwxr-xr-x  3 root  wheel  512 May 10 19:36 ..
-rw-r--r--  1 nuo   nuo     22 May 10 19:36 .Xdefaults
-rw-r--r--  1 nuo   nuo    773 May 10 19:36 .cshrc
-rw-r--r--  1 nuo   nuo     94 May 10 19:36 .cvsrc
-rw-r--r--  1 nuo   nuo    398 May 10 19:36 .login
-rw-r--r--  1 nuo   nuo    113 May 10 19:36 .mailrc
-rw-r--r--  1 nuo   nuo    218 May 10 19:36 .profile
drwx------  2 nuo   nuo    512 May 10 19:36 .ssh
-bash-4.2$ su -              //切换到root用户
Password:
you are not in group wheel   //默认是无法切换的,因为nuo用户不在wheel组中。
Sorry
-bash-4.2$ cat /etc/group |grep wheel
wheel:*:0:root
# usermod -G wheel nuo       //在root用户下将nuo用户添加到wheel组中。
# cat /etc/group |grep wheel
wheel:*:0:root,nuo
# su - nuo                   //再次切换,成功!
-bash-4.2$ su -
Password:
# who am i
root     ttyp1    May 10 19:51   (192.168.1.100)
# vi /etc/ssh/sshd_config
42 #PermitRootLogin yes      //默认root是可以远程的。但是这样是不安全的。
所以创建一个普通用户,首先以一个普通用户登录,如果需要root权限,su到root用户。
42 PermitRootLogin no       //更改默认选项
# /etc/rc.d/sshd restart    //重启ssh
sshd(ok)
sshd(ok)

六、ports安装(即源码安装,编译安装apache为例)

# cd /tmp/
# ftp ftp://mirrors.nycbug.org/pub/OpenBSD/5.5/ports.tar.gz    //下载ports
# ls
.ICE-unix      .X11-unix      aucat          ports.tar.gz
# cd /usr/
# tar -zxvf /tmp/ports.tar.gz                                 //时间挺长的,耐心等待。
# which httpd
/usr/sbin/httpd
# /usr/sbin/httpd -v
Server version: Apache/1.3.29 (Unix)  //版本太老了,可能由于许可问题,一直未更新。
# pwd
/usr
# ls
X11R6   games   lib     libexec local   obj     sbin    src
bin     include libdata lkm     mdec    ports   share   xobj
# cd /usr/ports/
# ls              //安装httpd在www目录下编译安装,安装mysql在databases目录下编译安装...
.cvsignore     biology        emulators      lang           productivity
CVS            books          fonts          mail           security
INDEX          cad            games          math           shells
Makefile       chinese        geo            meta           sysutils
README         comms          graphics       misc           telephony
archivers      converters     infrastructure multimedia     tests
astro          databases      inputmethods   net            textproc
audio          devel          japanese       news           www
base           editors        java           plan9          x11
benchmarks     education      korean         print
# cd www/
# cd apache-httpd/
# ls
CVS      Makefile distinfo patches  pkg
# pwd
/usr/ports/www/apache-httpd
# make install        //安装其它源码也这样,进入到相对应的目录,make install即可
编译安装近两个小时,主要是下载太慢,可能是由于国外镜像站点原因吧。
apache-httpd-2.2.26: ok       //最新版本
The following new rcscripts were installed: /etc/rc.d/httpd2
See rc.d(8) for details.
--- +apache-httpd-2.2.26 -------------------
This is the official httpd distributed by the Apache Server Project,
provided as a port for those who, for various reasons, need to run
version 2.
OpenBSD provides a custom Apache server, httpd(8), in the base system
which has been audited for security and may run in a chroot(2)
environment.  Users are STRONGLY encouraged to use the system httpd
rather than this port.

# cd /usr/ports/
# cd packages/i386/all/    //apache安装目录
# ls
apache-httpd-2.2.26.tgz  bzip2-1.0.6p0.tgz        help2man-1.41.1p0.tgz
apr-1.4.6p3.tgz          db-4.6.21p0v0.tgz        metaauto-1.0p1.tgz
apr-util-1.4.1p2.tgz     gmake-4.0p0.tgz          pcre-8.33.tgz
autoconf-2.68p0.tgz      groff-1.22.2p4.tgz
# pkg_info
apache-httpd-2.2.26 apache HTTP server
apr-1.4.6p3         Apache Portable Runtime
apr-util-1.4.1p2    companion library to APR
autoconf-2.68p0     automatically configure source code on many Un*x platforms
bash-4.2.45p0       GNU Bourne Again Shell
bzip2-1.0.6p0       block-sorting file compressor, unencumbered
db-4.6.21p0v0       Berkeley DB package, revision 4
gettext-0.18.2p4    GNU gettext
gmake-4.0p0         GNU make
groff-1.22.2p4      GNU troff typesetter
help2man-1.41.1p0   generates simple manual pages from program output
libiconv-1.14p1     character set conversion library
metaauto-1.0p1      wrapper for gnu auto*
pcre-8.33           perl-compatible regular expression library
quirks-1.113        exceptions to pkg_add rules
# cd /usr/local/sbin/         //命令路径
# ls
ab             dbmmanage2     htdbm          httxt2dbm
apachectl2     envvars        htdigest2      logresolve2
apxs2          envvars-std    htpasswd2      rotatelogs2
checkgid       htcacheclean   httpd2         suexec2
# ./apachectl2 start         //启动apache
# ps -aux |grep http
root     14554  0.0  0.6  3676  6048 ??  Ss    10:36PM    0:00.29 /usr/local/sbin/httpd2 -k start
_apache2 15506  0.0  0.4  3692  4076 ??  S     10:36PM    0:00.05 /usr/local/sbin/httpd2 -k start
_apache2 16299  0.0  0.4  3692  4084 ??  I     10:36PM    0:00.11 /usr/local/sbin/httpd2 -k start
_apache2 16576  0.0  0.4  3692  4080 ??  I     10:36PM    0:00.08 /usr/local/sbin/httpd2 -k start
_apache2  8926  0.0  0.4  3692  4080 ??  I     10:36PM    0:00.08 /usr/local/sbin/httpd2 -k start
_apache2   389  0.0  0.4  3692  4076 ??  I     10:36PM    0:00.07 /usr/local/sbin/httpd2 -k start
# cd /var/apache2/           //apache文档目录
# ls
cgi-bin error   htdocs  icons   logs
# ls htdocs/
index.html

openBSD简单入门,布布扣,bubuko.com

时间: 2024-10-29 19:50:49

openBSD简单入门的相关文章

正则表达式简单入门

 正则表达式简单入门    正则表达式在平常编程中有着大量的应用,对于任何一个想学习编程的人来说,正则表达式是一个必须掌握的知识. 废话不多说,下面先对正则表达式做一个简单的入门介绍,在后续的文章中,将会进行详细的介绍.    一.元字符 元字符一共有12个:$ ( ) [ { ? + * . ^ \ | 元字符有特殊的含义,如果要使用其字面值,则必须对其进行转义. 如: \$  \*  \( 等等 二.控制字符或不可打印字符 \a  警报 \e  退出 \f  换页 \n  换行 \r 

程序员,一起玩转GitHub版本控制,超简单入门教程 干货2

本GitHub教程旨在能够帮助大家快速入门学习使用GitHub,进行版本控制.帮助大家摆脱命令行工具,简单快速的使用GitHub. 做全栈攻城狮-写代码也要读书,爱全栈,更爱生活. 更多原创教程请关注头条号.每日更新.也可以添加小编微信:fullstackCourse.一起交流,获取最新全栈教程信息.因为FQ原因,不能下载客户端的同仁,可以关注后回复“GitHub客户端”获取安装软件. 上篇教程:GitHub这么火,程序员你不学学吗? 超简单入门教程 干货 GitHub概念部分出现了一丝纰漏.为

iBatis简单入门教程

iBatis 简介: iBatis 是apache 的一个开源项目,一个O/R Mapping 解决方案,iBatis 最大的特点就是小巧,上手很快.如果不需要太多复杂的功能,iBatis 是能够满足你的要求又足够灵活的最简单的解决方案,现在的iBatis 已经改名为Mybatis 了. 官网为:http://www.mybatis.org/ 搭建iBatis 开发环境: 1 .导入相关的jar 包,ibatis-2.3.0.677.jar .mysql-connector-java-5.1.6

Asp.Net MVC学习总结(一)——Asp.Net MVC简单入门

出处:http://www.cnblogs.com/SeeYouBug/p/6401737.html 一.MVC简单入门 1.1.MVC概念 视图(View) 代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但有可能为XHTML.XML和Applet. 模型(Model) 表示用户对其数据的操作的一个封转.可以分为视图模型(view model)和领域模型(domain models),视图模型就是在视图与控制器之间传输数据的一个封转,而领域模型就是业务逻辑,后台数据模型等的一个集

Java日志系统---Logger之简单入门

Java 中自带的日志系统,今天抽空了解了一点,算是入了门,所以将自己的一些心得记录下来,以备日后查看,有兴趣的朋友,看到此文章,觉得有错误或需要添加的地方,请在下方评论留言,大家可以共同进步,谢谢:) Java中关于日志系统的API,在 java.util.logging 包中,在这个包中,Logger类很重要. Logger类是用来记录 某个级别的日志消息: 级别共分为以下几类,从上倒下,级别依次下降: SEVERE(严重)------级别最高 WARNING(警告) INFO CONFIG

响应式网页设计简单入门(强烈推薦!!!!)

响应式网页设计简单入门 Overview: 构造基本的HTML页面 动态加载样式表 Viewport 字体缩放 侧边栏 导航菜单 图片自适应 其他 总结 说到响应式网页设计(Responsive web design),最近在谷歌加上碰到个奇葩贴子,通过一个原始到无法再简单的网页Motherfucking Website及满屏幕的fuck道出了网页设计的真谛,这孩子不是个激进分子就是个报复社会型的货没错,虽然整篇文章就像是泼妇骂街,但我特么是笑着读完的.. 统计了下全文共用Fuck (包括fuc

Android HttpGet() 请求简单入门实例

HttpClient httpclient = new DefaultHttpClient(); String url = "http://example.com"; List<NameValuePair> params = new ArrayList<NameValuePair>(); params.add( new BasicNameValuePair( "param", "value" ) ); URI uri =

delphi指针简单入门

delphi指针简单入门:         看一个指针用法的例子:     1         var     2             X,   Y:   Integer;       //   X   and   Y   整数类型     3             P:   ^Integer;           //   P   指向整数类型的指针     4         begin     5             X   :=17; //   给   X   赋值     6

windows简单入门(1)

1.1 windows系统的关机 退出所有正在运行的程序,然后点击"关闭计算机"键关机,下面是"关闭计算机"的操作方法:                    图1-2 图1-1 1.2鼠标的操作 ① 鼠标指向一个图标 操作:移动鼠标,将其指针放到屏幕上某一对象上或位置 举例:将鼠标指针从屏幕中的某一处移动到"我的电脑"上,这样就指向了"我的电脑". ② 单击鼠标 操作:将鼠标指向某一对象后,快速按一下鼠标左键,并立即释放,这