Press "Enter" to skip to content

Month: December 2007

我的SSH安全设定

分享一下自己的SSH安全设定(本文基于Ubuntu 18.04 64bit). 大概方面有3个: 1, 建立普通用户zhang3, 并授予sudo权限; 2, 禁止root登陆; 3, 禁用密码登陆, 使用pub key登陆.

1, 建立普通用户zhang3, 并授予相关权限

平时主要使用zhang3用户来登陆, 因此需要客户端的pub key交给zhang3, 让zhang3做好免密码登陆相关设定.

user=zhang3
useradd -m -s /bin/bash $user
passwd $user

# 授予用户sudo权限
echo "$user ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/$user

# 上传公钥, 这里我将公钥上传到$user用户的home目录
cd /home/$user
rz -bey           # 选择 id_rsa.pub 上传

su - $user
mkdir ~/.ssh; \
cat id_rsa.pub >> ~/.ssh/authorized_keys && \
chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys

2, 设定SSH相关权限

sudo sed -i 's/^\#\?PermitRootLogin.*/PermitRootLogin no/g' /etc/ssh/sshd_config
sudo sed -i 's/^\#\?PubkeyAuthentication.*/PubkeyAuthentication yes/g' /etc/ssh/sshd_config
sudo sed -i 's/^\#\?PasswordAuthentication.*/PasswordAuthentication no/g' /etc/ssh/sshd_config
sudo sed -i 's/^\#\?PermitEmptyPasswords.*/PermitEmptyPasswords no/g' /etc/ssh/sshd_config
sudo sed -i 's/^\#\?MaxAuthTries.*/MaxAuthTries 3/g' /etc/ssh/sshd_config

解释:
PermitRootLogin no                 #禁止root远程登陆
PubkeyAuthentication yes           #启用pubkey登陆
PasswordAuthentication no          #禁用密码登陆
PermitEmptyPasswords no            #禁止空密码
MaxAuthTries                       #允许最大失败次数,默认为6


# 也可以最后再确认一下
egrep '^(PermitRoot|Pubkey|Password|MaxAuthTries)' /etc/ssh/sshd_config
PermitRootLogin no
PubkeyAuthentication yes
PasswordAuthentication no

有些老版本的sshd_config里面可能会有一项”RSAAuthentication”, 该项也表示启用pub key登陆, 但这是第1代ssh通讯协议使用的配置项, 该选项在CentOS 7及ubuntu 16.04版本以上均已弃用(如果强行加上此选项会收到一个”Deprecated option RSAAuthentication”的提示), 也可以在sshd_config里添加一项”Protocol 2″来表示使用第几代通讯协议.

2024.05.15 补充

由于操作比较麻烦, 要输入的命令比较多, 还要不停切换用户. 索性写成 Ansible playbook 好了

sudo apt update
sudo apt install git ansible

git clone https://gist.github.com/ce794b18a58bccb432ed151abcb242ca.git

cd ce794b18a58bccb432ed151abcb242ca

vim sys.init.yaml       # 改掉其中的 USERNAME 和 Pubkey 内容

ansible-playbook ./sys.init.yaml

参考文档
https://stackoverflow.com/questions/56436906/how-to-cleanly-edit-sshd-config-for-basic-security-options-in-an-ansible-playboo

2 Comments

新手站长请进!网站快速列入Google的最佳方法

  在忙活了一段时间后,网站建成了,接下来作为一个新站站长的你首先想到要做的可能就是让自己的网站早点被搜索引擎收录,早点让访问者通过搜索引擎找到自己的网站,获得一些流量。实际上这也不是什么很困难的事。如果方法对头的话,一般2-4天就可被Google收录。但方法不当的话,十天半月,甚至一两个月也列不上。

  一般的方法,大家首先想到的可能是登陆各大搜索引擎,一个个向搜索引擎提交自己的网站URL。这种方法已经过时了,现在已是最被动,最没效的方法。 GoogleGuy也曾说过,向Google提交URL的重要性在降低,这种提交的吸引力对于Google越来越小。对于这部分提交Google的数据更新非常之慢。如果你只使用这种方法可能两个月也列不到Google上。

  还有就是向一些公开目录提交。对于一个新的网站,内容还不多,想列入这些大型目录会是相当一个漫长的过程,可能需要很长时间。因此想通过这个被Google等搜索引擎快速找到,也是不可取的。当然你提交一下,等着慢慢被收录也是可以的。

1 Comment

超小flv地址抓取软件,不足100K!还能抓音乐视频呢!

目前抓取那些视频网站的播放地址,可用的软件很多,比如“维棠FLV视频下载软件”,才500多K,还有比如“UUmeFLVSpy”也很棒。
今天给大家推荐的这款,先来说说它的优点:
1,不足100K; 2,能抓取的格式有
.mp2.mp3.mp4.ra.rm.ram.rmvb.avi.asf.wm.wma.wmp.wmv.swf
.m1v.mpeg.mpg.mpa.mid.rmi.midi.mov.amr.exe.chm.rar.zip.flv
怎么样,强大吧!不信?下下来试试吧!界面预览:

下载地址:http://www.fileden.com/files/2006/12/23/547798/blog/getmusic.rar
注意,一定要先点“开始”,然后再打开视频播放的网页。

1 Comment

网页版PPlive源码!将PPlive请进网站!

同样也是参考了众多网上流传的代码,最后归纳而来!
代码如下,请朋友们自己修改。

<HTML>
<body>

<table border="0" cellpadding="0" cellspacing="0"><tr><td><object id="PPLiveP" style="width:540px;height:450px;"   classid="CLSID:18226BF8-DC0B-4D81-80E9-A41AE37BB73A"   codeBase="http://download.pplive.com/webinstall/install.CAB#version=1,5,34">
<param name="ControlVisible" value="0" />
<param name="ShowP2P" value="1" />
<param name="ShowBufferAD" value="1" />
<param name="DBClickFullScreen" value="1" />
<param name="ShowGall" value="1" />
<param name="ShowPlayCtrl" value="1" />
<param name="URL" value="" />
<param name="ShowMenu" value="1" />
</object>
</td><td><object style="width:200px ; height:450px" classid="CLSID:70CACCCA-8B83-4BCB-B2D1-188E9A495527"></object></td></tr></table><script type="text/javascript">var PPlivePlayer=document.getElementById("PPLiveP");window.onunload=function(){try{PPlivePlayer.Destroy()}catch(e){}}</script>
<!–其中width:540px; height:450px是用来设定播放窗口宽高的,width:200px ; height:450px是用来设置播放列表宽高的,您可以根据实际情况自己设置–>

</body>
</HTML>

3 Comments

网页版PPStream源码!将PPStream请进网站!

本代码对照了网络上一位高手的代码,
全套代码如下,大家可以根据自己的要求自由修改。
注意以前的代码都有点问题,猪猪找了好久,终于在12月30号找到了一个好的,现在好了,没有问题了。大家请放心使用。

<HTML>
<body>

<head>
<script>
window.onload=function()
{
powerlist.SetPlayer(powerplayer.getHWND());
}
</script>
</head>

<OBJECT CLASSID="clsid:20C2C286-BDE8-441B-B73D-AFA22D914DA5" CODEBASE=http://download.ppstream.com/powerplayersetup.exe
  standby="加载频道列表中…" WIDTH=208 HEIGHT=460 ID="powerlist"> <!–大小可依网页需要调整–>
</OBJECT>

<OBJECT CLASSID="clsid:5EC7C511-CD0F-42E6-830C-1BD9882F3458" CODEBASE=http://download.ppstream.com/powerplayersetup.exe standby="加载播放器中…" WIDTH=580 HEIGHT=460 ID="powerplayer"> <!–大小可依网页需要调整–>
<param name="ShowControl" value="1"><!–显示播放控制按钮,1为显示, 0为不显示–>
<param name="src" value="ppstream://ppstream.com:9004/X7Y3ZPQPM37HGOMNVE6AA3CTG3MWASFU"><!–频道地址可自由指定–>
<param name="autostart" value="0"><!–是否打开网页立即自动播放, 1为自动播放,0为不自动播放–>
</OBJECT>
</center>

</body>
</HTML>

2 Comments

python逐行读取文件内容

文件1.txt内容:

zhaoyun 85 87
guanyu 87 88
liubei 90 86

方法1: 使用read()方法

特点: 读取整个文件, 将文件内容放到一个字符串变量中
缺点: 如果文件非常大, 尤其是大于内存时, 无法使用read()方法
[code lang=”python”]
>>> a = open("1.txt")
>>>
>>> a.read() #read()直接读取字节到字符串中, 包括了换行符
‘zhaoyun 85 87\nguanyu 87 88\nliubei 90 86\n’
>>>
>>> print a.read() #返回值为空, 说明调用完read()方法以后变量为空了

>>>
>>> a = open("1.txt")
>>>
>>>
>>> print a.read() #调用print方法则自动转换了换行符
zhaoyun 85 87
guanyu 87 88
liubei 90 86

#另一种写法

with open("1.txt") as f:
print f.read()
#运行结果
zhaoyun 85 87
guanyu 87 88
liubei 90 86

1 Comment

站长常用工具大集合

一,根据IP反查域名(看看此IP上有多少域名)
http://ip.wen.la(中文,此网站有时会出现打不开的情况)
http://www.yougetsignal.com/tools/web-sites-on-web-server(英文)

 

二,查询收录情况
http://indexed.webmasterhome.cn/?domain=www.zhukun.net (把后面的www.zhukun.net换成你要查询的网址)

这里仅列出本人常用的工具,更多更全的工具,请访问http://www.zhukun.net/blog/article.asp?id=122

Leave a Comment