当前位置:首页 / 分类 it技术 下的文章

0

proftpd启动报错 error: no valid servers configured

it技术 | 2016-08-04 | 个浏览

 proftpd 服务没有启动。 运行启动命令提示错误:

[root@MyVPS proftpd]# service proftpd restart
Shutting down proftpd:                                     [FAILED]
Starting proftpd:                                          [FAILED]



因为proftpd默认没有开启日志的记录,所以/var/log/proftpd/ 这个目录下是空的,所以没法查看错误日志。运行:

proftpd --configtest



可以看到

- warning: unable to determine IP address of 'MyVPS923'
- error: no valid servers configured
- Fatal: error processing configuration file '/etc/proftpd.conf'



根据错误提示,是主机名和IP解析没法对应。



解决方法: 1,在配置文件/etc/proftpd.conf里面增加VPS IP;

DefaultAddress                  173.231.28.140



2,修改主机名 /etc/hosts

vi /etc/hosts
173.231.28.140 MyVPS923 MyVPS
保存退出后就OK了,service proftpd start可以成功启动。
0

proftpd的搭建以及相关配置

it技术 | 2016-08-04 | 个浏览

配置文件在/etc/proftpd.conf,配置文件说明如下:

ServerName                     "ProFTPD Default Installation"

ServerType                     standalone

DefaultServer                  on

分别表示:服务器名称,服务类型和默认服务状态!

后面的服务端口啊什么的我就省去不说了,说最关键的权限控制部分。

 # Set the user and group under which the server will run.

User                           nobody

Group                          nogroup

注意看上面:以什么用户和什么组来运行服务。 

更改为你现有的组和用户,这里为了管理上的方便和安全性上考虑,建议新建一个ftp组和ftp用户。

# To cause every FTP user to be "jailed" (chrooted) into their home

# directory, uncomment this line.

#DefaultRoot ~

是否允许用户进入用户的主目录,注意:可是适用/home替代

# Normally, we want files to be overwriteable.

AllowOverwrite         on

是否具有重写的权利

# A basic anonymous configuration, no upload directories. If you do not

# want anonymous users, simply delete this entire <Anonymous> section.

<Anonymous ~ftp>

 User                         ftp

 Group                        ftp

 # We want clients to be able to login with "anonymous" as well as "ftp"

 UserAlias                    anonymous ftp

 # Limit the maximum number of anonymous logins

 MaxClients                   10

 # We want 'welcome.msg' displayed at login, and '.message' displayed

 # in each newly chdired directory.

 DisplayLogin                 welcome.msg

 DisplayFirstChdir            .message

 # Limit WRITE everywhere in the anonymous chroot

 <Limit WRITE>

   DenyAll

 </Limit>

</Anonymous>



这部分是匿名用户的定义其实也很简单。

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

启动不了,出现如下错误的解决方法

[root@new-host sbin]# ./proftpd

 - IPv4 getaddrinfo 'new-host' error: Name or service not known

 - warning: unable to determine IP address of 'new-host'

 - error: no valid servers configured

 - Fatal: error processing configuration file '/usr/local/proftpd/etc/proftpd.conf'

原因是无法绑定Ip地址。

在配置文件中增加下面这句:

DefaultAddress                 192.168.8.105

再重启服务就可以了!

 

对出现的530 Login incorrect错误,查看日志发现Invalid shell错误

在配置中添加

RequireValidShell             off



 "Fatal: Socket operation on non-socket"

  这通常意味着在 proftpd.conf 配置文件中 ServerType 指令被配置成 inetd

  (超级服务器)方式而不是 standalone(独立服务器) 方式来运行。

 

PROFTPD服务器相关命令



  1、ftpshut:关闭FTP服务,并在/etc下生成文件shutmsg。要重新开放FTP服务,把/etc/shutmsg删除。

  2、ftpcout:FTP服务器在线人数信息显示。

  3、ftpwho:FTP服务器在线人员名单。



几个文件的功能及路径

/usr/local/sbin/proftpd 执行程序

/usr/local/etc/proftpd.conf 设置文件

/usr/local/var/proftpd.pid proftpd做为一个服务的ID号





设定proftpd.conf文件,起动服务



cd /etc/rc.d/rc3.d

ln -s /usr/local/sbin/proftpd S99proftpd



或者

修改/etc/rc.d/rc.local

加上下面这句

/usr/local/sbin/proftpd start

proftpd 怎么查看在线连接的ip

登陆服务器

输入 ftpwho

或ftptop

ftptop可以显示在线人的ip 速度等


//////////////////////////////////////////////////////

ProFTPD configuration

 

先建立ftp和media用户,用户组为nogroup,不允许登录系统

useradd media -d/home/media -gnogroup

增加权限

chown -R media /hoem/media

要使ftp用户登录要修改/etc/ftpuser文件注释掉ftp

 

内网架设FTP服务器的方法:

1. 在proftpd.conf中利用MasqueradeAddress命令将网关的IP地址或域名指定给FTP服务器,例如

MasqueradeAddress myftpserver.vicp.net   ?????

或MasqueradeAddress 12.34.56.78          ?????经使用只能连接不能下载

然后通过PassivePorts命令来限制被动方式下监听的端口的范围,例如

PassivePorts 60000 65534

2. 在网关的端口映射上将第一步中指定的端口范围(例中为60000-65534)以及FTP端口21映射到FTP服务器的内网地址上。

getaddrinfo 'test' error: Name or service not known

- warning: unable to determine IP address of 'test'

- error: no valid servers configured

- Fatal: error processing configuration file '/etc/proftpd.conf'

解决:产生该问题是由于hosts文件里机器名未增加别名引起的。

#vi /etc/host



 

proftpd登陆速度慢的问题的解决

proftpd.conf中增加两行设置:

UseReverseDNS off

IdentLookups off



 

# This is a basic ProFTPD configuration file.

# It establishes a single server and a single anonymous login.

# It assumes that you have a user/group "nobody" and "ftp"

# for normal/anonymous operation.

ServerName   "ProFTPD Default Installation"

ServerType   standalone

#ServerType   inetd

DefaultServer   on

UseReverseDNS off

IdentLookups off

# Port 21 is the standard FTP port.

Port    21

# Umask 022 is a good standard umask to prevent new dirs and files

# from being group and world writable.

Umask    022

# To prevent DoS attacks, set the maximum number of child processes

# to 30.  If you need to allow more than 30 concurrent connections

# at once, simply increase this value.  Note that this ONLY works

# in standalone mode, in inetd mode you should use an inetd server

# that allows you to limit maximum number of processes per service

# (such as xinetd)

MaxInstances   30

# Set the user and group that the server normally runs at.

User  ftp

# nobody

Group  nogroup

# nogroup

# This next option is required for NIS or NIS+ to work properly:

#PersistentPasswd off

SystemLog   /var/log/proftpd.log

TransferLog   /var/log/xferlog

DefaultAddress  192.168.1.254

# Normally, we want files to be overwriteable.

<Directory /*>

  AllowOverwrite  on

</Directory>

<Anonymous ~media>

  RequireValidShell  off

  User   media 

  Group         nogroup 

  MaxClients   50

  DisplayLogin   welcome.msg

  DisplayFirstChdir  .message

<Directory /*>

  <Limit All>

    AllowAll

  </Limit>

</Directory>

</Anonymous>

# A basic anonymous FTP server configuration.

# To enable this, remove the user ftp from /etc/ftpusers.

<Anonymous ~ftp>

  RequireValidShell  off

  User   ftp

  Group         nogroup 

  # We want clients to be able to login with "anonymous" as well as "ftp"

 # UserAlias   anonymous ftp

  # Limit the maximum number of anonymous logins

  MaxClients   50

  # We want 'welcome.msg' displayed at login, and '.message' displayed

  # in each newly chdired directory.

  DisplayLogin   welcome.msg

  DisplayFirstChdir  .message



  # An upload directory that allows storing files but not retrieving

  # or creating directories.

  <Directory /*>

    <Limit READ>

      AllowAll

    </Limit>

  # Limit WRITE everywhere in the anonymous chroot

  <Limit WRITE>

  AllowAll

  </Limit>

    <Limit STOR>

      AllowAll

    </Limit>

  </Directory>

</Anonymous>

0

proftpd启动失败提示unable to determine IP address of “xxx.com”

it技术 | 2016-08-04 | 个浏览

proftpd启动失败提示unable to determine IP address of “xxx.com”



这种proftpd启动失败的原因是无法解析后面主机的IP地址,解决方法是在DNS列表中增加本地回送地址127.0.0.1,表示“xxx.com”由本机自己解析。加入方法:

如果是图形界面,可以直接在网络管理里修改,也可以打开文件/etc/resolv.conf,加入下面语句:nameserver 127.0.0.1

如果是文字界面,用vi 打开/etc/resolv.conf,加入nameserver 127.0.0.1。注意:nameserver要顶格,前面不要留空格。

这样处理后service  proftpd start成功。

但是这并不是最终解决方法,因为系统重启后很有可能这个修改会被系统自动改写。如果系统文件/etc/sysconfig/network-scripts/ifcfg-eth0中没有dns server信息,那么在系统重启后被系统自动使用/etc/sysconfig/network-scripts/ifcfg-eth0中的设置重新设置/etc/resolv.conf后,上述修改就会被清空了。彻底的做法是在/etc/sysconfig/network-scripts/ifcfg-eth0文件中加入dns server的配置,具体修改方法如下:打开/etc/sysconfig/network-scripts/ifcfg-eth0,在末尾加上下面语句,下面xxx用dns server的地址代替:

DNS1=xxx.xxx.xxx.xxx

DNS2=xxx.xxx.xxx.xxx

改完保存后,重启网络服务service network restart,然后再打开 /etc/resolv.conf,就可以发现dns server信息被自定写进去了,无论系统重启后还是手工启动proftpd都可以正常启动,不会再出现unable to determine IP address of “xxx.com”的错误了

0

实现 Typecho 博客彩色标签云效果

it技术 | 2016-07-28 | 个浏览

彩色博客标签云很多博主喜欢,而且不少WP博主在 WordPress 博客上就已经添加上了,昨天去逛博客的时候发现 Typecho 博客也可以实现彩色标签云效果,不愧是俗称的WP简化版。实现 Typecho 彩色标签云效果的方法很容易,只需要在显示标签云的地方添加相关代码即可。下面是博客吧转载过来的教程。

Typecho 彩色标签云效果的实现方法:

  • 在需要显示标签云的地方添加以下代码,保存文件即可
    <?php Typecho_Widget::widget('Widget_Metas_Tag_Cloud')->to($tags); ?> <?php if($tags->have()): ?>     <?php while ($tags->next()): ?>     <a style="color:rgb(<?php echo(rand(0,255)); ?>,<?php echo(rand(0,255)); ?>,
               <?php echo(rand(0,255)); ?>)" href="<?php $tags->permalink();?>">
             <?php $tags->name(); ?></a>
        <?php endwhile; ?> <?php endif; ?>
  • 如果是单页面添加的标签云,则在page.php页面把
    <?php $this->content(); ?>

    替换为以下代码


    <?php if($this->slug=="tags"): ?> <?php Typecho_Widget::widget('Widget_Metas_Tag_Cloud')->to($tags); ?> <?php if($tags->have()): ?>     <?php while ($tags->next()): ?>     <a style="color:rgb(<?php echo(rand(0,255)); ?>,<?php echo(rand(0,255)); ?>,
               <?php echo(rand(0,255)); ?>)" href="<?php $tags->permalink();?>">
             <?php $tags->name(); ?></a>
        <?php endwhile; ?> <?php endif; ?> <?php else: ?> <?php $this->content(); ?> <?php endif; ?>

    新建独立页面,缩略名为tags就可以在独立页面显示彩色标签云的效果了

独立页面实现原理:判断页面缩略为是否是tags,如果是则执行彩色标签云代码,如果不是则显示页面内容。

0
通过ssh端口映射 间接访问远程内网服务器

通过ssh端口映射 间接访问远程内网服务器

it技术 | 2016-07-27 | 个浏览

现在有两台服务器,SERVER A 可通过外网访问,SERVER B (linux/mac/windows)通过局域网与A连接,由于种种原因(防火墙啊、外网限制啊),我们(client)无法直接登录B 或 访问B上的业务系统。

那么问题来了,怎样才能通过 A 来访问 B ?

ssh-port-forword.png

SSH 是一个很好的工具,我们可以通过 SSH 的本地端口映射功能,将远程 B 的端口,映射至本地端口,来实现通过 A 间接访问 B 。

具体命令:

ssh USER@HOST_A-P HOST_A_SSH_PORT-L127.0.0.1:LOCAL_PORT:HOST_B:HOST_B_PORT#USER A 服务器 ssh用户名,如:root#HOST_A 服务器A IP地址(域),如:1.2.3.4#HOST_A_SSH_PORT 服务器A ssh端口,如:22#LOCAL_PORT 映射到本地的端口,如:13306#HOST_B 服务器B IP地址,和A同一内网的内网IP地址,如10.0.0.102)#HOST_B_PORT 服务器B上需要被外网访问到的端口,如3306EG.ssh root@1.2.3.4-P22-L127.0.0.1:13389:10.0.0.102:3389#通过 1.2.3.4 的 ssh 用户 root,将 10.0.0.102服务器的 3389 端口映射到本地的13389端口,从来实现,通过127.0.0.1:13389连接远程win serverssh root@1.2.3.4-P22-L127.0.0.1:13306:10.0.0.102:3306#映射远程 MySQL端口至本地 端口 13306

工具:
1、windows 下 putty
20150721150009.png

20150721145806.png

20150721150537.png

保存此窗口一直打开,使用完成后 exit 退出关闭。

20150721145638.png

2、linux、mac 直接输入命令即可,当然,也可以使用其它的工具,如vssh、zoc等。

0

typecho支持海量数据的Typecho高性能版本发布

it技术 | 2016-07-26 | 个浏览

[导读]现在越来越多的人用Typecho,甚至有部分朋友希望将typecho用于商业网站并期望可以支持大量的文章,因此本人在typecho的基础上优化性能,得到了此HPTypecho,使得Typecho可以完美支持200万数据!
项目目的

由于Typecho是一个用于个人的博客系统,所以其设计之初就不支持过大的数据量。但最近不少朋友向我求助,希望用typecho来搭建数据量较大的商业网站(譬如外贸公司),于是将最近几个网站的优化策略,汇总在此HPTypecho(High Performance Typecho)中。

声明

HPTypecho在Typecho的基础上修改,原则上会尽可能兼容typecho原有的插件和模板。但在实际开发过程中,会通过修改表结构或者程序逻辑来提高性能,所以可能出现部分插件无法兼容的情况。

在表数据量较大的情况下,MySQL表可能会容易损坏,尤其是MyISAM引擎。这不是Typecho代码可以避免的,所以在使用HPTypecho的时候,谨记积极备份数据。

版本更新

v0.8-16.03.15-beta,测试版

建议配置:以200w post为标准,建议主机1G以上内存,50G以上硬盘。

优化分类加载的性能

优化搜索性能,注意目前仅支持英文搜索,暂不支持中文

优化post页加载性能

优化后台性能

请不要将测试版用于生产环境。性能测试报告整理好后再链出来

beta版试用地址:https://github.com/leimiu/typecho/archive/v0.8-16.03.15-beta.zip

2016-07-16更新typecho到hptyecho的转换脚本

git克隆最新代码 https://github.com/leimiu/typecho

进入tools/update2hp目录,根据README.txt的说明,配置脚本并进行数据转换

来源:http://www.typechodev.com/index.php/archives/524/

0

typecho博客程序为啥不能上传附件比如图片失败

it技术 | 2016-07-26 | 个浏览

typecho博客程序为啥不能上传附件比如图片失败

就是 /usr/uploads 这个文件夹设置成 777 权限就好叻。

0
typecho友情链接插件帮助文档

typecho友情链接插件帮助文档

it技术 | 2016-07-25 | 个浏览

最新版本下载地址

Attachment Links.rar (9.1 KB, 下载次数: 7980, 最后修改: 2014-12-14 11:18)
default模板修改实例:

Attachment default_sidebar.rar (0.8 KB, 下载次数: 4093, 最后修改: 2009-12-27 11:55)
更新历史

  • version 1.1.0 at 2013-12-08

  • 修改支持Typecho 0.9
    *

  • version 1.0.4 at 2010-06-30

  • 修正数据表的前缀问题

  • 在Pattern里加上所有的数据表字段
    *

  • version 1.0.3 at 2010-06-20

  • 修改图片链接的支持方式。

  • 增加链接分类功能

  • 增加自定义字段,以便用户自定义扩展

  • 增加多种链接输出方式。

  • 增加较详细的帮助文档

  • 增加在自定义页面引用标签,方便友情链接页面的引用
    *

  • version 1.0.2 at 2010-05-16

  • 增加SQLite支持
    *

  • version 1.0.1 at 2009-12-27

  • 增加显示链接描述

  • 增加首页链接数量限制功能

  • 增加图片链接功能

  • version 1.0.0 at 2009-12-12

  • 实现友情链接的基本功能

  • 包括: 添加 删除 修改 排序
    link.png

功能描述
本版本的友情链接可以支持以下的功能:
1、方便地在侧边栏添加友情链接。
2、支持两种输出方式。一种为函数输出方式,主要用于侧边栏的友情链接,或者模板开发者设计的友情链接模板等。另一种方式为HTML标签式输出,主要方便用户建立自己的友情链接页面。
3、支持文字链接、图片链接、图文混合链接等。内设这三种默认的输出方式,支持自定议设定输出规则。
4、支持链接分类,方便管理。
5、支持增加自定义字段,方便用户做一些个性扩展。

使用帮助
插件的安装:
解压至插件目录后,激活即可。
如果已经安装旧版本的本插件,需要禁用后重新激活。

友情链接插件主要有两种调用方式。
第一种为函数调用法。函数的原型为:
output($pattern=NULL, $links_num=0, $sort=NULL)

其中,$pattern是输出规则。输出规则是Links插件的一种特殊语法。使用输出规则,可以定制出属于自己的链接输出方式。例如:
<li>{name}</li>

这就是一个输出规则的例子。经过插件解析后,{url}将会被替换成链接地址,{title}将会被替换链连描述,{name}将会被替换成链接名称。
Links插件目前支持的输出规则有:
{lid}链接在数据表中存放的ID

{url}将会被替换成链接地址

{sort}链接的分类名称

{title}{description}将会被替换链连描述,两者效果一样

{name}将会被替换成链接名称

{image}将会被替换成链接图片

{user}自定义字段

插件自带三种输出规则:显示文字、显示图片及图文混排。
当$pattern值为NULL或SHOW_TEXT时,则规则为显示文字。
<li>{name}</li>\n

当$pattern值为SHOW_IMG时,则规则为显示图片。
<li><img src="{image}" alt="{name}" /></li>\n

当$pattern值为SHOW_MIX时,则规则为显示图片和文字
<li><img src="{image}" alt="{name}" /><span>{name}</span></li>\n

$links_num是用于控制链接输出的条数的。当$links_num为缺省值0时,表示不进行限制,输出满足条件的所有链接。

$sort用于指定输出的链接类别,以实现链接的分类输出。缺省值NULL表示输出所有类别的链接。

第二种输出为HTML标签调用法。可以在文章或页面中加入HTML标签来实现链接的调用。
其调用原型为:
<links $links_num $sort>$pattern</links>

$links_num $sort $pattern的功能及缺省值与第一种一样。不过,为了$links_num和$sort缺省值的识别,建议$sort采用的命名方式为:以字母开头,仅包括字母和数字。

使用向导:在侧边栏添加友情链接

在0.8默认主题上,已经集成了本插件的调用接口。因此,不需要任何的修改即可直接使用。如果主题没有本插件接口,可按照以下方式进行调用。
最简单的调用方式为:
<?php Links_Plugin::output(); ?>

此时,会列出所有的链接。
如果想调用的为图片链接,则调用方式为:
<?php Links_Plugin::output("SHOW_IMG"); ?>

如果是图文的混合链接,则调用方式为:
<?php Links_Plugin::output("SHOW_MIX"); ?>

如果想限制侧边栏的链接数量,比如说为10个,则可调用:
<?php Links_Plugin::output("SHOW_TEXT", 10); ?>

图片链接依此类推。

如果想列出某个类别的链接,则可调用:
<?php Links_Plugin::output("SHOW_TEXT", 0, "testsort"); ?>

使用向导:建立独立的友情链接页面
建立独立的友情页面,可以直接用类似建立侧边栏的方式,在模板设计阶段,就设计好链接模板。也可以在后台的页面创建进行链接引用。

最简单的引用方式为:
<links></links>

如果想调用的为图片链接,则调用方式为:
<links>SHOW_IMG</links>

如果是图文的混合链接,则调用方式为:
<links>SHOW_MIX</links>

如果想限制侧边栏的链接数量,比如说为10个,则可调用:
<links 10>SHOW_TEXT</links>

图片链接依此类推。
如果想列出某个类别的链接,则可调用:
<links 0 testsort></links>

也可以用
<links testsort></links>

不过,后者要求分类必须以字母开头。

最后要注意的是:分类名只能包含字母及数字!

0

腾讯免费升级win10的提醒怎么关闭?烦死了!!!

it技术 | 2016-07-25 | 个浏览

准备工具(软件):360安全了卫士 (哈哈,腾讯的死敌)
但不确定是否可使用其他软件,至少我亲自操作验证是使用360安全了卫士

第一步:腾讯推送升级WIN10,但又不想升级却又想关闭,重启电脑后右下角还是有升级任务。
:C:\Windows\SysWOW64\config\systemprofile\AppData\Roaming

打开文件夹C:\Windows\SysWOW64\config\systemprofile\AppData\ Roaming
找到Checkmewin10.exe 文件,用360强制把该程序解除占用即可

0

typecho安装后无法进入后台typecho后台404错误解决方法

it技术 | 2016-07-23 | 个浏览

安装完了typecho,能够看到blog,输入用户名密码登录,
地址栏变成index.php/action/login,就404了,用的是军哥LNMP,在vhost里面也加了typecho的rewrite的规则
这是因为伪静态没有工作,所以无法正确跳转。
解决方法是修改你得站点conf,文件地址是
/usr/local/nginx/conf/vhost/youname.com.conf
将include none.conf修改为include typecho.conf。
然后注释掉
try_files $uri =404;这一句。
并将#include pathinfo.conf;前的#号去掉。
再刷新,就可以进入后台了。
其实,在配置域名的时候提示伪静态的时候输入typecho,就不用这么麻烦了。

------------规则如下--------------

server

{
    listen 80;
    #listen [::]:80;
    server_name  ao123.cn www.ao123.cn;
    index index.html index.htm index.php default.html default.htm default.php;
    root  /data/ao123.cn;

    include typecho.conf;
    #error_page   404   /404.html;
   # location ~ [^/]\.php(/|$)
    location ~ .*\.php(\/.*)*$ 
      {
        # comment try_files $uri =404;  to enable pathinfo
        # try_files $uri =404;
        fastcgi_pass  unix:/tmp/php-cgi.sock;
        fastcgi_index index.php;
        include fastcgi.conf;
        #include pathinfo.conf;
    }

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
    {
        expires      30d;
    }

    location ~ .*\.(js|css)?$
    {
        expires      12h;
    }

    access_log off;
}