分类 linux 下的文章

最近需要拖第三方公司开发团队的代码,发现url无效,
ssh远程连接返回:Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password)
初始怀疑是权限问题,reporter权限,改到developer,依然获取不到,ssh远程连接还是拒绝。
http连接可以拉取到代码,很显然,ssh连接拒绝是部署服务器出现的问题导致的,解决办法是在部署服务器开通ssh权限。
CentOS 6.3系统下,用户user的home目录:/home/user的权限变成了777,造成不能正常登陆SSH,报如下错误:Permission denied (publickey,gssapi-with-mic)
SSH对公钥、私钥的权限和所有权的要求是非常严格的,总结如下:

1、下面两个目录的所有权必须是user,所属组也应该是user,权限必须为700

homeuser

homeuser.ssh

2、下面公钥文件的所有权必须是user,所属组也应该是user,权限必须为644

homeuser.sshauthorized_keys

3、下面私钥文件的所有权必须是user,所属组也应该是user,权限必须是600

homeuser.sshid_rsa

ssh命令网络安全
ssh命令是openssh套件中的客户端连接工具,可以给予ssh加密协议实现安全的远程登录服务器。

语法
ssh(选项)(参数)
选项
-1:强制使用ssh协议版本1;
-2:强制使用ssh协议版本2;
-4:强制使用IPv4地址;
-6:强制使用IPv6地址;
-A:开启认证代理连接转发功能;
-a:关闭认证代理连接转发功能;
-b:使用本机指定地址作为对应连接的源ip地址;
-C:请求压缩所有数据;
-F:指定ssh指令的配置文件;
-f:后台执行ssh指令;
-g:允许远程主机连接主机的转发端口;
-i:指定身份文件;
-l:指定连接远程服务器登录用户名;
-N:不执行远程指令;
-o:指定配置选项;
-p:指定远程服务器上的端口;
-q:静默模式;
-X:开启X11转发功能;
-x:关闭X11转发功能;
-y:开启信任X11转发功能。
参数
远程主机:指定要连接的远程ssh服务器;
指令:要在远程ssh服务器上执行的指令。
相关命令
ssh-copy-id
nmap
ssh-add
sftp
ssh-agent
sftp-server
iptstate
ssh-keygen
ssh-keyscan
sshd
命令直达(输入完整命令)

模糊搜索(输入关键词)
Linux下载
Ubuntu下载
CentOS下载

ssh-add命令网络安全
ssh-add命令是把专用密钥添加到ssh-agent的高速缓存中。该命令位置在/usr/bin/ssh-add。

语法
ssh-add [-cDdLlXx] [-t life] [file ...]
ssh-add -s pkcs11
ssh-add -e pkcs11
选项
-D:删除ssh-agent中的所有密钥.
-d:从ssh-agent中的删除密钥
-e pkcs11:删除PKCS#11共享库pkcs1提供的钥匙。
-s pkcs11:添加PKCS#11共享库pkcs1提供的钥匙。
-L:显示ssh-agent中的公钥
-l:显示ssh-agent中的密钥
-t life:对加载的密钥设置超时时间,超时ssh-agent将自动卸载密钥
-X:对ssh-agent进行解锁
-x:对ssh-agent进行加锁
实例
1、把专用密钥添加到 ssh-agent 的高速缓存中:

ssh-add ~/.ssh/id_dsa
2、从ssh-agent中删除密钥:

ssh-add -d ~/.ssh/id_xxx.pub
3、查看ssh-agent中的密钥:

ssh-add -l

linux命令大全
https://man.linuxde.net/ssh-add

linux系统是相对安全的,查看自己系统的连接状态的命令:
(我们看到当前有两个root在远程连接服务器)
last
w

Linux使用netstat命令查看并发连接数

我们的网站部署在linux的服务器上,特别是web服务器,我们可能有时候做为运维人员,肯定是要查看网站的并发连接数是不是达到瓶颈等,所以在linux下,我们如何查看服务器的并发连接数呢?使用以下命令即可分组查看各种连接状态哦:

netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
复制代码
解释:

返回结果示例:
LAST_ACK 5 (正在等待处理的请求数)
SYN_RECV 30
ESTABLISHED 1597 (正常数据传输状态)
FIN_WAIT1 51
FIN_WAIT2 504
TIME_WAIT 1057 (处理完毕,等待超时结束的请求数)

状态:描述
CLOSED:无连接是活动的或正在进行
LISTEN:服务器在等待进入呼叫
SYN_RECV:一个连接请求已经到达,等待确认
SYN_SENT:应用已经开始,打开一个连接
ESTABLISHED:正常数据传输状态
FIN_WAIT1:应用说它已经完成
FIN_WAIT2:另一边已同意释放
ITMED_WAIT:等待所有分组死掉
CLOSING:两边同时尝试关闭
TIME_WAIT:另一边已初始化一个释放
LAST_ACK:等待所有分组死掉
复制代码
使用这上面的命令是可以查看服务器的种连接状态,其中ESTABLISHED 就是并发连接状态的显示数的了。如果你不想查看到这么多连接状态,而仅仅只是想查看并发连接数,可以简化一下命令,即:

netstat -nat|grep ESTABLISHED|wc -l
1164
这个返回的数字就是当前并发的连接数的了。

方法一:

工具:“GDebi”,这是一个用于安装你自己手动下载包的GUI程序,它会根据软件仓库这一实用的特性,来解算依赖关系。也可以命令行模式运行,其功能和GUI模式下完全一样。

  (1)打开“终端”,输入命令: sudo apt-get install gdebi,然后按enter执行来安装这款小工具“gdebi”。
 正常情况下终端会提醒你按(Y/N)来决定是否真的安装,我们输入“Y”,然后按回车键继续。这里小编已经安装过啦~~~

(2)安装完成后,我们接着在终端中继续输入: cd 下载 (这里是指定搜狗文件所在的目录),如果你不确定可以继续输入:ls 就可以查看当前目录中的文件啦。

(3)

输入:sudo gdebi sogoupinyin.deb (这里小编嫌文件包名称太长就该啦),再按enter执行后,等待搜狗安装完成。

如果期间提示“您是否想要安装这个软件包(Y/N)”,那么你输入“Y”然后按回车键就可以了。

(4) 安装完成后,我们点击系统屏幕右上角的那个齿轮图标,然后点击“注销”,注销或重启一下系统就好啦。

方法二:
转载 http://blog.csdn.net/troylemon/article/details/52123758

方法三:
转载https://jingyan.baidu.com/article/08b6a591cb06f114a8092209.html

注意::
本来想先移除ibus,但是在之后发现如果直接使用下面的命令
sudo apt-get remove ibus
移除ibus将导致系统某些地方不正常的问题,例如系统设置项缺失.
所以保留ibus吧.(千万不要移除ibus,否则后果很严重。系统页面什么都会没有,如系统缺项)

若果不小心删除了,我在另一篇文章有解决的方法。http://blog.csdn.net/wza_1992/article/details/78003060

多在windows上编程的童鞋可能习惯于感受tab键为4个空格的长度,不过在linux系统中一般默认设定tab键为8个空格长度来显示。事实上tab也确实是8个空格的长度。不过由于习惯问题,某些童鞋还是希望在linux上也感受tab键为4个空格长度的显示,因为vi编辑器在linux上是那么地众所周知,所以下面就开始谈如何设定vim编辑器对tab键的显示长度问题。

关于vim对tab键的设定问题,我在网上也查过一些资料,不过大部分都解释的不清楚,只是照着其设定的代码copy一份到配置文件中,对每一行代码具体所起的作用则不甚清楚,本篇章根据国外一篇文章对tab键设定的讲述加之自己亲自在centos7上进行不断尝试进行总结。

1 set tabstop=a
这句话是设置t的长度显示为a个空格长度。

1 set softtabstop=b
这句话是设置在插入(insert)模式下,按下一个tab键后所产生的空白长度为b

1 set expandtab
这句话的作用是将tab所占的空白位用空格填充

小结:

如果设置了expandtab

  当按下tab键时,在源文件中会插入b个空格。

如果没有设置expandtab

  1、假设当a=3,b=8时(a<b),按下tab键要插入b=8个空白位,而一个t所占的空白位为a=3,所以就在源文件中插入两个t和两个空格。

  2、假设当a=8,b=3时(b>a),按下tab键要插入b=3个空白位,由于一个t占8个空白位,所以不能插入t,只能插入3个空格,但是连按3下tab键,应该插入9个空白位,这时不会插入9个空格,而是插入一个t和一个空格。

1 set shiftwidth=c
这句话是用来设置在编辑模式(vim进入后的默认模式)下使用(>>或<<)缩进代码时所占的空白位的长度。