Showing posts with label VPS. Show all posts
Showing posts with label VPS. Show all posts

Tuesday, May 24, 2016

ssh: connect to host IP port 22: Connection refused

一般我们自己买的VPS, 会把端口22 给禁掉,因为他特别容易受到攻击!

但是,我们在用git clone 代码的时候,会出现这种问题

╰─$ git clone hades@IP:/home/hades/kernelCode.git        128 ↵
Cloning into 'kernelCode'...
ssh: connect to host IP port 22: Connection refused
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.


ssh  默认访问 22 端口

所以我们git  clone  set port 

you can do it like this:

git clone ssh://git@IP:port/home/hades/kernelCode.git


Thanks To:







Monday, May 16, 2016

How to create ShadowSocks in VPS?

You can know about VPS:
http://geekhades.blogspot.com/2016/05/the-infomation-about-vps.html


Shadowsocks服务端搭建


下面的命令,需要一行一行的执行,每输入一行命令,回车执行,如果没有报错,即为执行成功,出现确认提示的时候,输入 y 后,回车即可。每行命令可以复制后在putty里右键粘贴,回车执行。

yum install epel-release
yum update
yum install python-setuptools m2crypto supervisor
easy_install pip
pip install shadowsocks



继续执行命令

vi /etc/shadowsocks.json

此时按 i 键进入编辑模式,putty黑框的左下角会出现 -- INSERT -- 字样,然后一次性复制下面的内容(复制之前记得修改8388和yourpassword为你自己的端口号和密码,此端口号不是你的SSH端口号,而是你在手机或电脑上的shadowsocks客户端连接VPS上搭建的服务端的端口号,范围 1 - 65535 ,只要不和现有的端口号如SSH端口冲突都可以,记下你修改的端口号和密码,待会儿在配置手机和电脑的客户端时还要用到),在putty里右键,此时复制的内容应该已经粘贴到了putty里

----------以下内容为复制内容----------
{
    "server":"0.0.0.0",
    "server_port":8388,
    "local_port":1080,
    "password":"yourpassword",
    "timeout":600,
    "method":"aes-256-cfb"
}
----------以上内容为复制内容----------


复制完成后,按 Esc 键退出编辑模式,此时putty黑框左下角的 -- INSERT -- 字样消失,按下 : 键,输入 wq 后回车,此时文件保存完毕并退出了vi编辑器。(“ : ”的输入方法为“Shift+字母L右侧的分号键”)

继续执行命令

vi /etc/supervisord.conf

此时你应该能看到很多英文内容,按 i 键再次进入编辑模式,putty黑框的左下角会出现 -- INSERT -- 字样,用方向键将光标调整至文件尾部的空行处,然后一次性复制下面的内容,在putty里右键,此时复制的内容应该已经粘贴到了putty里

----------以下内容为复制内容----------
[program:shadowsocks]
command=ssserver -c /etc/shadowsocks.json
autostart=true
autorestart=true
user=root
log_stderr=true
logfile=/var/log/shadowsocks.log
----------以上内容为复制内容----------


复制完成后,按下回车键给文件尾部留出空行,然后按 Esc 键退出编辑模式,此时putty黑框左下角的 -- INSERT -- 字样消失,按下 : 键,输入 wq 后回车,此时文件保存完毕并退出了vi编辑器。

继续执行命令

vi /etc/rc.local

此时你应该能看到几行英文内容,按 i 键再次进入编辑模式,putty黑框的左下角会出现 -- INSERT -- 字样,用方向键将光标调整至文件中部的空行处,然后一次性复制下面的内容,在putty里右键,此时复制的内容应该已经粘贴到了putty里

----------以下内容为复制内容----------
service supervisord start
----------以上内容为复制内容----------


复制完成后,按 Esc 键退出编辑模式,此时putty黑框左下角的 -- INSERT -- 字样消失,按下 : 键,输入 wq 后回车,此时文件保存完毕并退出了vi编辑器。

最后执行命令

reboot

此时,你的VPS重新启动,服务端已经完全配置完毕,putty会弹出一个连接已断开的提示框,关闭即可(不是报错)。


小提醒:搬瓦工的VPS在执行完reboot命令后有时会遇到重启失败的情况,这时候进入控制面板,看一下“Status”是不是“Running”,如果不是的话,点一下“Actions”里的“start”按钮即可。
-------------------------------
别光顾着看教程哦,请不要吝啬你的举手之劳,在帖子底部为本教程+1转发(公开),以帮助更多的人。谢谢!
-------------------------------

Shadowsocks客户端配置


至此,shadowsocks的服务端已经部署完成。剩下的就是下载客户端安装到你的手机和电脑上,记得修改客户端的相关设置保持和你的服务端参数一致哦。

Android客户端下载链接
推荐在Google Play下载,自动适配你的系统版本,以免出现问题。

电脑客户端端下载链接(Windows、Mac OS X)
小提醒:Windows 7用户下载Shadowsocks-win-x.x.x.zip,Windows 8用户下载Shadowsocks-win-dotnet4.0-x.x.x.zip。

iOS客户端端下载链接

Android手机客户端配置示例(以上述服务端配置为例):
注意:已经root手机的小伙伴请勿授予root权限,以免发生未知问题。

服务器:你的VPS IP地址(非0.0.0.0)
远程端口:8388
本地端口:1080
密码:yourpassword
加密方法:AES-256-CFB
路由:绕过局域网及中国大陆地址
全局代理:勾选
UDP转发:建议勾选,如有问题则取消勾选
自动连接:勾选

电脑客户端配置示例(以上述服务端配置为例):
(示例客户端版本:Shadowsocks-win-2.1.6.zip (144.9 kB),系统Windows 7,如遇无法启动的情况,请右键以管理员身份运行)

服务器 IP:你的VPS IP地址(非0.0.0.0)
服务器端口:8388
密码:yourpassword
加密:aes-256-cfb
代理端口:1080
备注:随便写

右键任务栏飞机小图标,勾选“启用代理”、“开机启动”。

注:新版的shadowsocks电脑客户端已经支持一键切换系统代理,无需浏览器插件,内置可编辑的PAC服务,并提供HTTP代理,兼容IE。当然,你也可以继续使用Chrome浏览器配合SwitchySharp代理插件使用,SwitchySharp的具体配置如下图所示:







-------------------------------
以上内容在搬瓦工和DigitalOcean以及Linode三家的VPS上已经全部测试通过,无误。

对于能够成功连接但觉得上网速度慢的小伙伴:

1.请先确认你自己有没有严格按照教程选择对你最快的节点;
2.请将server_port由默认的8388改为其他端口;
3.如果速度还是不满意,那么请将你的VPS更换为DigitalOcean或者Linode(你要始终相信一分价钱一分货)。
4.南方部分地区电信用户的国际出口遭到电信人为限制,如果当地有“国际精品网”业务,开通后可立即完美解决这个问题。如果不愿意给电信交保护费,建议尝试使用DigitalOcean的新加坡节点或者Linode的日本节点,如果速度还是不满意,换移动和联通吧。

看到这里已经折腾成功的小伙伴请别忘记在帖子底部为本教程+1转发(公开),以帮助更多的人哦。谢谢!
-------------------------------

进阶答疑


本答疑会根据大家的反馈以及shadowsocks的不断更新而不定期更新,进阶部分针对已经具备一定基础的非新手,这部分内容遇到任何问题请自行Google。

1.Android 5.0的Shadowsocks为什么耗电量非常高?

Android 5.0的电量统计模块把所有经过shadowsocks代理的流量所产生的耗电量都算在了shadowsocks上,因此看起来会很耗电,比如你Chrome浏览器的电量都被算到了shadowsocks头上,实际上还是很省电的。

2.如何查看当前VPS上的Shadowsocks服务端版本号?

pip show shadowsocks

3.以后如何升级VPS上的Shadowsocks服务端?

pip install --upgrade shadowsocks
reboot

4.我搭建过程中不小心出错,想重新来过,如何重装VPS的系统?

搬瓦工:VPS控制面板里,Install new OS
DigitalOcean:VPS控制面板里,Destroy,Rebuild
Linode:VPS控制面板里,Rebuild

5.我开始选择的节点线路不理想,如何切换机房?

搬瓦工:VPS控制面板里,Migrate to another DC,无需重新搭建Shadowsocks服务端。
DigitalOcean:新建一台你想要机房的VPS,删除原来的,需要重新搭建Shadowsocks服务端。
Linode:新建一台你想要机房的VPS,删除原来的,需要重新搭建Shadowsocks服务端。

6.如何配置多账户?

小提示:Shadowsocks支持一个账户在多个终端同时使用,一般人没有配置多账户的必要。所以如果你看不懂,那你还是别折腾了。

{
    "server":"0.0.0.0",
    "port_password":{
        "8388":"password1",
        "8389":"password2",
        "8390":"password3",
        "8391":"password4"
    },
    "timeout":300,
    "method":"aes-256-cfb"
}

友情提醒:GFW目前是根据流量检测分析匹配统计学模型的方式来判断你是否在翻墙,换言之,你用什么方式翻墙并不重要,重要的是你和服务器之间的流量特征是否像是在翻墙。一旦匹配,既对你进行有罪推论,轻则限速,重则彻底封锁IP。在IPv4地址已经枯竭的今天,可用的美国IP地址会越来越少,所以不建议将自己的账号分享多人使用,以防被封。

7.为什么我的shadowsocks在刚搭建好的时候速度很快用了几天后速度就变慢了甚至网页都很难刷出来?

出现这种情况有多种可能性:

①shadowsocks长时间保持不间断连接会被GFW根据流量模型分析判断出你可能在翻墙(原理见上面的友情提醒),于是进行主动干扰,轻则限速,重则切断你和服务端的连接。解决方法:切换一下你的网络,比如从Wi-Fi切换到3G或者从3G切换到Wi-Fi或者直接断开网络连接,等待10分钟以后,一般即可恢复正常。PS:每天晚上睡觉前关闭手机的网络连接会大大减小此种情况发生的概率;而将自己的VPS分享给多人使用则可能大大增加此种情况发生的概率,请自行斟酌。值得说明的是,VPN最容易受到此类干扰,而shadowsocks作为可自定义端口的私有协议代理已经是最不容易被干扰的翻墙方式之一了。

②机房的QoS策略。解决方法:将shadowsocks服务端的server_port改为常见端口。

③本地线路抽风,你所使用宽带运营商的国际出口出现问题。比如最近南方电信部分地区国际出口严重不稳定(电信人为限制)。解决方法:<1>先尝试一下DigitalOcean的新加坡节点或者Linode的日本节点;<2>如果当地有“国际精品网”业务,开通后可立即完美解决这个问题;<3>如果不愿意给电信交保护费,那么就换家运营商吧,移动和联通都没问题。

④VPS间歇性抽风。无论你选择哪家供应商的VPS,都可能遇到有时候线路抽风、VPS速度慢或者不正常。不同的是,越是价位高的VPS出现抽风情况的可能性越低,越是价位高的VPS出现抽风情况时能保证的最低连接速度越高。出现这种情况的可能性比较低,我手头的无论是搬瓦工还是DigitalOcean以及Linode暂时未遇到线路抽风情况。

⑤搬瓦工的年付VPS为OpenVZ架构,同一母机下的VPS越多,同一时间段使用的人越多,速度就越慢。解决方法:一分价钱一分货,将VPS更换为DigitalOcean或者Linode。

⑥中国的国际出口带宽有限,晚高峰时段可能出现网络拥堵,速度多少会受影响,但这种情况起码白天的速度应该是没问题的。

⑦如果你在VPS上搭建了VPN并且经常使用,尤其是OpenVPN,请立即停止使用。VPN协议特征明显,GFW可以非常容易的检测到,从而盯上你的IP,轻则限速,重则彻底屏蔽。常见VPN协议根据易受干扰的程度从大到小依次为:OpenVPN > PPTP > L2TP > IPSec,尤其是OpenVPN,GFW已经可以实现对其定点清除(同样遭此待遇的还有SSH翻墙)。如果你想让自己VPS的IP快速报废,那么就请尽情的使用搬瓦工的控制面板搭建OpenVPN吧。重要提醒:在不明所以的情况下尽量不要在自己的VPS上搭建其他杂七乱八的翻墙服务尤其是一些早已过时和落后的翻墙方式,翻墙手段宜新不宜旧,只搭一个Shadowsocks是最能保证你翻墙效果和服务器稳定的好策略。

⑧其他:偶尔的速度慢或者连不上都是正常的,但如果经常性的速度奇慢或者连不上那就不正常了。

8.为什么是CentOS?

作为服务器而言,永远都是稳定性压倒一切。而CentOS简单易用,上手快速,业界公认的稳定,且易于维护,是服务器操作系统首选。

9.为什么是Python版?

Python版的Shadowsocks易部署,后期升级维护都非常方便,相当适合新手,支持的特性也最多,稳定性好,运行效率高

10.为什么使用supervisord?

与繁琐的带参执行方式相比,service命令在CentOS系统里使用起来更加灵活方便,比如:

①启动Shadowsocks服务端:service supervisord start
②关闭Shadowsocks服务端:service supervisord stop
③重启shadowsocks服务端:service supervisord restart
-------------------------------

错误排查


已经成功的小伙伴可以直接略过这部分了。

温馨提醒:在怀疑教程的任何一个地方之前,请先怀疑你自己。

服务端搭建成功的唯一衡量标准是在手机或者电脑客户端正确配置后能否顺利的访问被屏蔽的网站,无论是电脑还是手机,只要有一个终端能够成功翻墙即视为服务端搭建成功,出现所谓的可以连接但无法上网其实还是服务端或者客户端的配置有问题,认真按照下面的步骤一步步排错吧。

遇到问题的小伙伴请先认真仔细阅读这两篇文章
上面的链接为vi编辑器基本用法扫盲(新手必读)

最容易出现问题的地方,就是vi编辑器的使用,如果你在执行vi命令后没有按 i 键进入编辑模式就直接复制粘贴,会造成粘贴内容的首行被覆盖,从而导致错误;或者你在粘贴内容后,没有以正确的方式保存退出,同样会出现问题。

如果你在执行完reboot命令后,手机端无法连接,请先确保你的手机端配置正确,并且网络环境良好(参照上面的Android手机客户端配置示例)。然后用putty登入你的VPS后通过以下方式逐步排查:

1.执行命令service supervisord start,执行完毕后如果没有报错,手机端也可以正常连接,那么问题出在vi /etc/rc.local这个环节,请重新检查该文件配置;如果手机端依然无法连接,请继续往下看。

2.执行命令ssserver -c /etc/shadowsocks.json,执行完毕后如果没有报错,手机端也可以正常连接,那么问题出在vi /etc/supervisord.conf这个环节,请重新检查该文件配置;如果手机端依然无法连接,请继续往下看。

3.如果依次进行完以上两步后,手机端依然无法连接,那么问题出在vi /etc/shadowsocks.json环节,请重新检查该文件配置。

4.如果以上三个文件的配置问题都解决后,执行reboot命令后,手机端依然无法连接,那么说明你在教程最开始的5行命令没有正确执行,在搬瓦工和DigitalOcean以及Linode官网的控制面板里重装VPS系统后,按照教程认认真真仔仔细细的重新来过吧。
-------------------------------

尾巴


整个教程到这里就结束了,我按照自己写的内容重新搭建了一遍没有遇到问题,大家有什么问题可以在帖子下面提问,在提问之前请先确保你是严格按照教程一步步认真往下执行了的。关于远程登陆VPS后linux的使用问题最好先Google一下。另外,本教程可能根据大家反馈的情况随时更新,遇到问题请点击下面的链接查看原帖:
http://shadowsocks.blogspot.com/2015/01/shadowsocks.html






Thanks a lot to:

http://shadowsocks.blogspot.com/2015/01/shadowsocks.html

Sunday, May 15, 2016

为什么购买 Linode?


Linode,用过之后不会后悔:Linode - Cloud Hosting for Developers

这些年,把大大小小的美国主机使用了个遍后(包括bluehost,hostmonster,hostgator,dreamhost,justhost等等),终于搬到了linode vps上面。确定Vps之前搜索了很多vps的评论,发现大家对linode很推崇,觉得它的稳定性是其他vps不可比的,虽然贵点,但想想如果不稳定,可能要花很多的时间去折腾,于是就选择了linode。

Linode的基本情况:

Linode专注于提供基于Xen技术的VPS,公司位于美国,在多个数据中心都拥有机房。

London, GB, UK
Newark, NJ, USA
Atlanta, GA, USA
Dallas, TX, USA
Fremont, CA, USA
Tokyo JP

其中,最受中国站长们追捧的,是位于Fremont的机房,因为靠近西海岸,大陆光缆直连,速度非常之快。本站就是选择了这个机房。另外,Dallas机房的中国站长也比较多。Linode 针对亚太地区用户的需求新开辟了日本东京机房。价格不变,速度会更快。如果创业团队要选择 VPS ,面向国内用户的话,建议选择 Linode 东京的机房就可以,访问速度相当不错。

VPS方案

从VPS的Plan方面来看,Linode提供6款不同的配置方案,且价格从20刀/每月(约合RMB130元左右)到320刀/每月不等。最便宜的方案为 Linode 1 GB RAM ,配置为 1 GB 内存,24G空间,2TB月流量,对于个人博客站长来说,还是够用了。

从价格上来说,Linode不算是最便宜的,在Low End Box上能找到一大堆比它便宜的VPS服务器。但我用它的原因不光看中它的价格,我更看中它的性能、速度以及服务。当然,你可能会说,有钱我还不如去买独立服务器呢。不,Linode毕竟是VPS,它再贵也不会贵到哪去。如果你看到20美元每月就觉得贵,那还真是没把其它更重要的因素考虑进去。

选择Linode的理由

Linode的稳定性是有口皆碑的。稳定到你的VPS可以几十天,甚至几个月不宕机,所以你的VPS的uptime会一直很高。另外,Linode的磁盘性能和主机硬件都比较给力,CPU是8核的,16MB二级缓存,最低Plan提供1GB的内存,跑个人站那是绰绰有余了(其实是有些浪费)。由于Linode是基于XEN技术的,有一个最大的特点,就是不容易超卖。俺之前用过几家OpenVZ的,都会因为超卖而影响性能。另外,Linode所有机房的空余VPS,都是可以看到的,这也让大家心里更有底,查看机房空余VPS和套餐信息,可参考附录中的链接。
强大的后台管理功能:这是 Linode 最具特色的功能之一,是我见过的自定义功能最强,自动化最完善的后台管理功能。它可以把存储空间划分成几个硬盘,用来安装不同的 Linux 发行版,然后你可以选择启用哪个硬盘作为线上服务器,同时也可以停机后启动别的硬盘,这样就无需重新安装系统就可以在不同的发行版之间切换,极为方便,而且这一切都不需要人工干预。后台还提供了详细的图形化的数据统计功能,包括 CPU 使用率,流量使用,IO 使用等等Linode 基于 iOs 还提供了 iPhone 版的后台管理工具,这样你可以在 iPhone 手机上直接管理你的 VPS 主机了。
服务器可选机房。Linode有6个机房可选:London、Newark、Atlanta、Dallas、Fremont,Tokyo,对于中国用户来说,选择Fremont会很快,并且服务器更新程序速度也超快,另外东京机房也是很多国内用户的选择,因为从地理位置上讲,东京机房更接近国内,速度更快。但最近有不少用户反应速度有所下降,不过Linode让你可以根据自己的实际网络情况来选择机房,每个机房都有提供100mb的文件下载,让你更清楚的了解自己的网络状况,并选择你认为最合适的机房。各机房100MB文件下载测速地址,可参考附录中的链接。
无缝升级与数据迁移:Lindoe技术很牛的地方,就体现在这里。所有的套餐可以无缝升级到更高一级的套餐,而不用重装系统,对数据无影响。另外,Linode的亮点在于,可以在5个机房之间直接进行VPS的无缝搬迁,并且这一过程是无需人工干预的,也不必担心数据丢失。自动搬迁完毕后,VPS立马就能启动了。
完善的帮助文件,Linode则提供了很简洁清晰的文档,从后台的基本操作到配置,安全问题,相关软件的安装等等,让人一看就明白自己的问题要从哪找答案。对用户很有帮助,甚至其他VPS的用户都从linode的帮助文档里面找答案。
最后,就是客服了。不管什么时间,联系客服之后,一般半小时之内能够给你答复。基本上问题都能联系客服解决。这也是让我非常喜欢Linode的原因之一。
购买Linode

Linode只支持信用卡购买,只要是双币信用卡都能够使用,VISA、MASTER Card都可以,国内大部分银行的都可以。你可以选择月付或者年付(有10%的折扣)。

如果你使用这个连接进入Linode注册并购买VPS,并在注册的时候推荐码一栏天上我的推荐码:dbe76e974b6cd84349fb12335745378b109af018,如果有朋友看了我的文章觉得有用的话,恰好你又要购买 Linode 的 VPS,不妨使用我的推荐码,于己无损,于人受益。

Tuesday, December 15, 2015

Mac SSH 快速登录VPS?

如何使用SSH快速的登录你的 远程的服务器呢?

下面我们一一解答:
Mac  下有一个好用的工具 Iterm2

我们来配置一下如何快速的登录VPS:

1  shell 脚本
#!/usr/bin/expect -f
set username YourUserName    // 设置用户名
set host ***.***.***.***     // 设置主机IP
set password YourPassword    // 设置密码
set time -1                  // 设置永不超时

spawn ssh $username@$host    // 启动一个新进程
expect "*assword:*"          // 进程返回带有assword:字符时
send "$password\r"           // 向进程输入前面设置的密码
interact                     // 允许用户交互

expect eof                   // 结束


注意,你在复制的时候需要将注释全部删掉 如下:
#!/usr/bin/expect -f
set username YourUserName    
set host ***.***.***.***     
set password YourPassword    
set time -1                  

spawn ssh $username@$host    
expect "*assword:*"          
send "$password\r"           
interact                     
expect eof                   


我们定义一个名字 login

然后你随便制定一个目录:


2  配置Iterm2

command + o  (不是0) 出现快捷方式



点击框住的按钮Edit Profiles...,会出现下面的图,点击左下角的加号新建一个Profile,设置快捷键执行刚写好的脚本:





注意: Shortcurt Key 可以设置自己的快捷键, 我设置的是  Control + Command + B  



让我们一起来看看 我们配置是否成功了吗?

打开iterm  按下快捷键



Ok  success!

================================================
如果不成功的话:
1  请看一下 自己的文件中的单词拼写是不是出错了!

2  看一下在iterm中 指定的路径和文件名是不是 拼写错误





参考链接:
1  http://xuquan.me/blog/Mac-iTerm-configuration.html




Monday, November 30, 2015